origen_testers 0.13.1 → 0.13.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 +4 -4
- data/config/application.rb +151 -151
- data/config/boot.rb +13 -13
- data/config/commands.rb +85 -86
- data/config/users.rb +18 -18
- data/config/version.rb +8 -8
- data/lib/commands/build.rb +69 -69
- data/lib/commands/run.rb +48 -48
- data/lib/origen_testers.rb +47 -47
- data/lib/origen_testers/api.rb +381 -381
- data/lib/origen_testers/basic_test_setups.rb +105 -105
- data/lib/origen_testers/callback_handlers.rb +59 -59
- data/lib/origen_testers/command_based_tester.rb +45 -45
- data/lib/origen_testers/flow.rb +382 -382
- data/lib/origen_testers/generator.rb +283 -283
- data/lib/origen_testers/generator/identity_map.rb +23 -23
- data/lib/origen_testers/generator/placeholder.rb +11 -11
- data/lib/origen_testers/generator/test_numberer.rb +23 -23
- data/lib/origen_testers/igxl_based_tester.rb +12 -12
- data/lib/origen_testers/igxl_based_tester/base.rb +1100 -1099
- data/lib/origen_testers/igxl_based_tester/base/ac_specsets.rb +79 -79
- data/lib/origen_testers/igxl_based_tester/base/custom_test_instance.rb +169 -169
- data/lib/origen_testers/igxl_based_tester/base/dc_specsets.rb +98 -98
- data/lib/origen_testers/igxl_based_tester/base/edge.rb +60 -60
- data/lib/origen_testers/igxl_based_tester/base/edges.rb +24 -24
- data/lib/origen_testers/igxl_based_tester/base/edgeset.rb +39 -39
- data/lib/origen_testers/igxl_based_tester/base/edgesets.rb +130 -130
- data/lib/origen_testers/igxl_based_tester/base/flow.rb +460 -460
- data/lib/origen_testers/igxl_based_tester/base/flow_line.rb +276 -276
- data/lib/origen_testers/igxl_based_tester/base/generator.rb +607 -607
- data/lib/origen_testers/igxl_based_tester/base/global_specs.rb +83 -83
- data/lib/origen_testers/igxl_based_tester/base/job.rb +75 -75
- data/lib/origen_testers/igxl_based_tester/base/jobs.rb +44 -44
- data/lib/origen_testers/igxl_based_tester/base/level_io_se.rb +59 -59
- data/lib/origen_testers/igxl_based_tester/base/level_supply.rb +39 -39
- data/lib/origen_testers/igxl_based_tester/base/levels.rb +31 -31
- data/lib/origen_testers/igxl_based_tester/base/levelset.rb +110 -110
- data/lib/origen_testers/igxl_based_tester/base/patgroup.rb +109 -109
- data/lib/origen_testers/igxl_based_tester/base/patgroups.rb +38 -38
- data/lib/origen_testers/igxl_based_tester/base/patset.rb +68 -68
- data/lib/origen_testers/igxl_based_tester/base/patset_pattern.rb +56 -56
- data/lib/origen_testers/igxl_based_tester/base/patsets.rb +38 -38
- data/lib/origen_testers/igxl_based_tester/base/patsubr.rb +68 -68
- data/lib/origen_testers/igxl_based_tester/base/patsubr_pattern.rb +56 -56
- data/lib/origen_testers/igxl_based_tester/base/patsubrs.rb +38 -38
- data/lib/origen_testers/igxl_based_tester/base/pinmap.rb +93 -93
- data/lib/origen_testers/igxl_based_tester/base/references.rb +25 -25
- data/lib/origen_testers/igxl_based_tester/base/test_instance.rb +322 -322
- data/lib/origen_testers/igxl_based_tester/base/test_instance_group.rb +66 -66
- data/lib/origen_testers/igxl_based_tester/base/test_instances.rb +212 -212
- data/lib/origen_testers/igxl_based_tester/base/test_instances/custom_til.rb +37 -37
- data/lib/origen_testers/igxl_based_tester/base/timeset.rb +37 -37
- data/lib/origen_testers/igxl_based_tester/base/timesets.rb +49 -49
- data/lib/origen_testers/igxl_based_tester/base/timesets_basic.rb +49 -49
- data/lib/origen_testers/igxl_based_tester/files.rb +43 -43
- data/lib/origen_testers/igxl_based_tester/j750.rb +269 -269
- data/lib/origen_testers/igxl_based_tester/j750/custom_test_instance.rb +32 -32
- data/lib/origen_testers/igxl_based_tester/j750/flow.rb +10 -10
- data/lib/origen_testers/igxl_based_tester/j750/flow_line.rb +19 -19
- data/lib/origen_testers/igxl_based_tester/j750/generator.rb +19 -19
- data/lib/origen_testers/igxl_based_tester/j750/patgroup.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/j750/patgroups.rb +10 -10
- data/lib/origen_testers/igxl_based_tester/j750/patset.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/j750/patset_pattern.rb +18 -18
- data/lib/origen_testers/igxl_based_tester/j750/patsets.rb +10 -10
- data/lib/origen_testers/igxl_based_tester/j750/patsubr.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/j750/patsubr_pattern.rb +18 -18
- data/lib/origen_testers/igxl_based_tester/j750/patsubrs.rb +10 -10
- data/lib/origen_testers/igxl_based_tester/j750/test_instance.rb +746 -746
- data/lib/origen_testers/igxl_based_tester/j750/test_instance_group.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/j750/test_instances.rb +10 -10
- data/lib/origen_testers/igxl_based_tester/j750_hpt.rb +34 -34
- data/lib/origen_testers/igxl_based_tester/j750_hpt/custom_test_instance.rb +32 -32
- data/lib/origen_testers/igxl_based_tester/j750_hpt/flow.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/j750_hpt/flow_line.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/j750_hpt/generator.rb +19 -19
- data/lib/origen_testers/igxl_based_tester/j750_hpt/patgroup.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/j750_hpt/patgroups.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/j750_hpt/patset.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/j750_hpt/patset_pattern.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/j750_hpt/patsets.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/j750_hpt/patsubr.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/j750_hpt/patsubr_pattern.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/j750_hpt/patsubrs.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/j750_hpt/test_instance.rb +599 -599
- data/lib/origen_testers/igxl_based_tester/j750_hpt/test_instance_group.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/j750_hpt/test_instances.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/parser.rb +102 -102
- data/lib/origen_testers/igxl_based_tester/parser/ac_spec.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/parser/dc_spec.rb +33 -33
- data/lib/origen_testers/igxl_based_tester/parser/dc_specs.rb +48 -48
- data/lib/origen_testers/igxl_based_tester/parser/descriptions.rb +339 -339
- data/lib/origen_testers/igxl_based_tester/parser/flow.rb +109 -109
- data/lib/origen_testers/igxl_based_tester/parser/flow_line.rb +203 -203
- data/lib/origen_testers/igxl_based_tester/parser/flows.rb +21 -21
- data/lib/origen_testers/igxl_based_tester/parser/pattern_set.rb +92 -92
- data/lib/origen_testers/igxl_based_tester/parser/pattern_sets.rb +31 -31
- data/lib/origen_testers/igxl_based_tester/parser/test_instance.rb +420 -420
- data/lib/origen_testers/igxl_based_tester/parser/test_instances.rb +24 -24
- data/lib/origen_testers/igxl_based_tester/parser/timeset.rb +13 -13
- data/lib/origen_testers/igxl_based_tester/ultraflex.rb +798 -798
- data/lib/origen_testers/igxl_based_tester/ultraflex/ac_specsets.rb +10 -10
- data/lib/origen_testers/igxl_based_tester/ultraflex/ate_hardware.rb +949 -949
- data/lib/origen_testers/igxl_based_tester/ultraflex/custom_test_instance.rb +36 -36
- data/lib/origen_testers/igxl_based_tester/ultraflex/dc_specsets.rb +10 -10
- data/lib/origen_testers/igxl_based_tester/ultraflex/edge.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/ultraflex/edges.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/ultraflex/edgeset.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/ultraflex/edgesets.rb +10 -10
- data/lib/origen_testers/igxl_based_tester/ultraflex/flow.rb +158 -158
- data/lib/origen_testers/igxl_based_tester/ultraflex/flow_line.rb +19 -19
- data/lib/origen_testers/igxl_based_tester/ultraflex/generator.rb +19 -19
- data/lib/origen_testers/igxl_based_tester/ultraflex/global_specs.rb +10 -10
- data/lib/origen_testers/igxl_based_tester/ultraflex/job.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/ultraflex/jobs.rb +10 -10
- data/lib/origen_testers/igxl_based_tester/ultraflex/level_io_se.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/ultraflex/level_supply.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/ultraflex/levels.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/ultraflex/levelset.rb +10 -10
- data/lib/origen_testers/igxl_based_tester/ultraflex/patgroup.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/ultraflex/patgroups.rb +10 -10
- data/lib/origen_testers/igxl_based_tester/ultraflex/patset.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/ultraflex/patset_pattern.rb +18 -18
- data/lib/origen_testers/igxl_based_tester/ultraflex/patsets.rb +10 -10
- data/lib/origen_testers/igxl_based_tester/ultraflex/patsubr.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/ultraflex/patsubr_pattern.rb +18 -18
- data/lib/origen_testers/igxl_based_tester/ultraflex/patsubrs.rb +10 -10
- data/lib/origen_testers/igxl_based_tester/ultraflex/pinmap.rb +10 -10
- data/lib/origen_testers/igxl_based_tester/ultraflex/references.rb +10 -10
- data/lib/origen_testers/igxl_based_tester/ultraflex/templates/ac_specsets.txt.erb +0 -0
- data/lib/origen_testers/igxl_based_tester/ultraflex/templates/dc_specsets.txt.erb +0 -0
- data/lib/origen_testers/igxl_based_tester/ultraflex/templates/edgesets.txt.erb +0 -0
- data/lib/origen_testers/igxl_based_tester/ultraflex/templates/global_specs.txt.erb +0 -0
- data/lib/origen_testers/igxl_based_tester/ultraflex/templates/jobs.txt.erb +0 -0
- data/lib/origen_testers/igxl_based_tester/ultraflex/templates/levelset.txt.erb +0 -0
- data/lib/origen_testers/igxl_based_tester/ultraflex/templates/pinmap.txt.erb +0 -0
- data/lib/origen_testers/igxl_based_tester/ultraflex/templates/references.txt.erb +0 -0
- data/lib/origen_testers/igxl_based_tester/ultraflex/templates/timesets.txt.erb +0 -0
- data/lib/origen_testers/igxl_based_tester/ultraflex/templates/timesets_basic.txt.erb +0 -0
- data/lib/origen_testers/igxl_based_tester/ultraflex/test_instance.rb +315 -315
- data/lib/origen_testers/igxl_based_tester/ultraflex/test_instance_group.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/ultraflex/test_instances.rb +10 -10
- data/lib/origen_testers/igxl_based_tester/ultraflex/timeset.rb +9 -9
- data/lib/origen_testers/igxl_based_tester/ultraflex/timesets.rb +10 -10
- data/lib/origen_testers/igxl_based_tester/ultraflex/timesets_basic.rb +10 -10
- data/lib/origen_testers/interface.rb +345 -324
- data/lib/origen_testers/memory_style.rb +77 -77
- data/lib/origen_testers/no_interface.rb +7 -7
- data/lib/origen_testers/origen_ext/application/runner.rb +25 -25
- data/lib/origen_testers/origen_ext/generator.rb +54 -54
- data/lib/origen_testers/origen_ext/generator/flow.rb +91 -77
- data/lib/origen_testers/origen_ext/generator/resources.rb +21 -21
- data/lib/origen_testers/origen_ext/pins/pin.rb +78 -78
- data/lib/origen_testers/origen_ext/pins/pin_collection.rb +84 -84
- data/lib/origen_testers/parser.rb +22 -22
- data/lib/origen_testers/parser/description_lookup.rb +62 -62
- data/lib/origen_testers/parser/searchable_array.rb +30 -30
- data/lib/origen_testers/parser/searchable_hash.rb +30 -30
- data/lib/origen_testers/pattern_compilers.rb +116 -116
- data/lib/origen_testers/pattern_compilers/assembler.rb +88 -88
- data/lib/origen_testers/pattern_compilers/job.rb +96 -96
- data/lib/origen_testers/pattern_compilers/ultraflex_pattern_compiler.rb +599 -599
- data/lib/origen_testers/program_generators.rb +62 -62
- data/lib/origen_testers/smartest_based_tester.rb +8 -8
- data/lib/origen_testers/smartest_based_tester/base.rb +576 -567
- data/lib/origen_testers/smartest_based_tester/base/flow.rb +296 -291
- data/lib/origen_testers/smartest_based_tester/base/generator.rb +207 -194
- data/lib/origen_testers/smartest_based_tester/base/pattern_compiler.rb +32 -32
- data/lib/origen_testers/smartest_based_tester/base/pattern_master.rb +69 -69
- data/lib/origen_testers/smartest_based_tester/base/processors.rb +16 -16
- data/lib/origen_testers/smartest_based_tester/base/processors/adjacent_if_combiner.rb +106 -106
- data/lib/origen_testers/smartest_based_tester/base/processors/continue_implementer.rb +39 -39
- data/lib/origen_testers/smartest_based_tester/base/processors/empty_branch_cleaner.rb +21 -21
- data/lib/origen_testers/smartest_based_tester/base/processors/extract_run_flag_table.rb +33 -33
- data/lib/origen_testers/smartest_based_tester/base/processors/extract_set_variables.rb +22 -22
- data/lib/origen_testers/smartest_based_tester/base/processors/flag_optimizer.rb +188 -188
- data/lib/origen_testers/smartest_based_tester/base/processors/if_ran_cleaner.rb +34 -34
- data/lib/origen_testers/smartest_based_tester/base/test_method.rb +178 -164
- data/lib/origen_testers/smartest_based_tester/base/test_methods.rb +77 -73
- data/lib/origen_testers/smartest_based_tester/base/test_methods/ac_tml.rb +33 -33
- data/lib/origen_testers/smartest_based_tester/base/test_methods/base_tml.rb +38 -38
- data/lib/origen_testers/smartest_based_tester/base/test_methods/custom_tml.rb +19 -19
- data/lib/origen_testers/smartest_based_tester/base/test_methods/dc_tml.rb +147 -147
- data/lib/origen_testers/smartest_based_tester/base/test_methods/limits.rb +65 -65
- data/lib/origen_testers/smartest_based_tester/base/test_suite.rb +208 -193
- data/lib/origen_testers/smartest_based_tester/base/test_suites.rb +58 -54
- data/lib/origen_testers/smartest_based_tester/base/variables_file.rb +38 -38
- data/lib/origen_testers/smartest_based_tester/v93k.rb +8 -8
- data/lib/origen_testers/smartest_based_tester/v93k/builder.rb +89 -89
- data/lib/origen_testers/smartest_based_tester/v93k/builder/flow.rb +181 -181
- data/lib/origen_testers/smartest_based_tester/v93k/builder/pattern_master.rb +54 -54
- data/lib/origen_testers/smartest_based_tester/v93k/flow.rb +10 -10
- data/lib/origen_testers/smartest_based_tester/v93k/generator.rb +19 -19
- data/lib/origen_testers/smartest_based_tester/v93k/pattern_compiler.rb +10 -10
- data/lib/origen_testers/smartest_based_tester/v93k/pattern_master.rb +10 -10
- data/lib/origen_testers/smartest_based_tester/v93k/templates/template.aiv.erb +17 -17
- data/lib/origen_testers/smartest_based_tester/v93k/templates/template.pmfl.erb +13 -13
- data/lib/origen_testers/smartest_based_tester/v93k/templates/template.tf.erb +236 -214
- data/lib/origen_testers/smartest_based_tester/v93k/templates/vars.tf.erb +48 -48
- data/lib/origen_testers/smartest_based_tester/v93k/test_method.rb +9 -9
- data/lib/origen_testers/smartest_based_tester/v93k/test_methods.rb +9 -9
- data/lib/origen_testers/smartest_based_tester/v93k/test_suite.rb +9 -9
- data/lib/origen_testers/smartest_based_tester/v93k/test_suites.rb +9 -9
- data/lib/origen_testers/smartest_based_tester/v93k/variables_file.rb +10 -10
- data/lib/origen_testers/test/basic_interface.rb +17 -17
- data/lib/origen_testers/test/block.rb +21 -21
- data/lib/origen_testers/test/custom_test_interface.rb +111 -111
- data/lib/origen_testers/test/dut.rb +295 -295
- data/lib/origen_testers/test/dut2.rb +76 -76
- data/lib/origen_testers/test/dut3.rb +244 -244
- data/lib/origen_testers/test/interface.rb +503 -503
- data/lib/origen_testers/test/nvm.rb +94 -94
- data/lib/origen_testers/timing.rb +368 -368
- data/lib/origen_testers/vector.rb +207 -207
- data/lib/origen_testers/vector_based_tester.rb +41 -41
- data/lib/origen_testers/vector_generator.rb +655 -655
- data/lib/origen_testers/vector_pipeline.rb +302 -302
- data/pattern/bitmap.rb +7 -7
- data/pattern/dc_instr.rb +7 -7
- data/pattern/delay.rb +7 -7
- data/pattern/freq_counter.rb +6 -6
- data/pattern/mem_test.rb +8 -8
- data/pattern/multi_vector.rb +122 -122
- data/pattern/multi_vector_plus1.rb +125 -125
- data/pattern/nvm/j750/add_late_pins.rb +3 -3
- data/pattern/nvm/j750/iterator_postfix_test_x_bx.rb +8 -8
- data/pattern/nvm/j750/iterator_test_x_bx.rb +8 -8
- data/pattern/nvm/j750/j750_halt.rb +159 -159
- data/pattern/nvm/j750/j750_workout.rb +209 -209
- data/pattern/nvm/j750/timing.rb +73 -73
- data/pattern/read_write_reg.rb +61 -61
- data/pattern/reset.rb +4 -4
- data/pattern/subroutines.rb +69 -69
- data/pattern/tester_overlay.rb +61 -52
- data/pattern/tester_store.rb +28 -28
- data/program/_additional_erase.rb +7 -7
- data/program/_efa_resources.rb +7 -7
- data/program/_erase.rb +25 -25
- data/program/_erase_vfy.rb +5 -5
- data/program/_iv_resources.rb +10 -10
- data/program/basic_interface.rb +5 -5
- data/program/components/_prb1_main.rb +222 -222
- data/program/components/_temp.rb +6 -6
- data/program/custom_tests.rb +10 -10
- data/program/flow_control.rb +422 -422
- data/program/prb1.rb +11 -11
- data/program/prb1_resources.rb +28 -28
- data/program/prb2.rb +27 -27
- data/program/test.rb +29 -29
- data/program/uflex_resources.rb +199 -199
- data/templates/example.txt.erb +53 -53
- data/templates/j750/program_sheet.txt.erb +9 -9
- data/templates/manifest/v93k.yaml.erb +22 -22
- data/templates/web/index.md.erb +51 -51
- data/templates/web/layouts/_basic.html.erb +15 -15
- data/templates/web/partials/_navbar.html.erb +22 -22
- data/templates/web/release_notes.md.erb +5 -5
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 9015f3fbad10cab9f3b5aac7252f7140e0a864ca
|
|
4
|
+
data.tar.gz: 149a049246a46d9f31d0b65a9912b8877e335680
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 8250ba0aac860f14b1ba715ce850153977f96c48ebf946446a3ea0f055ab971e504e78f2fd4160296aa946abcae2f00da039a9a568ee886c043f5d1ebe90a00e
|
|
7
|
+
data.tar.gz: 1595492b5f11754cc6ee4c2e277176f7914f93da68e9c85688e2b356729f16ce4f1362302e44993a664f9a2f81be74205627feb5f233ef53519c7c967e9a3b8b
|
data/config/application.rb
CHANGED
|
@@ -1,151 +1,151 @@
|
|
|
1
|
-
class OrigenTestersApplication < Origen::Application
|
|
2
|
-
# See http://origen.freescale.net/origen/latest/api/Origen/Application/Configuration.html
|
|
3
|
-
# for a full list of the configuration options available
|
|
4
|
-
|
|
5
|
-
config.shared = {
|
|
6
|
-
:command_launcher => "config/shared_commands.rb"
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
# This information is used in headers and email templates, set it specific
|
|
10
|
-
# to your application
|
|
11
|
-
config.name = 'Origen Testers'
|
|
12
|
-
config.initials = 'OrigenTesters'
|
|
13
|
-
self.name = 'origen_testers'
|
|
14
|
-
self.namespace = 'OrigenTesters'
|
|
15
|
-
config.rc_url = "git@github.com:Origen-SDK/origen_testers.git"
|
|
16
|
-
config.release_externally = true
|
|
17
|
-
|
|
18
|
-
# Added list of directory to exclude when run running origen rc unman
|
|
19
|
-
config.unmanaged_dirs = %w[spec/patterns/bin]
|
|
20
|
-
|
|
21
|
-
config.unmanaged_files = %w[]
|
|
22
|
-
|
|
23
|
-
config.web_directory = "git@github.com:Origen-SDK/Origen-SDK.github.io.git/testers"
|
|
24
|
-
config.web_domain = "http://origen-sdk.org/testers"
|
|
25
|
-
|
|
26
|
-
# When false Origen will be less strict about checking for some common coding errors,
|
|
27
|
-
# it is recommended that you leave this to true for better feedback and easier debug.
|
|
28
|
-
# This will be the default setting in Origen v3.
|
|
29
|
-
config.strict_errors = true
|
|
30
|
-
|
|
31
|
-
config.semantically_version = true
|
|
32
|
-
|
|
33
|
-
# to handle for web compile where environment/tester not yet defined
|
|
34
|
-
|
|
35
|
-
# By default all generated output will end up in ./output.
|
|
36
|
-
# Here you can specify an alternative directory entirely, or make it dynamic such that
|
|
37
|
-
# the output ends up in a setup specific directory.
|
|
38
|
-
config.output_directory do
|
|
39
|
-
dir = "#{Origen.root}/output/#{$tester.nil? ? '': $tester.name}"
|
|
40
|
-
# Check if running on windows, if so, substitute :: with _
|
|
41
|
-
dir.gsub!("::","_") if Origen.os.windows?
|
|
42
|
-
dir
|
|
43
|
-
end
|
|
44
|
-
|
|
45
|
-
# Similary for the reference files, generally you want to setup the reference directory
|
|
46
|
-
# structure to mirror that of your output directory structure.
|
|
47
|
-
config.reference_directory do
|
|
48
|
-
dir = "#{Origen.root}/.ref/#{$tester.nil? ? '': $tester.name}"
|
|
49
|
-
# Check if running on windows, if so, substitute :: with _
|
|
50
|
-
dir.gsub!("::","_") if Origen.os.windows?
|
|
51
|
-
dir
|
|
52
|
-
end
|
|
53
|
-
|
|
54
|
-
# Setting this to the spec area for testing of compiler
|
|
55
|
-
config.pattern_output_directory do
|
|
56
|
-
dir = "#{Origen.root}/spec/patterns/atp"
|
|
57
|
-
# Check if running on windows, if so, substitute :: with _
|
|
58
|
-
dir.gsub!("::","_") if Origen.os.windows?
|
|
59
|
-
dir
|
|
60
|
-
end
|
|
61
|
-
|
|
62
|
-
# Run the tests before deploying to generate test coverage numbers
|
|
63
|
-
def before_deploy_site
|
|
64
|
-
Dir.chdir Origen.root do
|
|
65
|
-
system 'origen examples -c'
|
|
66
|
-
system 'origen specs -c'
|
|
67
|
-
dir = "#{Origen.root}/web/output/coverage"
|
|
68
|
-
FileUtils.remove_dir(dir, true) if File.exist?(dir)
|
|
69
|
-
system "mv #{Origen.root}/coverage #{dir}"
|
|
70
|
-
end
|
|
71
|
-
end
|
|
72
|
-
|
|
73
|
-
# This will automatically deploy your documentation after every tag
|
|
74
|
-
def after_release_email(tag, note, type, selector, options)
|
|
75
|
-
command = "origen web compile --remote --api --comment 'Release of #{Origen.app.name} #{Origen.app.version}'"
|
|
76
|
-
Dir.chdir Origen.root do
|
|
77
|
-
system command
|
|
78
|
-
end
|
|
79
|
-
end
|
|
80
|
-
|
|
81
|
-
# Ensure that all tests pass before allowing a release to continue
|
|
82
|
-
def validate_release
|
|
83
|
-
if !system("origen examples") # || !system("origen specs")
|
|
84
|
-
puts "Sorry but you can't release with failing tests, please fix them and try again."
|
|
85
|
-
exit 1
|
|
86
|
-
else
|
|
87
|
-
puts "All tests passing, proceeding with release process!"
|
|
88
|
-
end
|
|
89
|
-
end
|
|
90
|
-
|
|
91
|
-
# Help to find patterns based on an iterator
|
|
92
|
-
config.pattern_name_translator do |name|
|
|
93
|
-
if name == 'dummy_name'
|
|
94
|
-
{ :source => 'timing', :output => 'timing' }
|
|
95
|
-
else
|
|
96
|
-
name.gsub(/_b\d/, '_bx')
|
|
97
|
-
end
|
|
98
|
-
end
|
|
99
|
-
|
|
100
|
-
if current? # Standalone only configs
|
|
101
|
-
|
|
102
|
-
# By block iterator
|
|
103
|
-
config.pattern_iterator do |iterator|
|
|
104
|
-
iterator.key = :by_block
|
|
105
|
-
|
|
106
|
-
iterator.loop do |&pattern|
|
|
107
|
-
$nvm.blocks.each do |block|
|
|
108
|
-
pattern.call(block)
|
|
109
|
-
end
|
|
110
|
-
end
|
|
111
|
-
|
|
112
|
-
iterator.setup do |block|
|
|
113
|
-
blk = $nvm.find_block_by_id(block.id)
|
|
114
|
-
blk.select
|
|
115
|
-
blk
|
|
116
|
-
end
|
|
117
|
-
|
|
118
|
-
iterator.pattern_name do |name, block|
|
|
119
|
-
name.gsub('_bx', "_b#{block.id}")
|
|
120
|
-
end
|
|
121
|
-
end
|
|
122
|
-
|
|
123
|
-
# By setting iterator
|
|
124
|
-
config.pattern_iterator do |iterator|
|
|
125
|
-
iterator.key = :by_setting
|
|
126
|
-
|
|
127
|
-
iterator.loop do |settings, &pattern|
|
|
128
|
-
settings.each do |setting|
|
|
129
|
-
pattern.call(setting)
|
|
130
|
-
end
|
|
131
|
-
end
|
|
132
|
-
|
|
133
|
-
iterator.pattern_name do |name, setting|
|
|
134
|
-
name.gsub('_x', "_#{setting}")
|
|
135
|
-
end
|
|
136
|
-
end
|
|
137
|
-
|
|
138
|
-
end # standalone only configs
|
|
139
|
-
|
|
140
|
-
# Set up lint test
|
|
141
|
-
config.lint_test = {
|
|
142
|
-
# Require the lint tests to pass before allowing a release to proceed
|
|
143
|
-
:run_on_tag => true,
|
|
144
|
-
# Auto correct violations where possible whenever 'origen lint' is run
|
|
145
|
-
:auto_correct => true,
|
|
146
|
-
# Limit the testing for large legacy applications
|
|
147
|
-
#:level => :easy,
|
|
148
|
-
# Run on these directories/files by default
|
|
149
|
-
#:files => ["lib", "config/application.rb"],
|
|
150
|
-
}
|
|
151
|
-
end
|
|
1
|
+
class OrigenTestersApplication < Origen::Application
|
|
2
|
+
# See http://origen.freescale.net/origen/latest/api/Origen/Application/Configuration.html
|
|
3
|
+
# for a full list of the configuration options available
|
|
4
|
+
|
|
5
|
+
config.shared = {
|
|
6
|
+
:command_launcher => "config/shared_commands.rb"
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
# This information is used in headers and email templates, set it specific
|
|
10
|
+
# to your application
|
|
11
|
+
config.name = 'Origen Testers'
|
|
12
|
+
config.initials = 'OrigenTesters'
|
|
13
|
+
self.name = 'origen_testers'
|
|
14
|
+
self.namespace = 'OrigenTesters'
|
|
15
|
+
config.rc_url = "git@github.com:Origen-SDK/origen_testers.git"
|
|
16
|
+
config.release_externally = true
|
|
17
|
+
|
|
18
|
+
# Added list of directory to exclude when run running origen rc unman
|
|
19
|
+
config.unmanaged_dirs = %w[spec/patterns/bin]
|
|
20
|
+
|
|
21
|
+
config.unmanaged_files = %w[]
|
|
22
|
+
|
|
23
|
+
config.web_directory = "git@github.com:Origen-SDK/Origen-SDK.github.io.git/testers"
|
|
24
|
+
config.web_domain = "http://origen-sdk.org/testers"
|
|
25
|
+
|
|
26
|
+
# When false Origen will be less strict about checking for some common coding errors,
|
|
27
|
+
# it is recommended that you leave this to true for better feedback and easier debug.
|
|
28
|
+
# This will be the default setting in Origen v3.
|
|
29
|
+
config.strict_errors = true
|
|
30
|
+
|
|
31
|
+
config.semantically_version = true
|
|
32
|
+
|
|
33
|
+
# to handle for web compile where environment/tester not yet defined
|
|
34
|
+
|
|
35
|
+
# By default all generated output will end up in ./output.
|
|
36
|
+
# Here you can specify an alternative directory entirely, or make it dynamic such that
|
|
37
|
+
# the output ends up in a setup specific directory.
|
|
38
|
+
config.output_directory do
|
|
39
|
+
dir = "#{Origen.root}/output/#{$tester.nil? ? '': $tester.name}"
|
|
40
|
+
# Check if running on windows, if so, substitute :: with _
|
|
41
|
+
dir.gsub!("::","_") if Origen.os.windows?
|
|
42
|
+
dir
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
# Similary for the reference files, generally you want to setup the reference directory
|
|
46
|
+
# structure to mirror that of your output directory structure.
|
|
47
|
+
config.reference_directory do
|
|
48
|
+
dir = "#{Origen.root}/.ref/#{$tester.nil? ? '': $tester.name}"
|
|
49
|
+
# Check if running on windows, if so, substitute :: with _
|
|
50
|
+
dir.gsub!("::","_") if Origen.os.windows?
|
|
51
|
+
dir
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
# Setting this to the spec area for testing of compiler
|
|
55
|
+
config.pattern_output_directory do
|
|
56
|
+
dir = "#{Origen.root}/spec/patterns/atp"
|
|
57
|
+
# Check if running on windows, if so, substitute :: with _
|
|
58
|
+
dir.gsub!("::","_") if Origen.os.windows?
|
|
59
|
+
dir
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
# Run the tests before deploying to generate test coverage numbers
|
|
63
|
+
def before_deploy_site
|
|
64
|
+
Dir.chdir Origen.root do
|
|
65
|
+
system 'origen examples -c'
|
|
66
|
+
system 'origen specs -c'
|
|
67
|
+
dir = "#{Origen.root}/web/output/coverage"
|
|
68
|
+
FileUtils.remove_dir(dir, true) if File.exist?(dir)
|
|
69
|
+
system "mv #{Origen.root}/coverage #{dir}"
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
# This will automatically deploy your documentation after every tag
|
|
74
|
+
def after_release_email(tag, note, type, selector, options)
|
|
75
|
+
command = "origen web compile --remote --api --comment 'Release of #{Origen.app.name} #{Origen.app.version}'"
|
|
76
|
+
Dir.chdir Origen.root do
|
|
77
|
+
system command
|
|
78
|
+
end
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
# Ensure that all tests pass before allowing a release to continue
|
|
82
|
+
def validate_release
|
|
83
|
+
if !system("origen examples") # || !system("origen specs")
|
|
84
|
+
puts "Sorry but you can't release with failing tests, please fix them and try again."
|
|
85
|
+
exit 1
|
|
86
|
+
else
|
|
87
|
+
puts "All tests passing, proceeding with release process!"
|
|
88
|
+
end
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
# Help to find patterns based on an iterator
|
|
92
|
+
config.pattern_name_translator do |name|
|
|
93
|
+
if name == 'dummy_name'
|
|
94
|
+
{ :source => 'timing', :output => 'timing' }
|
|
95
|
+
else
|
|
96
|
+
name.gsub(/_b\d/, '_bx')
|
|
97
|
+
end
|
|
98
|
+
end
|
|
99
|
+
|
|
100
|
+
if current? # Standalone only configs
|
|
101
|
+
|
|
102
|
+
# By block iterator
|
|
103
|
+
config.pattern_iterator do |iterator|
|
|
104
|
+
iterator.key = :by_block
|
|
105
|
+
|
|
106
|
+
iterator.loop do |&pattern|
|
|
107
|
+
$nvm.blocks.each do |block|
|
|
108
|
+
pattern.call(block)
|
|
109
|
+
end
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
iterator.setup do |block|
|
|
113
|
+
blk = $nvm.find_block_by_id(block.id)
|
|
114
|
+
blk.select
|
|
115
|
+
blk
|
|
116
|
+
end
|
|
117
|
+
|
|
118
|
+
iterator.pattern_name do |name, block|
|
|
119
|
+
name.gsub('_bx', "_b#{block.id}")
|
|
120
|
+
end
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
# By setting iterator
|
|
124
|
+
config.pattern_iterator do |iterator|
|
|
125
|
+
iterator.key = :by_setting
|
|
126
|
+
|
|
127
|
+
iterator.loop do |settings, &pattern|
|
|
128
|
+
settings.each do |setting|
|
|
129
|
+
pattern.call(setting)
|
|
130
|
+
end
|
|
131
|
+
end
|
|
132
|
+
|
|
133
|
+
iterator.pattern_name do |name, setting|
|
|
134
|
+
name.gsub('_x', "_#{setting}")
|
|
135
|
+
end
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
end # standalone only configs
|
|
139
|
+
|
|
140
|
+
# Set up lint test
|
|
141
|
+
config.lint_test = {
|
|
142
|
+
# Require the lint tests to pass before allowing a release to proceed
|
|
143
|
+
:run_on_tag => true,
|
|
144
|
+
# Auto correct violations where possible whenever 'origen lint' is run
|
|
145
|
+
:auto_correct => true,
|
|
146
|
+
# Limit the testing for large legacy applications
|
|
147
|
+
#:level => :easy,
|
|
148
|
+
# Run on these directories/files by default
|
|
149
|
+
#:files => ["lib", "config/application.rb"],
|
|
150
|
+
}
|
|
151
|
+
end
|
data/config/boot.rb
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
require "origen_testers"
|
|
2
|
-
|
|
3
|
-
# This file is only loaded when the testers is running standalone,
|
|
4
|
-
# therefore anything required here will be loaded for development only
|
|
5
|
-
require "origen_testers/test/dut.rb"
|
|
6
|
-
require "origen_testers/test/block.rb"
|
|
7
|
-
require "origen_testers/test/dut2.rb"
|
|
8
|
-
require "origen_testers/test/dut3.rb"
|
|
9
|
-
require "origen_testers/test/nvm.rb"
|
|
10
|
-
|
|
11
|
-
require "origen_testers/test/interface"
|
|
12
|
-
require "origen_testers/test/basic_interface"
|
|
13
|
-
require "origen_testers/test/custom_test_interface"
|
|
1
|
+
require "origen_testers"
|
|
2
|
+
|
|
3
|
+
# This file is only loaded when the testers is running standalone,
|
|
4
|
+
# therefore anything required here will be loaded for development only
|
|
5
|
+
require "origen_testers/test/dut.rb"
|
|
6
|
+
require "origen_testers/test/block.rb"
|
|
7
|
+
require "origen_testers/test/dut2.rb"
|
|
8
|
+
require "origen_testers/test/dut3.rb"
|
|
9
|
+
require "origen_testers/test/nvm.rb"
|
|
10
|
+
|
|
11
|
+
require "origen_testers/test/interface"
|
|
12
|
+
require "origen_testers/test/basic_interface"
|
|
13
|
+
require "origen_testers/test/custom_test_interface"
|
data/config/commands.rb
CHANGED
|
@@ -1,86 +1,85 @@
|
|
|
1
|
-
# This file should be used to extend the origen command line tool with tasks
|
|
2
|
-
# specific to your application.
|
|
3
|
-
# The comments below should help to get started and you can also refer to
|
|
4
|
-
# lib/origen/commands.rb in your Origen core workspace for more examples and
|
|
5
|
-
# inspiration.
|
|
6
|
-
#
|
|
7
|
-
# Also see the official docs on adding commands:
|
|
8
|
-
# http://origen.freescale.net/origen/latest/guides/custom/commands/
|
|
9
|
-
|
|
10
|
-
# Map any command aliases here, for example to allow origen -x to refer to a
|
|
11
|
-
# command called execute you would add a reference as shown below:
|
|
12
|
-
aliases = {
|
|
13
|
-
# "-x" => "execute",
|
|
14
|
-
"g" => "generate"
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
# The requested command is passed in here as @command, this checks it against
|
|
18
|
-
# the above alias table and should not be removed.
|
|
19
|
-
@command = aliases[@command] || @command
|
|
20
|
-
|
|
21
|
-
# Now branch to the specific task code
|
|
22
|
-
case @command
|
|
23
|
-
|
|
24
|
-
when "tags"
|
|
25
|
-
Dir.chdir Origen.root do
|
|
26
|
-
system "ripper-tags --recursive lib"
|
|
27
|
-
end
|
|
28
|
-
exit 0
|
|
29
|
-
|
|
30
|
-
# Run the unit tests
|
|
31
|
-
when "specs"
|
|
32
|
-
require "rspec"
|
|
33
|
-
exit RSpec::Core::Runner.run(['spec'])
|
|
34
|
-
|
|
35
|
-
# Run the example-based (diff) tests
|
|
36
|
-
when "examples", "test"
|
|
37
|
-
Origen.load_application
|
|
38
|
-
status = 0
|
|
39
|
-
|
|
40
|
-
Dir["#{Origen.root}/examples/*.rb"].each do |example|
|
|
41
|
-
require example
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
# Compiler tests
|
|
45
|
-
# ARGV = %w(templates/example.txt.erb -t debug -r approved)
|
|
46
|
-
# load "origen/commands/compile.rb"
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
Origen.app.stats.
|
|
50
|
-
Origen.app.stats.
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
puts
|
|
57
|
-
puts
|
|
58
|
-
puts
|
|
59
|
-
puts
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
#
|
|
74
|
-
#
|
|
75
|
-
#
|
|
76
|
-
#
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
end
|
|
1
|
+
# This file should be used to extend the origen command line tool with tasks
|
|
2
|
+
# specific to your application.
|
|
3
|
+
# The comments below should help to get started and you can also refer to
|
|
4
|
+
# lib/origen/commands.rb in your Origen core workspace for more examples and
|
|
5
|
+
# inspiration.
|
|
6
|
+
#
|
|
7
|
+
# Also see the official docs on adding commands:
|
|
8
|
+
# http://origen.freescale.net/origen/latest/guides/custom/commands/
|
|
9
|
+
|
|
10
|
+
# Map any command aliases here, for example to allow origen -x to refer to a
|
|
11
|
+
# command called execute you would add a reference as shown below:
|
|
12
|
+
aliases = {
|
|
13
|
+
# "-x" => "execute",
|
|
14
|
+
"g" => "generate"
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
# The requested command is passed in here as @command, this checks it against
|
|
18
|
+
# the above alias table and should not be removed.
|
|
19
|
+
@command = aliases[@command] || @command
|
|
20
|
+
|
|
21
|
+
# Now branch to the specific task code
|
|
22
|
+
case @command
|
|
23
|
+
|
|
24
|
+
when "tags"
|
|
25
|
+
Dir.chdir Origen.root do
|
|
26
|
+
system "ripper-tags --recursive lib"
|
|
27
|
+
end
|
|
28
|
+
exit 0
|
|
29
|
+
|
|
30
|
+
# Run the unit tests
|
|
31
|
+
when "specs"
|
|
32
|
+
require "rspec"
|
|
33
|
+
exit RSpec::Core::Runner.run(['spec'])
|
|
34
|
+
|
|
35
|
+
# Run the example-based (diff) tests
|
|
36
|
+
when "examples", "test"
|
|
37
|
+
Origen.load_application
|
|
38
|
+
status = 0
|
|
39
|
+
|
|
40
|
+
Dir["#{Origen.root}/examples/*.rb"].each do |example|
|
|
41
|
+
require example
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
# Compiler tests
|
|
45
|
+
# ARGV = %w(templates/example.txt.erb -t debug -r approved)
|
|
46
|
+
# load "origen/commands/compile.rb"
|
|
47
|
+
if Origen.app.stats.changed_files == 0 &&
|
|
48
|
+
Origen.app.stats.new_files == 0 &&
|
|
49
|
+
Origen.app.stats.changed_patterns == 0 &&
|
|
50
|
+
Origen.app.stats.new_patterns == 0
|
|
51
|
+
|
|
52
|
+
Origen.app.stats.report_pass
|
|
53
|
+
else
|
|
54
|
+
|
|
55
|
+
puts
|
|
56
|
+
puts "To approve any diffs in the reference.list files run the following command:"
|
|
57
|
+
puts
|
|
58
|
+
puts "cp list/j750/referenced.list approved/j750/referenced.list && cp list/j750_hpt/referenced.list approved/j750_hpt/referenced.list && cp list/ultraflex/referenced.list approved/ultraflex/referenced.list && cp list/v93k/referenced.list approved/v93k/referenced.list"
|
|
59
|
+
puts
|
|
60
|
+
Origen.app.stats.report_fail
|
|
61
|
+
status = 1
|
|
62
|
+
end
|
|
63
|
+
puts
|
|
64
|
+
if @command == "test"
|
|
65
|
+
Origen.app.unload_target!
|
|
66
|
+
require "rspec"
|
|
67
|
+
result = RSpec::Core::Runner.run(['spec'])
|
|
68
|
+
status = status == 1 ? 1 : result
|
|
69
|
+
end
|
|
70
|
+
exit status # Exit with a 1 on the event of a failure per std unix result codes
|
|
71
|
+
|
|
72
|
+
# Always leave an else clause to allow control to fall back through to the
|
|
73
|
+
# Origen command handler.
|
|
74
|
+
# You probably want to also add the command details to the help shown via
|
|
75
|
+
# origen -h, you can do this be assigning the required text to @application_commands
|
|
76
|
+
# before handing control back to Origen. Un-comment the example below to get started.
|
|
77
|
+
else
|
|
78
|
+
@application_commands = <<-EOT
|
|
79
|
+
specs Run the specs (tests), -c will enable coverage
|
|
80
|
+
examples Run the examples (tests), -c will enable coverage
|
|
81
|
+
test Run both specs and examples, -c will enable coverage
|
|
82
|
+
tags Generate ctags for this app
|
|
83
|
+
EOT
|
|
84
|
+
|
|
85
|
+
end
|