test_bench-fixture 1.2.0.0 → 1.2.2.1

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: 25ed7c441f8a38313a029f48a268840e7ae74715ed1f1ef0a1ea6fbd0ba240f4
4
- data.tar.gz: ea2a1c7371ab289c3c9ed010e5b8d0c3306d925dec0915754111440b6fef93a1
3
+ metadata.gz: 4555b782d4916254da1a5cad74ae69b8bc10072f45fa89f0527ddba0a581cb2d
4
+ data.tar.gz: 608f1985785f4664727093f86958ba3dff3ed0ead19234a473339f7dced32b78
5
5
  SHA512:
6
- metadata.gz: fcefd55166731aca176114c3261ba2fac9f7100d8899cb9b46e444c42a671bb1900744209dc2e44ce776d4da922a6d6ed9a6bfb28beb4d2574ae4a437185ebcd
7
- data.tar.gz: cf4b521d231e475e57348ee4b9c832c2b0c35cd0e73212e676345d1de041911c4b45298bb64f624ee05d682a27fc7444e2c90cb7ff905e7cc93e36bd690adb25
6
+ metadata.gz: 46b499e82c1fe3a8a4c5648c013a71d96fe4273734771f5d29ec092969faf051a618c221389f61ceed0500274d4490113d96351106c09ec5916378a07cb9cba7
7
+ data.tar.gz: 26db4c70d4fa210b84ee592e1b8849a9b2622f7a56096844dfd5c85e77c035607cd481bdce1ac0072aaa59652bd4312d7ef3cff83e52ac97db35f20f13e943f0
@@ -5,7 +5,12 @@ module TestBench
5
5
  def self.example(message=nil, backtrace: nil, backtrace_depth: nil, cause: nil, cls: nil)
6
6
  message ||= self.message
7
7
  cls ||= Example
8
- backtrace ||= Backtrace.example(depth: backtrace_depth)
8
+
9
+ if backtrace == :none
10
+ backtrace = []
11
+ else
12
+ backtrace ||= Backtrace.example(depth: backtrace_depth)
13
+ end
9
14
 
10
15
  if cause == true
11
16
  cause = Cause.example
@@ -99,13 +99,31 @@ module TestBench
99
99
  def new_record(signal, data)
100
100
  context = current_context.dup
101
101
 
102
- record = Record.new(signal, data, context)
102
+ record = Record.build(signal, data, context)
103
103
  end
104
104
 
105
- Record = Struct.new(:signal, :data, :context) do
105
+ class Record
106
+ attr_accessor :signal
107
+ attr_accessor :data
108
+ attr_accessor :context
109
+
110
+ def self.build(signal, data, context=nil)
111
+ instance = new
112
+ instance.signal = signal
113
+ instance.data = data
114
+ instance.context = context
115
+ instance
116
+ end
117
+
106
118
  def forward(receiver)
107
119
  receiver.public_send(signal, *data)
108
120
  end
121
+
122
+ def ==(record)
123
+ self.signal == record.signal &&
124
+ self.data == record.data &&
125
+ self.context == record.context
126
+ end
109
127
  end
110
128
  end
111
129
  end
@@ -13,6 +13,12 @@ module TestBench
13
13
  end
14
14
  attr_writer :error_counter
15
15
 
16
+ def skip
17
+ @skip ||= false
18
+ end
19
+ attr_writer :skip
20
+ alias_method :skip?, :skip
21
+
16
22
  def started
17
23
  instance_variable_defined?(:@started) ?
18
24
  @started :
@@ -227,6 +233,10 @@ module TestBench
227
233
  def failed?
228
234
  error_counter.nonzero? ? true : false
229
235
  end
236
+
237
+ def skip!
238
+ self.skip = true
239
+ end
230
240
  end
231
241
  end
232
242
  end
@@ -10,6 +10,8 @@ module TestBench
10
10
  def scope(*contexts)
11
11
  scoped_output = output.scope(*contexts)
12
12
 
13
+ return nil if scoped_output.records.empty?
14
+
13
15
  scoped_session = self.class.new
14
16
  scoped_session.output = scoped_output
15
17
  scoped_session
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: test_bench-fixture
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0.0
4
+ version: 1.2.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nathan Ladd
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-07-23 00:00:00.000000000 Z
11
+ date: 2020-08-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: test_bench-bootstrap
@@ -71,7 +71,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
71
71
  - !ruby/object:Gem::Version
72
72
  version: '0'
73
73
  requirements: []
74
- rubygems_version: 3.1.3
74
+ rubygems_version: 3.1.4
75
75
  signing_key:
76
76
  specification_version: 4
77
77
  summary: Test object framework