test-unit 3.4.9 → 3.5.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: 381321596727dd997b6137fd59dc637ebb74ff6cb0a3f29465116d01c4ceebce
4
- data.tar.gz: b18049275749a55cf6e89eeb74d95b21c5904bd46b9845c64b5564dc6e756946
3
+ metadata.gz: 5d7f5b0dc45031fefcdfb3041dfdc747c92eeaecd992cca117e151e4cac580d2
4
+ data.tar.gz: b3473fdb9cea9212e89b5c35cfe6ecee43f2c4efd1c69b5ed7bc9c1d97278b23
5
5
  SHA512:
6
- metadata.gz: f384ac4b1a874f19602fd20bd3d1cda9ad0bff3012c9fafaefb35828b038ca9431b739e123d185927334dcbe63a79e377e2f91f9f9b542288a3e619a87e44baf
7
- data.tar.gz: fe8e03f084c69bab668039fc94cdf84f54a6824f724e8528b28dbd21b9b4d1f62e64bf5cb60d64312fc5aded9cc5df20058d64db51b25d5d9fce10cdd89dd902
6
+ metadata.gz: 6ff80ac0c8e57c424769c1bc393bee079525b6e589e9b81e9aca09915336d63d285e0a26278b6f904c68d87f59c0e6f23231226132440a45dc4b4d05e341401a
7
+ data.tar.gz: d801dfe17d358768d30711e53c8d27530f9aa46623d44829d839e8c3129351bd3d6ac5fd594fb9a726d21f7657773fd6dcd94c77cf964392a23fda1056245dc3
data/doc/text/news.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # News
2
2
 
3
+ ## 3.5.0 - 2021-10-18 {#version-3-5-0}
4
+
5
+ ### Fixes
6
+
7
+ * Fixed a bug that `keep: true` is ignored when the last `data`
8
+ doesn't have `keep: true`.
9
+
3
10
  ## 3.4.9 - 2021-10-18 {#version-3-4-9}
4
11
 
5
12
  ### Improvements
@@ -22,17 +22,16 @@ module Test
22
22
  add(data_set)
23
23
  end
24
24
 
25
+ def have_keep?
26
+ each_data_set do |_, options|
27
+ return true if options[:keep]
28
+ end
29
+ false
30
+ end
31
+
25
32
  def keep
26
33
  new_data_sets = self.class.new
27
- all_data_sets = Enumerator.new do |yielder|
28
- block = lambda do |(data_set, options)|
29
- yielder << [data_set, options]
30
- end
31
- @procs.each(&block)
32
- @variables.each(&block)
33
- @value_sets.each(&block)
34
- end
35
- all_data_sets.each do |data_set, options|
34
+ each_data_set do |data_set, options|
36
35
  next if options.nil?
37
36
  next unless options[:keep]
38
37
  new_data_sets.add(data_set, options)
@@ -79,6 +78,12 @@ module Test
79
78
  end
80
79
 
81
80
  private
81
+ def each_data_set(&block)
82
+ @procs.each(&block)
83
+ @variables.each(&block)
84
+ @value_sets.each(&block)
85
+ end
86
+
82
87
  def each_pattern(variables)
83
88
  grouped_variables = variables.group_by do |_, options|
84
89
  options[:group]
@@ -170,11 +170,11 @@ module Test
170
170
  options ||= {}
171
171
  data_sets = current_attribute(:data)[:value] || DataSets.new
172
172
  data_sets.add(data_set, options)
173
- if options[:keep]
173
+ if options[:keep] or data_sets.have_keep?
174
174
  keep_hook = lambda do |attr|
175
175
  attr.merge(value: attr[:value].keep)
176
176
  end
177
- options = options.merge(keep_hook: keep_hook)
177
+ options = options.merge(keep: true, keep_hook: keep_hook)
178
178
  end
179
179
  attribute(:data, data_sets, options)
180
180
  end
@@ -1,5 +1,5 @@
1
1
  module Test
2
2
  module Unit
3
- VERSION = "3.4.9"
3
+ VERSION = "3.5.0"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: test-unit
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.4.9
4
+ version: 3.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kouhei Sutou