Add verbose flag, WireViz dev dep, and rendered diagram examples
- Gate model/value heuristic output behind --verbose/-v flag (quiet by default) - Add wireviz>=0.4 as dev dependency for roundtrip render tests - Generate SVG/PNG diagram renders for inter_module, single_module, hierarchical - Embed rendered diagrams in README with layout optimization callout
This commit is contained in:
parent
fd822e07ce
commit
95ed08866c
9 changed files with 425 additions and 14 deletions
|
|
@ -209,16 +209,41 @@ X1 NET1 NET2 NET3 NET4 small
|
|||
assert "extra nodes" in captured.err
|
||||
|
||||
def test_model_value_heuristic_warning(self, capsys):
|
||||
"""I6: The model/value heuristic should warn when it triggers."""
|
||||
text = """\
|
||||
"""I6: The model/value heuristic should warn when verbose is on."""
|
||||
from spice2wireviz.parser import netlist as netlist_module
|
||||
|
||||
original = netlist_module.verbose
|
||||
try:
|
||||
netlist_module.verbose = True
|
||||
text = """\
|
||||
.subckt test A B
|
||||
J1 A B SOME_MODEL
|
||||
.ends test
|
||||
"""
|
||||
parse_netlist(text)
|
||||
captured = capsys.readouterr()
|
||||
assert "SOME_MODEL" in captured.err
|
||||
assert "model/value" in captured.err
|
||||
parse_netlist(text)
|
||||
captured = capsys.readouterr()
|
||||
assert "SOME_MODEL" in captured.err
|
||||
assert "model/value" in captured.err
|
||||
finally:
|
||||
netlist_module.verbose = original
|
||||
|
||||
def test_model_value_heuristic_quiet_by_default(self, capsys):
|
||||
"""The model/value heuristic should be silent when verbose is off."""
|
||||
from spice2wireviz.parser import netlist as netlist_module
|
||||
|
||||
original = netlist_module.verbose
|
||||
try:
|
||||
netlist_module.verbose = False
|
||||
text = """\
|
||||
.subckt test A B
|
||||
J1 A B SOME_MODEL
|
||||
.ends test
|
||||
"""
|
||||
parse_netlist(text)
|
||||
captured = capsys.readouterr()
|
||||
assert "model/value" not in captured.err
|
||||
finally:
|
||||
netlist_module.verbose = original
|
||||
|
||||
def test_duplicate_refs_both_parsed(self):
|
||||
"""S3: Duplicate reference designators should both be parsed."""
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue