retest 0.8.0.pre3 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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: