origen_testers 0.11.1 → 0.12.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
  SHA1:
3
- metadata.gz: a82bf50b5eb01f12a4f731840c1516990d6b58f1
4
- data.tar.gz: d1fa8916ebc0381611be2a5aa94bda1e58cf9c2b
3
+ metadata.gz: ed6eed4f43211577112670d75be50cd8c5af22d1
4
+ data.tar.gz: 44239f70ea1b03d86784cfbaf0dffd91694b0535
5
5
  SHA512:
6
- metadata.gz: 7be4cbb82d2c2e1479cb954f494f7ce0a6365c5b442aef63180a3faf8df69c2af9d70bb7d894264c02694ebc90b4021985a2ddc90e771dd932ce54e002974cc0
7
- data.tar.gz: 2b2bdfe54e832a20962858bbb46576d9233f380600078e2a886e2aad29f8cacf2e00163a4d4aa838c2b5f4bbadc2de6542b715a796ef0d898d1f94010acff7bd
6
+ metadata.gz: b1dbc83b631cc269e949a36a9473cfc0935601478adacf5216293db841fc7fce6fdafe88125db77c3ba0d897237858e3aee651d9167b987f0f35f35d0c8535b3
7
+ data.tar.gz: 2c2f1b09187a88366d9169d531a41465a997e09c321858babf28c5f2f20dc4eead6665fb946f6de91d630ad79693b753a189c01b89fc115b4dc57490c3ca54b8
data/config/version.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  module OrigenTesters
2
2
  MAJOR = 0
3
- MINOR = 11
4
- BUGFIX = 1
3
+ MINOR = 12
4
+ BUGFIX = 0
5
5
  DEV = nil
6
6
 
7
7
  VERSION = [MAJOR, MINOR, BUGFIX].join(".") + (DEV ? ".pre#{DEV}" : '')
@@ -176,7 +176,7 @@ module OrigenTesters
176
176
  end
177
177
 
178
178
  def on_set_run_flag(node)
179
- flag = node.to_a[0]
179
+ flag = remove_symbols_from_flag(node.to_a[0])
180
180
  set_run_flags[flag] = context.dup
181
181
  if current_group
182
182
  if branch == :on_fail
@@ -323,6 +323,7 @@ module OrigenTesters
323
323
  flag, value = *node.to_a.take(2)
324
324
  orig = flow_flag
325
325
  if flag.is_a?(Array)
326
+ flag.map! { |a_flag| remove_symbols_from_flag(a_flag) }
326
327
  if flag.size > 1
327
328
  or_flag = flag.join('_OR_')
328
329
  flag.each do |f|
@@ -332,6 +333,8 @@ module OrigenTesters
332
333
  else
333
334
  flag = flag.first
334
335
  end
336
+ else
337
+ flag = remove_symbols_from_flag(flag)
335
338
  end
336
339
  if value
337
340
  # IG-XL docs say that enable words are not optimized for test time, so branch around
@@ -409,7 +412,7 @@ module OrigenTesters
409
412
  line = platform::FlowLine.new(type, attrs)
410
413
  if run_flag
411
414
  line.device_sense = 'not' unless run_flag[1]
412
- line.device_name = run_flag[0]
415
+ line.device_name = remove_symbols_from_flag(run_flag[0])
413
416
  line.device_condition = 'flag-true'
414
417
  end
415
418
  open_lines << line
@@ -442,6 +445,15 @@ module OrigenTesters
442
445
  "NOT_#{flag}"
443
446
  end
444
447
  end
448
+
449
+ private
450
+
451
+ def remove_symbols_from_flag(flag)
452
+ if flag[0] == '$'
453
+ flag[0] = ''
454
+ end
455
+ flag
456
+ end
445
457
  end
446
458
  end
447
459
  end
@@ -57,10 +57,9 @@ module OrigenTesters
57
57
  else
58
58
  i = ''
59
59
  end
60
-
61
60
  h << i + ' {'
62
61
  set_runtime_variables.each do |var|
63
- h << i + " @#{var.to_s.upcase} = -1;"
62
+ h << i + " @#{generate_flag_name(var.to_s)} = -1;"
64
63
  end
