origen_testers 0.52.11 → 0.52.12

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: ac538468dbd558835e04eb64cd211e17b8d2a57a7d009561d25abefb5e4156f6
4
- data.tar.gz: 690aec14f78973db77a71f426f049705e8e3fc3cb5b5d2927717c070fe76d9fe
3
+ metadata.gz: 4607f1c380b66ebfbec0846cd3e5bcfcbfbb65d1ed94ba1239b088f1625372bf
4
+ data.tar.gz: 1f86cd54c83de4482f40f81b33775b8c216ffced71f77871fd009a94138299ae
5
5
  SHA512:
6
- metadata.gz: 58b87ba3e59c658a7ae97c9de2bba613b163a89408ea1def9e8b23284862486ef9361aaaf6643378a66645731ad636d28d16558a5ba288a0a297abe5b5d4e7c3
7
- data.tar.gz: 9b3740a9e086c1f2eb48c44f4449c94879381218eb084179d5bb16b9bd9f3fe0623eafed8b8f8b321b073c73bdc8f9c6e045e4b19a2a6bdf16dc203b0438d85c
6
+ metadata.gz: 84308cebe5faddd92e75c410bba7954e90d0ac74ece08af1f4dcc9cf3204f6241286a57209139ae6fedeeecc0373edac6b6a140710c56ba62d274e551e67c070
7
+ data.tar.gz: a4c37216bf06b8206da9e819ff3d5239d57c28784e78942df087d3e0a5d657305b73e181d4b15def1ea174584e63ff19a262446c07a8500d2ebbddb89c2c3f0a
data/config/version.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  module OrigenTesters
2
2
  MAJOR = 0
3
3
  MINOR = 52
4
- BUGFIX = 11
4
+ BUGFIX = 12
5
5
  DEV = nil
6
6
  VERSION = [MAJOR, MINOR, BUGFIX].join(".") + (DEV ? ".pre#{DEV}" : '')
7
7
  end
@@ -259,6 +259,7 @@ module OrigenTesters::ATP
259
259
  nodes = [name]
260
260
  nodes << id(options[:id]) if options[:id]
261
261
  nodes << n1(:path, path.to_s)
262
+ nodes << n1(:bypass, true) if options[:bypass] == true
262
263
  nodes += children
263
264
  ast = ast.updated :sub_flow, nodes,
264
265
  file: options.delete(:source_file) || source_file,
@@ -56,6 +56,18 @@ module OrigenTesters
56
56
  end
57
57
  alias_method :on_unless_job, :on_if_job
58
58
 
59
+ def on_whenever(node)
60
+ flow_var, *nodes = *node
61
+ [flow_var].flatten.each do |f|
62
+ if [String, Symbol].include?(f.value.class)
63
+ add generate_flag_name(f.value.to_s), :referenced_flags
64
+ end
65
+ end
66
+ process_all(nodes)
67
+ end
68
+ alias_method :on_whenever_all, :on_whenever
69
+ alias_method :on_whenever_any, :on_whenever
70
+
59
71
  def on_if_flag(node)
60
72
  flag, *nodes = *node
61
73
  [flag].flatten.each do |f|
@@ -109,6 +121,17 @@ module OrigenTesters
109
121
  add flag, :set_enables
110
122
  end
111
123
 
124
+ def on_loop(node)
125
+ start, stop, step, loop_var, test_inc, *nodes = *node
126
+ [start, stop, step, loop_var].each do |type|
127
+ if [String, Symbol].include?(type.class) && tester.smt8?
128
+ add generate_flag_name(type), :referenced_flags
129
+ end
130
+ end
131
+
132
+ process_all(nodes)
133
+ end
134
+
112
135
  private
113
136
 
114
137
  def in_sub_flow?
@@ -95,9 +95,18 @@ module OrigenTesters
95
95
  sub_flow = sub_flow_from(node)
96
96
  @sub_flows ||= {}
97
97
  path = Pathname.new(node.find(:path).value)
98
+ bypass = false
99
+ if node.find(:bypass)
100
+ if node.find(:bypass).value.to_s.match(/true/)
101
+ bypass = true
102
+ end
103
+ end
98
104
  name = path.basename('.*').to_s
99
105
  path = Origen.interface.sub_flow_path_overwrite(path) if Origen.interface.respond_to? :sub_flow_path_overwrite
100
- @sub_flows[name] = "#{path.dirname}.#{name}".gsub(/(\/|\\)/, '.')
106
+ @sub_flows[name] = {
107
+ bypass: bypass,
108
+ path: "#{path.dirname}.#{name}".gsub(/(\/|\\)/, '.')
109
+ }
101
110
  # Pass down all input variables before executing
102
111
  if sub_flow.input_variables.size > 0 && tester.flow_variable_grouping
103
112
  line "// #{name} sub-flow input variables"
@@ -31,8 +31,12 @@ flow <%= flow_name %> {
31
31
  % auxiliary_flows.each do |name, path|
32
32
  flow <%= name %> calls <%= path %> {}
33
33
  % end
34
- % sub_flows.each do |name, path|
35
- flow <%= name %> calls <%= path %> { }
34
+ % sub_flows.each do |name, settings|
35
+ flow <%= name %> calls <%= settings[:path] %> {<%=" }" unless settings[:bypass]%>
36
+ % if settings[:bypass]
37
+ bypass = true;
38
+ }
39
+ % end
36
40
  % end
37
41
  }
38
42
 
@@ -165,6 +165,19 @@ module OrigenTesters
165
165
  l
166
166
  end
167
167
  # rubocop:enable Metrics/ParameterLists: Avoid parameter lists longer than 5 parameters.
168
+
169
+ def wrap_if_string(value)
170
+ if value.is_a?(String)
171
+ if value =~ /setupRef(.*)/
172
+ # Do not wrap setupRef calls in quotes
173
+ return value
174
+ else
175
+ "\"#{value}\""
176
+ end
177
+ else
178
+ value
179
+ end
180
+ end
168
181
  end
169
182
  end
170
183
  end
@@ -60,6 +60,7 @@ module OrigenTesters
60
60
  param_name0: [:string, ''],
61
61
  param_list_strings: [:list_strings, %w(E1 E2)],
62
62
  param_list_classes: [:list_classes, %w(E1 E2)],
63
+ param_func_call: [:string, 'setupRef(FQN)'],
63
64
  'param_group.param0': [:string, ''],
64
65
  param_name1: [{
65
66
  param_name_int: [:integer, 0],
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.52.11
4
+ version: 0.52.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stephen McGinty
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-05-28 00:00:00.000000000 Z
11
+ date: 2025-08-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: origen
@@ -170,7 +170,7 @@ dependencies:
170
170
  - - ">="
171
171
  - !ruby/object:Gem::Version
172
172
  version: '1.24'
173
- description:
173
+ description:
174
174
  email:
175
175
  - stephen.f.mcginty@gmail.com
176
176
  executables: []
@@ -605,7 +605,7 @@ files:
605
605
  homepage: http://origen-sdk.org/testers
606
606
  licenses: []
607
607
  metadata: {}
608
- post_install_message:
608
+ post_install_message:
609
609
  rdoc_options: []
610
610
  require_paths:
611
611
  - lib
@@ -620,8 +620,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
620
620
  - !ruby/object:Gem::Version
621
621
  version: '0'
622
622
  requirements: []
623
- rubygems_version: 3.1.6
624
- signing_key:
623
+ rubygems_version: 3.2.3
624
+ signing_key:
625
625
  specification_version: 4
626
626
  summary: This plugin provides Origen tester models to drive ATE type testers like
627
627
  the J750, UltraFLEX, V93K,...