test_bench-fixture 1.2.0.1 → 1.2.2.2

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: cc7f1499ed0c570fe37e016a85c568e0aafb2927e2bae3f4d9a69941200c7462
4
- data.tar.gz: e0383187e888b17ff12b6e9ee9a5dd348464be7c0360e36fde48930f83fc5a89
3
+ metadata.gz: 13a777ff52df4352c49326e6b394828cd64eed0abfdf54a0a677bff3f3958737
4
+ data.tar.gz: ccaa7603572eec663dcf2638b5345af7c245ed0aaf137cac124a24e800775910
5
5
  SHA512:
6
- metadata.gz: 8afce41f802f82ce18ec0246732ef9474aeff5f100ac4e603fd541e6ba5570aa5256ad691a1b8d12db0d2e837ccea0560be0c2de890d7e14603374340f19d1ce
7
- data.tar.gz: 4d382f91315c9d057689990efb573f7f4d4504ce45f49b3927c5fab74940455b20717388b2b89d630d64b9974c17d60db8063cc2fe2dc84c644eaaa80f8563c4
6
+ metadata.gz: 4694182ab91a9e75de0f6c69c59bd027842989f075bb0787b15be6e2b4a092d4405943e3c91e1b7f242d1575132f9e3a268544809c201f16f817230d266aacee
7
+ data.tar.gz: edc04eee7d348c8e2ea6216200e17eea95c6beee183ce45346542452bbce7f8da6a8dd06d87a4f3213825f7c44694fd43b5469ccdb698c141fd94ae1e11e9612
@@ -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
@@ -214,12 +214,12 @@ module TestBench
214
214
  rescue => error
215
215
  error(error)
216
216
 
217
- ensure
218
- current_exception = $!
217
+ error = nil
219
218
 
219
+ ensure
220
220
  result = error_counter == previous_error_counter
221
221
 
222
- block.(result, current_exception) unless block.nil?
222
+ block.(result, error) unless block.nil?
223
223
  end
224
224
 
225
225
  result
@@ -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.1
4
+ version: 1.2.2.2
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-24 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