65
64
  h << i + ' }, open,"Init Flow Control Vars", ""'
66
65
  h
@@ -162,9 +161,9 @@ module OrigenTesters
162
161
  def on_condition_flag(node)
163
162
  flag, state, *nodes = *node
164
163
  if flag.is_a?(Array)
165
- condition = flag.map { |f| "@#{f.upcase} == 1" }.join(' or ')
164
+ condition = flag.map { |f| "@#{generate_flag_name(f)} == 1" }.join(' or ')
166
165
  else
167
- condition = "@#{flag.upcase} == 1"
166
+ condition = "@#{generate_flag_name(flag)} == 1"
168
167
  end
169
168
  line "if #{condition} then"
170
169
  line '{'
@@ -183,7 +182,7 @@ module OrigenTesters
183
182
  def on_flow_flag(node)
184
183
  flag, state, *nodes = *node
185
184
  [flag].flatten.each do |f|
186
- flow_control_variables << f.upcase
185
+ flow_control_variables << f
187
186
  end
188
187
  on_condition_flag(node)
189
188
  end
@@ -191,7 +190,7 @@ module OrigenTesters
191
190
  def on_run_flag(node)
192
191
  flag, state, *nodes = *node
193
192
  [flag].flatten.each do |f|
194
- runtime_control_variables << f.upcase
193
+ runtime_control_variables << f
195
194
  end
196
195
  on_condition_flag(node)
197
196
  end
@@ -209,9 +208,9 @@ module OrigenTesters
209
208
  end
210
209
 
211
210
  def on_set_run_flag(node)
212
- flag = node.value.upcase
211
+ flag = node.value
213
212
  runtime_control_variables << flag
214
- line "@#{flag} = 1;"
213
+ line "@#{generate_flag_name(flag)} = 1;"
215
214
  end
216
215
 
217
216
  def on_group(node)
@@ -273,6 +272,17 @@ module OrigenTesters
273
272
  yield
274
273
  @continue = orig
275
274
  end
275
+
276
+ private
277
+
278
+ def generate_flag_name(flag)
279
+ case flag[0]
280
+ when '$'
281
+ flag[1..-1]
282
+ else
283
+ flag.upcase
284
+ end
285
+ end
276
286
  end
277
287
  end
278
288
  end
@@ -12,7 +12,7 @@ module OrigenTesters
12
12
  end
13
13
 
14
14
  def on_set_run_flag(node)
15
- flag = node.value.upcase
15
+ flag = node.value
16
16
  @results << flag
17
17
  end
18
18
  end
@@ -295,6 +295,20 @@ Flow.create interface: 'OrigenTesters::Test::Interface' do
295
295
  test :test3
296
296
  end
297
297
 
298
+ log "Mixed-case manual flags"
299
+ test :test1, on_fail: { set_flag: :$My_Mixed_Flag }, continue: true
300
+ test :test2, if_flag: "$My_Mixed_Flag"
301
+ unless_flag "$My_Mixed_Flag" do
302
+ test :test3
303
+ end
304
+
305
+ log "Mixed-case enables"
306
+ test :extra_test, if_enable: :$MCEn_extras
307
+ unless_enable "$MCEn_test" do
308
+ test :test1
309
+ test :test2
310
+ end
311
+
298
312
  if tester.v93k?
299
313
  log "This should retain the set-run-flag in the else conditional"
300
314
  func :test22, id: :at22
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: origen_testers
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.1
4
+ version: 0.12.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stephen McGinty
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-09-15 00:00:00.000000000 Z
11
+ date: 2017-09-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: origen
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0.6'
47
+ version: '0.7'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0.6'
54
+ version: '0.7'
55
55
  description:
56
56
  email:
57
57
  - stephen.f.mcginty@gmail.com
@@ -348,7 +348,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
348
348
  version: 1.8.11
349
349
  requirements: []
350
350
  rubyforge_project:
351
- rubygems_version: 2.6.11
351
+ rubygems_version: 2.5.2
352
352
  signing_key:
353
353
  specification_version: 4
354
354
  summary: This plugin provides Origen tester models to drive ATE type testers like