guard-pytest 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 616935d5eff0348061f0114146b66a3aad493fa3
4
- data.tar.gz: 9d247c0520feef5ad39ba6119260becdf2e09c6a
2
+ SHA256:
3
+ metadata.gz: 8c2ebf8826539d9e40b6ea106137cfa368eb2945daaf60c252f8f425859f50a2
4
+ data.tar.gz: 70dfa78064b3066d464e482d04584e6395e384cad73fb7e2b9f2af4b6d65e659
5
5
  SHA512:
6
- metadata.gz: 352304ced234cd03e13bc199d496f514238fd405820082eb3b16fbb0d424824a6ff8b45b8aafece13cb025e7300ddc5bc29dc680533bcf2951f8b41df00d56a1
7
- data.tar.gz: 1a7c6efb3f0d694f6d920c6b790b1f2573a6b862ac6029422065e9677d33e32509a20e34cba9751fb8fe4276f94546c735db0a52fc51103cdd31f811e8d70779
6
+ metadata.gz: 266c006e9d8a7aaa671d0c60e31caa5e0322a6d863370ca16f4605c6be994799c44c0de7fd0c5154b7c2c4b96359e43893a4e3128ad8fc2dcc73629f4e8f48e5
7
+ data.tar.gz: 33d8c4cee090dd76e7ef45bc776de5e473c51314e0080297b8351b7ded3b9849a13dd5c61c02c2819f081ec2a5ff417bf35bf31188587a7a0d4622797cbed136
data/README.md CHANGED
@@ -30,6 +30,15 @@ guard :pytest, pytest_option: "--doctest-modules --color=yes" do
30
30
  end
31
31
  ```
32
32
 
33
+ specify custom pytest command
34
+ ```ruby
35
+ guard :pytest, pytest_cmd: "pipenv run py.test", pytest_option: "--doctest-modules --color=yes" do
36
+ watch(%r{^((?!test/).*)\.py$}) {|m| "test/#{m[1]}_test.py" }
37
+ watch(%r{^test/.*_test\.py$})
38
+ end
39
+ ```
40
+
41
+
33
42
  ## Contributing
34
43
 
35
44
  Bug reports and pull requests are welcome on GitHub at https://github.com/kazufusa/guard-pytest. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](contributor-covenant.org) code of conduct.
@@ -1,6 +1,8 @@
1
1
  require 'guard/compat/plugin'
2
2
  require 'guard/pytest/version'
3
3
 
4
+ require 'shellwords'
5
+
4
6
  module Guard
5
7
  class Pytest < Plugin
6
8
  def initialize(options = {})
@@ -17,14 +19,27 @@ module Guard
17
19
  end
18
20
 
19
21
  def run_all
20
- $stdout.puts `py.test #{options[:pytest_option]}`
22
+ opts = Shellwords.shellsplit(options[:pytest_option])
23
+ run_tests(opts)
21
24
  true
22
25
  end
23
26
 
24
27
  def run_on_modifications(paths)
25
- $stdout.puts `py.test #{options[:pytest_option]} #{paths.join ' '}`
28
+ opts = Shellwords.shellsplit(options[:pytest_option])
29
+ run_tests(opts, paths)
26
30
  true
27
31
  end
28
32
 
33
+ private
34
+
35
+ def pytest_cmd
36
+ pytest_cmd = options[:pytest_cmd] || "py.test"
37
+ pytest_cmd.split(" ")
38
+ end
39
+
40
+ def run_tests(options, files = nil)
41
+ result = system(*pytest_cmd, *options, *files)
42
+ throw(:task_has_failed) unless result
43
+ end
29
44
  end
30
45
  end
@@ -1,5 +1,5 @@
1
1
  module Guard
2
2
  class PytestVersion
3
- VERSION = "0.1.1"
3
+ VERSION = "0.1.2"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: guard-pytest
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - kazufusa
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-06-29 00:00:00.000000000 Z
11
+ date: 2018-07-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: guard
@@ -120,9 +120,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
120
120
  version: '0'
121
121
  requirements: []
122
122
  rubyforge_project:
123
- rubygems_version: 2.4.8
123
+ rubygems_version: 2.7.7
124
124
  signing_key:
125
125
  specification_version: 4
126
126
  summary: Guard gem for Pytest
127
127
  test_files: []
128
- has_rdoc: