diff --git a/analog/tools/ltspice/__init__.py b/analog/tools/ltspice/__init__.py
index 42fe683..638493d 100644
--- a/analog/tools/ltspice/__init__.py
+++ b/analog/tools/ltspice/__init__.py
@@ -67,11 +67,13 @@ def run(asc: str):
# do not allow the WM to decorate window
window_path = io.StringIO()
executor.sh_exec("winepath -w '%s'" % asc, window_path, NOERR=True, NOOUT=True)
- asc = window_path.getvalue().strip().replace("\\", "/")
+ asc = utils.normpath(window_path.getvalue().strip())
else:
ltspice = "XVIIx64.exe"
# start the simulation
- gen = executor.ish_exec('%s -Run "%s"' % (ltspice, asc), SIM_LOG, MAX_TIMEOUT=300, NOERR=True)
+ gen = executor.ish_exec(
+ '%s -Run "%s"' % (ltspice, asc), SIM_LOG, MAX_TIMEOUT=300, NOERR=True
+ )
proc = next(gen)
# watch the log file to determine when
# the simulation ends
diff --git a/analog/tools/parsers/ltspice_raw.py b/analog/tools/parsers/ltspice_raw.py
index 064df91..68cb4ce 100755
--- a/analog/tools/parsers/ltspice_raw.py
+++ b/analog/tools/parsers/ltspice_raw.py
@@ -13,6 +13,7 @@
sys.path.append(os.environ["REFLOW"])
+import common.utils as utils
import common.relog as relog
@@ -46,11 +47,13 @@ def load_raw(filename):
Returns
dict with structure described above.
"""
+ filename = utils.normpath(filename)
if not filename.endswith(".raw"):
for raw in Path(filename).rglob("**/*.raw"):
if not ".op.raw" in str(raw):
filename = str(raw)
break
+ filename = utils.normpath(filename)
print(filename)
ret, header = {}, []
mode, data, time = None, None, None
diff --git a/common/templates/report.html.mako b/common/templates/report.html.mako
index 85fab40..95753cf 100644
--- a/common/templates/report.html.mako
+++ b/common/templates/report.html.mako
@@ -187,7 +187,7 @@ def get_block_name(block: dict):
${lint.get("name")} |
${"%d" % lint.get("warnings")} |
${"%d" % lint.get("errors")} |
- ${lint.get("total_time")} |
+ ${to_time(lint.get("total_time"))} |
% endfor
diff --git a/envs/bin/create b/envs/bin/create
index 3f271be..63662c2 100755
--- a/envs/bin/create
+++ b/envs/bin/create
@@ -76,7 +76,7 @@ def update_active(env_dir: str = "./"):
[
"# Add base path of ReFlow\n",
'$env:REFLOW = "%s"\n' % REFLOW_DIR,
- '$env:PATH = "%s:" + $env:PATH\n' % REFLOW_BIN,
+ '$env:PATH = "%s;" + $env:PATH\n' % REFLOW_BIN,
"Function reflow_run {python '%s' @args}\n"
% os.path.join(REFLOW_BIN, "run"),
"Function reflow_create {python '%s' @args}\n"
diff --git a/envs/bin/run b/envs/bin/run
index e9a5504..af7e8d1 100755
--- a/envs/bin/run
+++ b/envs/bin/run
@@ -124,7 +124,8 @@ if __name__ == "__main__":
if not any(dict(args._get_kwargs()).values()):
parser.print_help()
exit(0)
-
+ # execution path
+ CURRENT_DIR = utils.normpath(CURRENT_DIR)
# the default configuration
default_config = utils.normpath(os.path.join(REFLOW_DIR, "./default.config"))
# load a local configuration if there is one
diff --git a/tests/.tmp_report/report.html b/tests/.tmp_report/report.html
index 30646bd..934d4e8 100644
--- a/tests/.tmp_report/report.html
+++ b/tests/.tmp_report/report.html
@@ -1,705 +1,705 @@
-
-
-
-
-
-
-
-
-
-
-
- tests
- Thursday, 06. August 2020 17:44
-
- Errors:335
-
- Warnings:2
-
- Elapsed Time:15.993s
-
-
-
-
-
- name |
- lint |
- simulation |
- coverage |
- total time |
-
-
-
-
-
- analog
-
- |
- - |
- 4/4 |
- - |
- 5.494s |
-
-
-
-
- batch
-
- |
- 6/6 |
- 8/8 |
- 0/6 |
- 0.541s |
-
-
-
-
- digital
-
- |
- 9/9 |
- 11/11 |
- 2/9 |
- 3.217s |
-
-
-
-
- ltspice
-
- |
- - |
- 4/4 |
- - |
- 5.494s |
-
-
-
-
- others
-
- |
- - |
- - |
- - |
- - |
-
-
-
-
- testcases
-
- |
- - |
- 1/4 |
- - |
- 1.247s |
-
-
-
-
-
-
- analog
-
- Lint
- No lints
-
- Simulation
-
-
- id |
- warnings |
- errors |
- total time |
-
-
-
- xor |
- 0 |
- 0 |
- 1.361s |
-
-
- schmitt |
- 0 |
- 0 |
- 1.19s |
-
-
- ota |
- 0 |
- 0 |
- 1.12s |
-
-
- filter |
- 0 |
- 0 |
- 2.102s |
-
-
-
-
- Code coverage
- No coverage simulations
-
-
-
- batch
-
- Lint
-
-
- id |
- warnings |
- errors |
- total time |
-
-
-
- s2 |
- 0 |
- 0 |
- 20.0 |
-
-
- youpi |
- 0 |
- 0 |
- 20.0 |
-
-
- fast_clock |
- 0 |
- 0 |
- 20.0 |
-
-
- tb |
- 0 |
- 0 |
- 25.0 |
-
-
- s |
- 0 |
- 0 |
- 18.0 |
-
-
- UFC |
- 0 |
- 0 |
- 28.0 |
-
-
-
-
- Simulation
-
-
- id |
- warnings |
- errors |
- total time |
-
-
-
- s2 |
- 0 |
- 0 |
- 0.30s |
-
-
- youpi |
- 0 |
- 0 |
- 0.30s |
-
-
- fast_clock |
- 0 |
- 0 |
- 0.38s |
-
-
- tb |
- 0 |
- 0 |
- 0.30s |
-
-
- n |
- 0 |
- 0 |
- 0.32s |
-
-
- s |
- 0 |
- 0 |
- 0.31s |
-
-
- n2 |
- 0 |
- 0 |
- 0.31s |
-
-
- UFC |
- 0 |
- 0 |
- 0.31s |
-
-
-
-
- Code coverage
-
-
- id |
- warnings |
- errors |
- total time |
-
-
-
- s2 |
- 0 |
- 15 |
- 0.26s |
-
-
- youpi |
- 0 |
- 15 |
- 0.26s |
-
-
- fast_clock |
- 0 |
- 15 |
- 0.28s |
-
-
- tb |
- 0 |
- 15 |
- 0.25s |
-
-
- s |
- 0 |
- 15 |
- 0.26s |
-
-
- UFC |
- 0 |
- 15 |
- 0.26s |
-
-
-
-
-
-
- digital
-
- Lint
-
-
- id |
- warnings |
- errors |
- total time |
-
-
-
- s2 |
- 0 |
- 0 |
- 20.0 |
-
-
- youpi |
- 0 |
- 0 |
- 20.0 |
-
-
- fast_clock |
- 0 |
- 0 |
- 20.0 |
-
-
- tb |
- 0 |
- 0 |
- 25.0 |
-
-
- s |
- 0 |
- 0 |
- 18.0 |
-
-
- UFC |
- 0 |
- 0 |
- 28.0 |
-
-
- mako |
- 0 |
- 0 |
- 28.0 |
-
-
- generic_sar |
- 0 |
- 0 |
- 24.0 |
-
-
- simple |
- 0 |
- 0 |
- 18.0 |
-
-
-
-
- Simulation
-
-
- id |
- warnings |
- errors |
- total time |
-
-
-
- s2 |
- 0 |
- 0 |
- 0.30s |
-
-
- youpi |
- 0 |
- 0 |
- 0.30s |
-
-
- fast_clock |
- 0 |
- 0 |
- 0.38s |
-
-
- tb |
- 0 |
- 0 |
- 0.30s |
-
-
- n |
- 0 |
- 0 |
- 0.32s |
-
-
- s |
- 0 |
- 0 |
- 0.31s |
-
-
- n2 |
- 0 |
- 0 |
- 0.31s |
-
-
- UFC |
- 0 |
- 0 |
- 0.31s |
-
-
- mako |
- 1 |
- 0 |
- 1.254s |
-
-
- generic_sar |
- 1 |
- 0 |
- 1.230s |
-
-
- simple |
- 0 |
- 0 |
- 0.29s |
-
-
-
-
- Code coverage
-
-
- id |
- warnings |
- errors |
- total time |
-
-
-
- s2 |
- 0 |
- 15 |
- 0.26s |
-
-
- youpi |
- 0 |
- 15 |
- 0.26s |
-
-
- fast_clock |
- 0 |
- 15 |
- 0.28s |
-
-
- tb |
- 0 |
- 15 |
- 0.25s |
-
-
- s |
- 0 |
- 15 |
- 0.26s |
-
-
- UFC |
- 0 |
- 15 |
- 0.26s |
-
-
- mako |
- 0 |
- 1 |
- 0.32s |
-
-
- generic_sar |
- 0 |
- 0 |
- 0.32s |
-
-
- simple |
- 0 |
- 0 |
- 0.29s |
-
-
-
-
-
-
- ltspice
-
- Lint
- No lints
-
- Simulation
-
-
- id |
- warnings |
- errors |
- total time |
-
-
-
- xor |
- 0 |
- 0 |
- 1.361s |
-
-
- schmitt |
- 0 |
- 0 |
- 1.19s |
-
-
- ota |
- 0 |
- 0 |
- 1.12s |
-
-
- filter |
- 0 |
- 0 |
- 2.102s |
-
-
-
-
- Code coverage
- No coverage simulations
-
-
-
- others
-
- Lint
- No lints
-
- Simulation
- No simulations
-
- Code coverage
- No coverage simulations
-
-
-
- testcases
-
- Lint
- No lints
-
- Simulation
-
-
- id |
- warnings |
- errors |
- total time |
-
-
-
- 50meg |
- 0 |
- 2 |
- 0.310s |
-
-
- 60meg |
- 0 |
- 4 |
- 0.317s |
-
-
- 100meg |
- 0 |
- 148 |
- 0.307s |
-
-
- 32meg |
- 0 |
- 0 |
- 0.313s |
-
-
-
-
- Code coverage
- No coverage simulations
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+ tests
+ Monday, 14. September 2020 20:38
+
+ Errors:154
+
+ Warnings:2
+
+ Elapsed Time:28.335s
+
+
+
+
+
+ name |
+ lint |
+ simulation |
+ coverage |
+ total time |
+
+
+
+
+
+ analog
+
+ |
+ - |
+ 4/4 |
+ - |
+ 9.417s |
+
+
+
+
+ batch
+
+ |
+ 6/6 |
+ 8/8 |
+ 6/6 |
+ 1.268s |
+
+
+
+
+ digital
+
+ |
+ 9/9 |
+ 11/11 |
+ 9/9 |
+ 5.570s |
+
+
+
+
+ ltspice
+
+ |
+ - |
+ 4/4 |
+ - |
+ 9.417s |
+
+
+
+
+ others
+
+ |
+ - |
+ - |
+ - |
+ - |
+
+
+
+
+ testcases
+
+ |
+ - |
+ 1/4 |
+ - |
+ 2.663s |
+
+
+
+
+
+
+ analog
+
+ Lint
+ No lints
+
+ Simulation
+
+
+ id |
+ warnings |
+ errors |
+ total time |
+
+
+
+ filter |
+ 0 |
+ 0 |
+ 2.871s |
+
+
+ ota |
+ 0 |
+ 0 |
+ 2.21s |
+
+
+ schmitt |
+ 0 |
+ 0 |
+ 2.51s |
+
+
+ xor |
+ 0 |
+ 0 |
+ 2.474s |
+
+
+
+
+ Code coverage
+ No coverage simulations
+
+
+
+ batch
+
+ Lint
+
+
+ id |
+ warnings |
+ errors |
+ total time |
+
+
+
+ fast_clock |
+ 0 |
+ 0 |
+ 0.58s |
+
+
+ s |
+ 0 |
+ 0 |
+ 0.62s |
+
+
+ s2 |
+ 0 |
+ 0 |
+ 0.79s |
+
+
+ tb |
+ 0 |
+ 0 |
+ 0.94s |
+
+
+ UFC |
+ 0 |
+ 0 |
+ 0.65s |
+
+
+ youpi |
+ 0 |
+ 0 |
+ 0.75s |
+
+
+
+
+ Simulation
+
+
+ id |
+ warnings |
+ errors |
+ total time |
+
+
+
+ fast_clock |
+ 0 |
+ 0 |
+ 0.82s |
+
+
+ n |
+ 0 |
+ 0 |
+ 0.93s |
+
+
+ n2 |
+ 0 |
+ 0 |
+ 0.69s |
+
+
+ s |
+ 0 |
+ 0 |
+ 0.82s |
+
+
+ s2 |
+ 0 |
+ 0 |
+ 0.83s |
+
+
+ tb |
+ 0 |
+ 0 |
+ 0.109s |
+
+
+ UFC |
+ 0 |
+ 0 |
+ 0.77s |
+
+
+ youpi |
+ 0 |
+ 0 |
+ 0.128s |
+
+
+
+
+ Code coverage
+
+
+ id |
+ warnings |
+ errors |
+ total time |
+
+
+
+ fast_clock |
+ 0 |
+ 0 |
+ 0.15s |
+
+
+ s |
+ 0 |
+ 0 |
+ 0.16s |
+
+
+ s2 |
+ 0 |
+ 0 |
+ 0.15s |
+
+
+ tb |
+ 0 |
+ 0 |
+ 0.17s |
+
+
+ UFC |
+ 0 |
+ 0 |
+ 0.31s |
+
+
+ youpi |
+ 0 |
+ 0 |
+ 0.18s |
+
+
+
+
+
+
+ digital
+
+ Lint
+
+
+ id |
+ warnings |
+ errors |
+ total time |
+
+
+
+ simple |
+ 0 |
+ 0 |
+ 0.84s |
+
+
+ generic_sar |
+ 0 |
+ 0 |
+ 0.53s |
+
+
+ mako |
+ 0 |
+ 0 |
+ 0.78s |
+
+
+ fast_clock |
+ 0 |
+ 0 |
+ 0.58s |
+
+
+ s |
+ 0 |
+ 0 |
+ 0.62s |
+
+
+ s2 |
+ 0 |
+ 0 |
+ 0.79s |
+
+
+ tb |
+ 0 |
+ 0 |
+ 0.94s |
+
+
+ UFC |
+ 0 |
+ 0 |
+ 0.65s |
+
+
+ youpi |
+ 0 |
+ 0 |
+ 0.75s |
+
+
+
+
+ Simulation
+
+
+ id |
+ warnings |
+ errors |
+ total time |
+
+
+
+ simple |
+ 0 |
+ 0 |
+ 0.197s |
+
+
+ generic_sar |
+ 1 |
+ 0 |
+ 1.979s |
+
+
+ mako |
+ 1 |
+ 0 |
+ 1.813s |
+
+
+ fast_clock |
+ 0 |
+ 0 |
+ 0.82s |
+
+
+ n |
+ 0 |
+ 0 |
+ 0.93s |
+
+
+ n2 |
+ 0 |
+ 0 |
+ 0.69s |
+
+
+ s |
+ 0 |
+ 0 |
+ 0.82s |
+
+
+ s2 |
+ 0 |
+ 0 |
+ 0.83s |
+
+
+ tb |
+ 0 |
+ 0 |
+ 0.109s |
+
+
+ UFC |
+ 0 |
+ 0 |
+ 0.77s |
+
+
+ youpi |
+ 0 |
+ 0 |
+ 0.128s |
+
+
+
+
+ Code coverage
+
+
+ id |
+ warnings |
+ errors |
+ total time |
+
+
+
+ simple |
+ 0 |
+ 0 |
+ 0.31s |
+
+
+ generic_sar |
+ 0 |
+ 0 |
+ 0.52s |
+
+
+ mako |
+ 0 |
+ 0 |
+ 0.15s |
+
+
+ fast_clock |
+ 0 |
+ 0 |
+ 0.15s |
+
+
+ s |
+ 0 |
+ 0 |
+ 0.16s |
+
+
+ s2 |
+ 0 |
+ 0 |
+ 0.15s |
+
+
+ tb |
+ 0 |
+ 0 |
+ 0.17s |
+
+
+ UFC |
+ 0 |
+ 0 |
+ 0.31s |
+
+
+ youpi |
+ 0 |
+ 0 |
+ 0.18s |
+
+
+
+
+
+
+ ltspice
+
+ Lint
+ No lints
+
+ Simulation
+
+
+ id |
+ warnings |
+ errors |
+ total time |
+
+
+
+ filter |
+ 0 |
+ 0 |
+ 2.871s |
+
+
+ ota |
+ 0 |
+ 0 |
+ 2.21s |
+
+
+ schmitt |
+ 0 |
+ 0 |
+ 2.51s |
+
+
+ xor |
+ 0 |
+ 0 |
+ 2.474s |
+
+
+
+
+ Code coverage
+ No coverage simulations
+
+
+
+ others
+
+ Lint
+ No lints
+
+ Simulation
+ No simulations
+
+ Code coverage
+ No coverage simulations
+
+
+
+ testcases
+
+ Lint
+ No lints
+
+ Simulation
+
+
+ id |
+ warnings |
+ errors |
+ total time |
+
+
+
+ 100meg |
+ 0 |
+ 148 |
+ 0.695s |
+
+
+ 32meg |
+ 0 |
+ 0 |
+ 0.728s |
+
+
+ 50meg |
+ 0 |
+ 2 |
+ 0.603s |
+
+
+ 60meg |
+ 0 |
+ 4 |
+ 0.637s |
+
+
+
+
+ Code coverage
+ No coverage simulations
+
+
+
\ No newline at end of file