origen_testers 0.42.0 → 0.43.0
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 +4 -4
- data/config/commands.rb +9 -1
- data/config/version.rb +1 -1
- data/lib/origen_testers/generator.rb +16 -1
- data/program/prb1.rb +2 -0
- data/templates/origen_guides/program/flows.md.erb +28 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bcd28a31ae733240fb79442791a52b0289cb60767ab4ca3420958a5c5451cb29
|
4
|
+
data.tar.gz: 208ed25a437e3df788b0305f88fbcd967ffa563fd68a7508d5b055f7c3380395
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c36b5d4a30d947489f3ed2d165c867249df0235b3d5d797bd3eaf5b2f232cbf0c6d4d33b1425ab6fd061d65eac4fd8803355af6e0b317a96b5f98335438845f2
|
7
|
+
data.tar.gz: 4af3ae57d4c893138271ac876bc7968def1bc4df416764481a264594af38213264f8f818fbdf40204f3b4b54441158ce05d1233245b1872124b2801495af0587
|
data/config/commands.rb
CHANGED
@@ -200,7 +200,15 @@ when "examples", "test"
|
|
200
200
|
puts
|
201
201
|
puts "To approve any diffs in the reference.list files run the following command:"
|
202
202
|
puts
|
203
|
-
|
203
|
+
platforms = %w(j750 j750_hpt ultraflex v93k v93k_multiport v93k_enable_flow v93k_disable_flow v93k_limits_file v93k_global v93k_smt8) # put here the various platforms used in examples/program_generator.rb
|
204
|
+
reflist_command = ''
|
205
|
+
platforms.each do |platform|
|
206
|
+
unless reflist_command == ''
|
207
|
+
reflist_command = "#{reflist_command} && "
|
208
|
+
end
|
209
|
+
reflist_command = "#{reflist_command}cp list/#{platform}/referenced.list approved/#{platform}/referenced.list"
|
210
|
+
end
|
211
|
+
puts "#{reflist_command}"
|
204
212
|
puts
|
205
213
|
Origen.app.stats.report_fail
|
206
214
|
status = 1
|
data/config/version.rb
CHANGED
@@ -253,9 +253,24 @@ module OrigenTesters
|
|
253
253
|
end
|
254
254
|
end
|
255
255
|
|
256
|
+
# Import sub-program
|
256
257
|
def import(file, options = {})
|
257
258
|
file = Pathname.new(file).absolute? ? file : "#{current_dir}/#{file}"
|
258
|
-
file = Origen.file_handler.
|
259
|
+
file = Origen.file_handler.add_rb_to(file) # add .rb to filename if missing
|
260
|
+
orig_file = "#{file}" # capture original filename possibly without pre-pended underscore
|
261
|
+
file_w_underscore = Origen.file_handler.add_underscore_to(file) # determine filename definitely with pre-pended underscore
|
262
|
+
|
263
|
+
# first check filename definitely with underscore
|
264
|
+
file = Origen.file_handler.clean_path_to(file_w_underscore, allow_missing: true) # allow for file missing
|
265
|
+
if file.nil? # check if file missing
|
266
|
+
# if so, check original filename that possibly is without underscore
|
267
|
+
file = Origen.file_handler.clean_path_to(orig_file, allow_missing: true) # allow for file missing
|
268
|
+
if file.nil?
|
269
|
+
# give error if could not find either file
|
270
|
+
fail "Could not find file to import: #{orig_file}" if file.nil? # give error if neither option above is found
|
271
|
+
end
|
272
|
+
end
|
273
|
+
|
259
274
|
base_collection = collection
|
260
275
|
@collection = []
|
261
276
|
Origen.generator.option_pipeline << options
|
data/program/prb1.rb
CHANGED
@@ -10,6 +10,8 @@ Flow.create interface: 'OrigenTesters::Test::Interface', flow_description: 'Prob
|
|
10
10
|
|
11
11
|
import 'components/prb1_main'
|
12
12
|
|
13
|
+
import 'test' # import top-level test.rb directly, note that Flow.create options of sub-flow will be ignored!
|
14
|
+
|
13
15
|
# Test that a reference to a deeply nested test works (mainly for SMT8)
|
14
16
|
test :on_deep_1, if_failed: :deep_test
|
15
17
|
|
@@ -265,8 +265,8 @@ In our case let's say that we have a new DUT on the horizon which has two vreg i
|
|
265
265
|
let's extract this suite of vreg tests to a module so that we can instantiate two of them in
|
266
266
|
our flow.
|
267
267
|
|
268
|
-
|
269
|
-
|
268
|
+
By convention, sub flow file names that are meant only to be used from inside another top-level flow should begin with a "_".
|
269
|
+
(We'll discuss importing top-level flows below).
|
270
270
|
The sub-flow syntax is virtually identical to the regular flow syntax except that a hash of
|
271
271
|
options are passed in which will contain any arguments passed in by the caller when they
|
272
272
|
instantiate the sub-flow.
|
@@ -374,6 +374,32 @@ Flow.create(environment: :probe) do
|
|
374
374
|
end
|
375
375
|
~~~
|
376
376
|
|
377
|
+
#### Importing Top-Level Flows
|
378
|
+
|
379
|
+
Occasionally you may have the need to import a top-level flow for debug or simulation purposes.
|
380
|
+
This is generally not recommended since any `Flow.create` options in the top-level flow being imported
|
381
|
+
will be lost, but if you are careful that the `Flow.create` options are aligned between the real top-level flow
|
382
|
+
and any imported top-level flows, then you should be fine.
|
383
|
+
|
384
|
+
The same import command is used as before, as it will also look also for a file name not starting with \"\_\"
|
385
|
+
if one with \"\_\" is not found.
|
386
|
+
|
387
|
+
So for example we have 3 top-level flows that we know work ok stand-alone, but we want to check that they work ok when
|
388
|
+
running back to back:
|
389
|
+
|
390
|
+
~~~ruby
|
391
|
+
# program/probe.rb
|
392
|
+
Flow.create(environment: :probe) do # options here match those in the probe_* flows imported below
|
393
|
+
|
394
|
+
import "probe_start" # will import file called 'probe_start.rb'
|
395
|
+
|
396
|
+
import "probe_middle" # will import file called 'probe_middle.rb'
|
397
|
+
|
398
|
+
import "probe_end" # will import file called 'probe_end.rb'
|
399
|
+
|
400
|
+
end
|
401
|
+
~~~
|
402
|
+
|
377
403
|
#### Documenting Tests
|
378
404
|
|
379
405
|
All of the test attributes will be available later when it comes to generating documentation
|
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.
|
4
|
+
version: 0.43.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: 2019-
|
11
|
+
date: 2019-11-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: origen
|