test_bench-fixture 1.2.0.1 → 1.2.2.2

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: 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