add in dummy testing mode
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Mon, 2 Jul 2018 11:20:58 +0000 (12:20 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Mon, 2 Jul 2018 11:20:58 +0000 (12:20 +0100)
src/pinmux_generator.py
src/spec/__init__.py
src/spec/c_class.py
src/spec/m_class.py
src/spec/microtest.py
src/spec/minitest.py

index c88146be844fd7b8e3207cc9fd205c27c1710dc1..e34b4c557f3e53e6b8ad4a1aa47e9e931e7b3a23 100644 (file)
@@ -19,7 +19,7 @@
 import getopt
 import os.path
 import sys
-from spec import modules, specgen
+from spec import modules, specgen, dummytest
 
 from bsv.pinmux_generator import pinmuxgen as bsvgen
 
@@ -43,6 +43,7 @@ if __name__ == '__main__':
             'o:vht:s:',
             ['output=',
              'validate',
+             'test',
              'outputtype=',
              'spec=',
              'help',
@@ -58,6 +59,7 @@ if __name__ == '__main__':
     validate = False
     spec = None
     pinspec = None
+    testing = False
     for opt, arg in options:
         if opt in ('-o', '--output'):
             output_dir = arg
@@ -67,6 +69,8 @@ if __name__ == '__main__':
             output_type = arg
         elif opt in ('-v', '--validate'):
             validate = True
+        elif opt in ('--test',):
+            testing = True
         elif opt in ('-h', '--help'):
             printhelp()
             sys.exit(0)
@@ -83,8 +87,12 @@ if __name__ == '__main__':
         if not os.path.exists(d):
             os.makedirs(d)
         with open(fname, "w") as of:
-            pinout, bankspec, pinspec, fixedpins = module.pinspec(of)
-            specgen(of, output_dir, pinout, bankspec, pinspec, fixedpins)
+            ps = module.pinspec()
+            pinout, bankspec, pinspec, fixedpins = ps.write(of)
+            if testing:
+                dummytest(ps, output_dir, output_type)
+            else:
+                specgen(of, output_dir, pinout, bankspec, pinspec, fixedpins)
     else:
         gentypes = {'bsv': bsvgen}
         if output_type not in gentypes:
index e03c0e35b22b3b718820aa1bfa86e06322647a0b..e85da79f2f447c0e872db179829893870aa63693 100644 (file)
@@ -3,6 +3,7 @@ from spec import c_class
 from spec import minitest
 from spec import microtest
 from spec.gen import specgen
+from spec.testing import dummytest
 
 modules = {'m_class': m_class,
            'c_class': c_class,
index 704eaf9f4d469ba3bb61345028b39a5020b14655..421d50861e4e3b2200c2b4d60777864841c5c65d 100644 (file)
@@ -4,7 +4,7 @@ from spec.ifaceprint import display, display_fns, check_functions
 from spec.ifaceprint import display_fixed
 
 
-def pinspec(of):
+def pinspec():
     pinouts = {}
 
     pinbanks = {'A': 16,
index 6503d567f0dc36cca0ab105fc21188588340714a..c122e83274e277ce15d825e3767ae3bdb67921c7 100644 (file)
@@ -3,7 +3,7 @@
 from spec.base import PinSpec
 
 
-def pinspec(of):
+def pinspec():
     pinbanks = {'A': 16,
                 'B': 28,
                 'C': 24,
@@ -512,4 +512,4 @@ def pinspec(of):
                     iot, iot_eint, iot_pwm,
                     descriptions)
 
-    return ps.write(of)
+    return ps
index 0764e786ad857534f5a352402910043e1f19ea51..f4adabf6fdd0aaf5659fa2cd6ffabe24ca04b089 100644 (file)
@@ -6,7 +6,7 @@ from spec.ifaceprint import display, display_fns, check_functions
 from spec.ifaceprint import display_fixed
 
 
-def pinspec(of):
+def pinspec():
     pinbanks = {
         'A': 4,
     }
@@ -71,7 +71,7 @@ def pinspec(of):
         'ULPI1': 'dual USB2 Host ULPI PHY'
     }
 
-    ps.add_scenario("MiniTest", microtest, microtest_eint, microtest_pwm,
+    ps.add_scenario("MicroTest", microtest, microtest_eint, microtest_pwm,
                     descriptions)
 
-    return ps.write(of)
+    return ps
index 3b70bb5f45104bf6b48a379158393fd015c570fc..4ab43c0297ad82a46d737d74b951486ea8d7d6ab 100644 (file)
@@ -6,7 +6,7 @@ from spec.ifaceprint import display, display_fns, check_functions
 from spec.ifaceprint import display_fixed
 
 
-def pinspec(of):
+def pinspec():
     pinbanks = {
         'B': 28,
     }
@@ -109,4 +109,4 @@ def pinspec(of):
     ps.add_scenario("MiniTest", minitest, minitest_eint, minitest_pwm,
                     descriptions)
 
-    return ps.write(of)
+    return ps