-
Notifications
You must be signed in to change notification settings - Fork 17
Plugin | Miniboxing Tests
VladUreche edited this page Nov 26, 2014
·
9 revisions
The testing infrastructure allows checking that the critical transformations in the miniboxing plugin work correctly with each change made to the code base. This fact is checked with each pull request or push to the repository:
Tests check the plugin functionality. The are grouped in:
-
<test>.scala
- the test source code, that will be compiled using the plugin -
<test>.flags
- (optional) the flags to be passed to the compiler -
<test>.check
- (optional) a file that indicates the expected output -- any difference causes the test to fail -
<test>.launch
- (optional) used in order to run the compiled program, this file contains the main class and the arguments used in the invocation
Tests are located in tests/correctness. Still, of the hundreds of tests, some are interesting for showing exactly how the miniboxing transformation works:
- Tests related to rewiring methods, object creations and parents:
-
mb_rewire_method.scala
(check file) -
mb_rewire_method_advanced.scala
(check file) -
mb_rewire_new.scala
(check file) -
mb_rewire_spire.scala
(check file) -
mb_rewire_val.scala
(check file) -
mb_tparams_basic.scala
(check file) -
mb_tparams_rewire_method.scala
(check file) -
mb_tparams_rewire_new.scala
(check file)
-
- tests related to using the miniboxing runtime
- tests related to signatures:
-
tests related to the data representation transformation:
-
mb_erasure_torture1.scala
(check file) -
mb_erasure_torture2.scala
(check file) -
mb_erasure_torture3.scala
(check file) -
mb_erasure_torture4.scala
(check file) -
mb_erasure_torture5.scala
(check file) -
mb_erasure_torture6.scala
(check file) -
mb_erasure_torture7.scala
(check file) -
mb_erasure_torture8.scala
(check file) -
mb_erasure_torture9.scala
(check file) -
mb_erasure_torture10.scala
(check file) -
mb_erasure_torture11.scala
(check file) -
mb_erasure_torture12.scala
(check file)
-
- tests related to miniboxed class/method nesting:
-
mb_nested_class_first.scala
(check file) -
mb_nested_class_second.scala
(check file) -
mb_nested_class_third.scala
(check file) -
mb_nested_class_forth.scala
(check file) -
mb_nested_class_fifth.scala
(check file) -
mb_nested_class_sixth.scala
(check file) -
mb_nested_specialization_1.scala
(check file) -
mb_nested_specialization_2.scala
(check file) -
mb_nested_specialization_3.scala
(check file) -
mb_nested_specialization_4.scala
(check file)
-
- tests related to inheritance and parent class rewiring:
-
mb_inheritance_parents_first.scala
(check file) -
mb_inheritance_parents_second.scala
(check file) -
mb_inheritance_parents_complex.scala
(check file) -
mb_inheritance_parents_third.scala
(check file) -
mb_inheritance_parents_trait_first.scala
(check file) -
mb_inheritance_parents_trait_second.scala
(check file) -
mb_inheritance_parents_generic.scala
(check file) -
mb_inheritance_parents_partial1.scala
(check file) -
mb_inheritance_parents_partial2.scala
(check file)
-
- tests for method specialization (called normalization):
-
mb_normalize_1.scala
(check file) -
mb_normalize_2.scala
(check file) -
mb_normalize_3.scala
(check file) -
mb_normalize_4.scala
(check file) -
mb_normalize_5.scala
(check file) -
mb_normalize_6.scala
(check file) -
mb_normalize_7.scala
(check file) -
mb_normalize_8.scala
(check file) -
mb_normalize_9.scala
(check file)
-
- tests for method overriding:
- tests for different published examples:
To run the tests, use sbt:
$ cd ~/Workspace/miniboxing-plugin
$ sbt miniboxing-tests/test
[info] Loading project definition from /mnt/data1/Work/Workspace/dev/miniboxing-plugin/project
[info] Set current project to miniboxing (in build file:/mnt/data1/Work/Workspace/dev/miniboxing-plugin/)
[info] Test run started
[info] Test miniboxing.infrastructure.TestSuite.testCompileOutput started
Picking tests from: /mnt/data1/Work/Workspace/dev/miniboxing-plugin/tests/correctness/../../components/plugin/target/scala-2.11
Picking tests from: /mnt/data1/Work/Workspace/dev/miniboxing-plugin/tests/correctness/resources/miniboxing/tests/compile
Compiling SI-6223.scala ... [ OK ]
Compiling collections-2way.scala ... [ OK ]
Compiling collections-no-spec.scala ... [ OK ]
Compiling collections.scala ... [ OK ]
Compiling gh-bug-1.scala ... [ OK ]
Compiling gh-bug-102.scala ... [ OK ]
Compiling gh-bug-106.scala ... [ OK ]
Compiling gh-bug-107.scala ... [ OK ]
Compiling gh-bug-11.scala ... [ OK ]
Compiling gh-bug-111.scala ... [ OK ]
Compiling gh-bug-111b.scala ... [ OK ]
Compiling gh-bug-112.scala ... [ OK ]
Compiling gh-bug-113.scala ... [ OK ]
Compiling gh-bug-116.scala ... [ OK ]
Compiling gh-bug-117.scala ... [ OK ]
Compiling gh-bug-118.scala ... [ OK ]
Compiling gh-bug-120.scala ... [ OK ]
Compiling gh-bug-122.scala ... [ OK ]
Compiling gh-bug-123d.scala ... [ OK ]
Compiling gh-bug-123d2.scala ... [ OK ]
Compiling gh-bug-126.scala ... [ OK ]
Compiling gh-bug-129.scala ... [ OK ]
Compiling gh-bug-130-a.scala ... [ OK ]
Compiling gh-bug-130-b.scala ... [ OK ]
Compiling gh-bug-130-c.scala ... [ OK ]
Compiling gh-bug-131.scala ... [ OK ]
Compiling gh-bug-132.scala ... [ OK ]
Compiling gh-bug-137-point6.scala ... [ OK ]
Compiling gh-bug-137-pointX.scala ... [ OK ]
Compiling gh-bug-137-pointYa.scala ... [ OK ]
Compiling gh-bug-137-pointYb.scala ... [ OK ]
Compiling gh-bug-138.scala ... [ OK ]
Compiling gh-bug-138b.scala ... [ OK ]
Compiling gh-bug-145.scala ... [ OK ]
Compiling gh-bug-148-collections.scala ... [ OK ]
Compiling gh-bug-148.scala ... [ OK ]
Compiling gh-bug-149.scala ... [ OK ]
Compiling gh-bug-150-warn-1.scala ... [ OK ]
Compiling gh-bug-150-warn-2.scala ... [ OK ]
Compiling gh-bug-150-warn-3.scala ... [ OK ]
Compiling gh-bug-150-warn-4.scala ... [ OK ]
Compiling gh-bug-150-warn-5.scala ... [ OK ]
Compiling gh-bug-150-warn-6.scala ... [ OK ]
Compiling gh-bug-150.scala ... [ OK ]
Compiling gh-bug-150b.scala ... [ OK ]
Compiling gh-bug-18-nested-class-override-1.scala ... [ OK ]
Compiling gh-bug-18-nested-class-override-2.scala ... [ OK ]
Compiling gh-bug-2.scala ... [ OK ]
Compiling gh-bug-3.scala ... [ OK ]
Compiling gh-bug-34.scala ... [ OK ]
Compiling gh-bug-36.scala ... [ OK ]
Compiling gh-bug-37.scala ... [ OK ]
Compiling gh-bug-39.scala ... [ OK ]
Compiling gh-bug-4.scala ... [ OK ]
Compiling gh-bug-51.scala ... [ OK ]
Compiling gh-bug-53-1.scala ... [ OK ]
Compiling gh-bug-53-2.scala ... [ OK ]
Compiling gh-bug-53-3.scala ... [ OK ]
Compiling gh-bug-55.scala ... [ OK ]
Compiling gh-bug-60.scala ... [ OK ]
Compiling gh-bug-61.scala ... [ OK ]
Compiling gh-bug-63.scala ... [ OK ]
Compiling gh-bug-64-workaround-full.scala ... [ OK ]
Compiling gh-bug-64-workaround.scala ... [ OK ]
Compiling gh-bug-64.scala ... [ OK ]
Compiling gh-bug-69.scala ... [ OK ]
Compiling gh-bug-7.scala ... [ OK ]
Compiling gh-bug-71.scala ... [ OK ]
Compiling gh-bug-74.scala ... [ OK ]
Compiling gh-bug-75.scala ... [ OK ]
Compiling gh-bug-76.scala ... [ OK ]
Compiling gh-bug-8.scala ... [ OK ]
Compiling gh-bug-82-1.scala ... [ OK ]
Compiling gh-bug-82-2.scala ... [ OK ]
Compiling gh-bug-82-3.scala ... [ OK ]
Compiling gh-bug-83-1.scala ... [ OK ]
Compiling gh-bug-83-2.scala ... [ OK ]
Compiling gh-bug-84.scala ... [ OK ]
Compiling gh-bug-85-full.scala ... [ OK ]
Compiling gh-bug-85-reduced.scala ... [ OK ]
Compiling gh-bug-88.scala ... [ OK ]
Compiling gh-bug-89.scala ... [ OK ]
Compiling gh-bug-9.scala ... [ OK ]
Compiling gh-bug-90.scala ... [ OK ]
Compiling gh-bug-91.scala ... [ OK ]
Compiling gh-bug-93-full.scala ... [ OK ]
Compiling gh-bug-93-partial.scala ... [ OK ]
Compiling gh-bug-93-red.scala ... [ OK ]
Compiling gh-bug-93-red2.scala ... [ OK ]
Compiling gh-bug-93-red3.scala ... [ OK ]
Compiling gh-bug-93.scala ... [ OK ]
Compiling gh-bug-94.scala ... [ OK ]
Compiling gh-bug-95.scala ... [ OK ]
Compiling gh-bug-98.scala ... [ OK ]
Compiling mb_any_methods.scala ... [ OK ]
Compiling mb_array_ops.scala ... [ OK ]
Compiling mb_benchmarks_array_base.scala ... [ OK ]
Compiling mb_benchmarks_array_separate_base.scala ... [ OK ]
Compiling mb_benchmarks_list.scala ... [ OK ]
Compiling mb_breeze_1.scala ... [ OK ]
Compiling mb_breeze_2.scala ... [ OK ]
Compiling mb_breeze_3.scala ... [ OK ]
Compiling mb_caseclass_1.scala ... [ OK ]
Compiling mb_duplicator_tpar_si_7626.scala ... [ OK ]
Compiling mb_erasure_torture1.scala ... [ OK ]
Compiling mb_erasure_torture10.scala ... [ OK ]
Compiling mb_erasure_torture11.scala ... [ OK ]
Compiling mb_erasure_torture12.scala ... [ OK ]
Compiling mb_erasure_torture2.scala ... [ OK ]
Compiling mb_erasure_torture3.scala ... [ OK ]
Compiling mb_erasure_torture4.scala ... [ OK ]
Compiling mb_erasure_torture5.scala ... [ OK ]
Compiling mb_erasure_torture6.scala ... [ OK ]
Compiling mb_erasure_torture7.scala ... [ OK ]
Compiling mb_erasure_torture8.scala ... [ OK ]
Compiling mb_erasure_torture9.scala ... [ OK ]
Compiling mb_inheritance_parents_complex.scala ... [ OK ]
Compiling mb_inheritance_parents_first.scala ... [ OK ]
Compiling mb_inheritance_parents_forth.scala ... [ OK ]
Compiling mb_inheritance_parents_generic.scala ... [ OK ]
Compiling mb_inheritance_parents_partial1.scala ... [ OK ]
Compiling mb_inheritance_parents_partial2.scala ... [ OK ]
Compiling mb_inheritance_parents_second.scala ... [ OK ]
Compiling mb_inheritance_parents_third.scala ... [ OK ]
Compiling mb_inheritance_parents_trait_first.scala ... [ OK ]
Compiling mb_inheritance_parents_trait_second.scala ... [ OK ]
Compiling mb_library_5.scala ... [ OK ]
Compiling mb_library_6.scala ... [ OK ]
Compiling mb_library_7_1.scala ... [ OK ]
Compiling mb_library_7_2.scala ... [ OK ]
Compiling mb_library_8.scala ... [ OK ]
Compiling mb_locals.scala ... [ OK ]
Compiling mb_nested_class_fifth.scala ... [ OK ]
Compiling mb_nested_class_first.scala ... [ OK ]
Compiling mb_nested_class_forth.scala ... [ OK ]
Compiling mb_nested_class_second.scala ... [ OK ]
Compiling mb_nested_class_sixth.scala ... [ OK ]
Compiling mb_nested_class_third.scala ... [ OK ]
Compiling mb_nested_specialization_1.scala ... [ OK ]
Compiling mb_nested_specialization_2.scala ... [ OK ]
Compiling mb_nested_specialization_3.scala ... [ OK ]
Compiling mb_nested_specialization_4.scala ... [ OK ]
Compiling mb_normalize_1.scala ... [ OK ]
Compiling mb_normalize_2.scala ... [ OK ]
Compiling mb_normalize_3.scala ... [ OK ]
Compiling mb_normalize_4.scala ... [ OK ]
Compiling mb_normalize_5.scala ... [ OK ]
Compiling mb_normalize_6.scala ... [ OK ]
Compiling mb_normalize_7.scala ... [ OK ]
Compiling mb_normalize_8.scala ... [ OK ]
Compiling mb_normalize_9.scala ... [ OK ]
Compiling mb_old_annot.scala ... [ OK ]
Compiling mb_optimized_spec.scala ... [ OK ]
Compiling mb_override_1.scala ... [ OK ]
Compiling mb_override_2.scala ... [ OK ]
Compiling mb_override_3.scala ... [ OK ]
Compiling mb_override_4.scala ... [ OK ]
Compiling mb_override_5.scala ... [ OK ]
Compiling mb_override_6.scala ... [ OK ]
Compiling mb_override_7.scala ... [ OK ]
Compiling mb_partial_specialization_basic.scala ... [ OK ]
Compiling mb_rewire_method.scala ... [ OK ]
Compiling mb_rewire_method_advanced.scala ... [ OK ]
Compiling mb_rewire_new.scala ... [ OK ]
Compiling mb_rewire_spire.scala ... [ OK ]
Compiling mb_rewire_val.scala ... [ OK ]
Compiling mb_signatures.scala ... [ OK ]
Compiling mb_spec_hijack_1.scala ... [ OK ]
Compiling mb_spec_hijack_2.scala ... [ OK ]
Compiling mb_spec_hijack_3.scala ... [ OK ]
Compiling mb_spire_1.scala ... [ OK ]
Compiling mb_spire_10.scala ... [ OK ]
Compiling mb_spire_11.scala ... [ OK ]
Compiling mb_spire_13.scala ... [ OK ]
Compiling mb_spire_14.scala ... [ OK ]
Compiling mb_spire_2.scala ... [ OK ]
Compiling mb_spire_3.scala ... [ OK ]
Compiling mb_spire_4.scala ... [ OK ]
Compiling mb_spire_4_1.scala ... [ OK ]
Compiling mb_spire_4_2.scala ... [ OK ]
Compiling mb_spire_5.scala ... [ OK ]
Compiling mb_spire_6.scala ... [ OK ]
Compiling mb_spire_7.scala ... [ OK ]
Compiling mb_spire_8.scala ... [ OK ]
Compiling mb_super_1.scala ... [ OK ]
Compiling mb_tparams_basic.scala ... [ OK ]
Compiling mb_tparams_rewire_method.scala ... [ OK ]
Compiling mb_tparams_rewire_new.scala ... [ OK ]
Compiling spec-interop-func-bridge.scala ... [ OK ]
Compiling spec-interop-func1.scala ... [ OK ]
Compiling spec-interop-func2.scala ... [ OK ]
Compiling spec-interop-func3.scala ... [ OK ]
Compiling tutorial.scala ... [ OK ]
193 tests ran, all good :)
[info] Test run finished: 0 failed, 0 ignored, 1 total, 53.023s
[info] Passed: Total 1, Failed 0, Errors 0, Passed 1
[success] Total time: 58 s, completed Nov 26, 2014 5:40:29 AM
You can continue with the following resources: