retest 0.8.0.pre3 → 0.8.0

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
2
  SHA256:
3
- metadata.gz: 50a892b65dde0cfc8ad3698aad34b081aeef54295fa79ebd0aca8b82f6e7e4bf
4
- data.tar.gz: 3d0a3ed7eb43af87b518c78f8423ab3309a33a6a7ee5e396d2ea40b3cf2f605b
3
+ metadata.gz: 91733d40e95f4722f63219c301063e4bb74fe6f543f9cdb709795bdb432ec7a0
4
+ data.tar.gz: 7796cbfb877e2065a7ede16e80bbd41f8f0f106f105cbde1c28d734239da084e
5
5
  SHA512:
6
- metadata.gz: 8d77c62bb7d347e04faedba9823686fb6b41e9428c3ecb052ae2d0eb1759399c77b3e54106041e512650cc4ffb53f6217d183d83da282992eddc293e70e9c205
7
- data.tar.gz: 9c8c8579ffc45202b031942dbbaca51e3d95e7614b2958969c94d8f32192eeb8a2d9c2a7e00ddcba10f207ffe640d30b32b54674d58d23b4dbbad5e44b83451a
6
+ metadata.gz: fbc2dc22da11f0aeaaf0e8616caa1ca68f05074298506144ef510acb53ea7a8dba96252e40f7755c826a1d2f4f30648e7a0bf6016829d62681afbea50e08f494
7
+ data.tar.gz: 14400ccfe165b8c7d2ce20824bd1b7e742eaa6a42c1c5d3d5e42b80f280a51c7ddb26ec8b6ddf20ab50a7d124c16521a045d2eb688e362822de28854619e9749
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- retest (0.8.0.pre3)
4
+ retest (0.8.0)
5
5
  listen (~> 3.2)
6
6
  string-similarity (~> 2.1)
7
7
  tty-option (~> 0.1)
data/lib/retest.rb CHANGED
@@ -26,8 +26,9 @@ module Retest
26
26
  def build(runner:, repository:)
27
27
  Listen.to('.', only: /\.rb$/, relative: true) do |modified, added, removed|
28
28
  begin
29
- repository.remove(removed)
30
29
  repository.add(added)
30
+ repository.remove(removed)
31
+ runner.remove(removed)
31
32
  system('clear 2>/dev/null') || system('cls 2>/dev/null')
32
33
 
33
34
  runner.run repository.find_test (modified + added).first
@@ -10,6 +10,9 @@ module Retest
10
10
  end
11
11
 
12
12
  def find_test(path)
13
+ return unless path
14
+ return if path.empty?
15
+
13
16
  cache[path] ||= select_from TestOptions.for(path, files: files)
14
17
  end
15
18
 
data/lib/retest/runner.rb CHANGED
@@ -20,10 +20,20 @@ module Retest
20
20
  command == obj.command
21
21
  end
22
22
 
23
+ def cached_test_file
24
+ @cached_test_file
25
+ end
26
+
27
+ def cached_test_file=(value)
28
+ @cached_test_file = value || @cached_test_file
29
+ end
30
+
23
31
  def run(test_file = nil)
24
- if @cached_test_file = test_file || @cached_test_file
25
- puts "Test File Selected: #{@cached_test_file}"
26
- system command.gsub('<test>', @cached_test_file)
32
+ self.cached_test_file = test_file
33
+
34
+ if cached_test_file
35
+ puts "Test File Selected: #{cached_test_file}"
36
+ system command.gsub('<test>', cached_test_file)
27
37
  else
28
38
  puts <<~ERROR
29
39
  404 - Test File Not Found
@@ -31,12 +41,30 @@ module Retest
31
41
  ERROR
32
42
  end
33
43
  end
44
+
45
+ def remove(purged)
46
+ return if purged.empty?
47
+
48
+ if purged.is_a? Array
49
+ purge_cache if purged.include? cached_test_file
50
+ elsif purged.is_a? String
51
+ purge_cache if purged == cached_test_file
52
+ end
53
+ end
54
+
55
+ private
56
+
57
+ def purge_cache
58
+ @cached_test_file = nil
59
+ end
34
60
  end
35
61
 
36
62
  HardcodedRunner = Struct.new(:command) do
37
63
  def run(_ = nil)
38
64
  system command
39
65
  end
66
+
67
+ def remove(_ = nil); end
40
68
  end
41
69
  end
42
70
  end
@@ -1,3 +1,3 @@
1
1
  module Retest
2
- VERSION = "0.8.0.pre3"
2
+ VERSION = "0.8.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: retest
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0.pre3
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexandre Barret
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-02-25 00:00:00.000000000 Z
11
+ date: 2021-02-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: string-similarity
@@ -97,9 +97,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
97
97
  version: 2.3.0
98
98
  required_rubygems_version: !ruby/object:Gem::Requirement
99
99
  requirements:
100
- - - ">"
100
+ - - ">="
101
101
  - !ruby/object:Gem::Version
102
- version: 1.3.1
102
+ version: '0'
103
103
  requirements: []
104
104
  rubygems_version: 3.0.3
105
105
  signing_key: