• R/O
  • SSH

Commit

Tags
No Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

Castle: The best Real-Time/Embedded/HighTech language EVER. Attempt 2


Commit MetaInfo

Revisionc51a7a805905f3a9db7f73639668f85e092db2e9 (tree)
Time2023-02-07 06:31:23
AuthorAlbert Mietus < albert AT mietus DOT nl >
CommiterAlbert Mietus < albert AT mietus DOT nl >

Log Message

(asis) added all test for ComponentInterface

Change Summary

Incremental Difference

diff -r 5259c3022adc -r c51a7a805905 castle/writers/CC2Cpy/Component.py
--- a/castle/writers/CC2Cpy/Component.py Mon Feb 06 21:34:34 2023 +0100
+++ b/castle/writers/CC2Cpy/Component.py Mon Feb 06 22:31:23 2023 +0100
@@ -82,7 +82,7 @@
8282 retval.append(f'{prepend}{indent}.ports = {{')
8383 start_port_no = self.no_of_ports(inherited=True, mine=False) # pragma: no mutate on inherited/mine
8484 for no,port in enumerate(self.ports, start_port_no): # Loop over 'own' ports
85- retval.append(f'{prepend}{(indent*3)[:-2]}{{')
85+ retval.append(f'{prepend}{indent*2}{{')
8686 retval.append(f'{prepend}{indent*3}.portNo = {no},')
8787 retval.append(f'{prepend}{indent*3}.protocol = {port.portray_typePtr()},')
8888 retval.append(f'{prepend}{indent*3}.direction = {port.direction.portray_name()},')
diff -r 5259c3022adc -r c51a7a805905 pytst/writers/CC2Cpy/test_3b_CompInterface.py
--- a/pytst/writers/CC2Cpy/test_3b_CompInterface.py Mon Feb 06 21:34:34 2023 +0100
+++ b/pytst/writers/CC2Cpy/test_3b_CompInterface.py Mon Feb 06 22:31:23 2023 +0100
@@ -55,7 +55,7 @@
5555 .direction = CC_B_PortDirectionIs_UNKNOWN,
5656 .name = "jap2",
5757 .part_of = &cc_CI_demo2Comp },
58- },
58+ },
5959 } ;
6060 """
6161
@@ -118,3 +118,26 @@
118118
119119 def test_2d_render_withPorts(demo2Comp):
120120 assert CCompare(ref_demo2Comp, demo2Comp.render())
121+
122+def verify_indent(ref, comp): # indent can be used several times ...
123+ try_indent="_-|"
124+ out = comp.render(indent=try_indent, prepend="")
125+ logger.info("ComponentInterface %s results in::\n%s", comp.name, out)
126+
127+ for ref_line,out_line in zip(ref.splitlines(), out.splitlines()):
128+ ref_indents = len(ref_line)-len(ref_line.lstrip(' '))
129+ logger.debug("ref_line: %s", ref_line); logger.debug("out_line: %s", out_line)
130+
131+ assert out_line[:len(try_indent)*ref_indents] == try_indent*ref_indents
132+ if ref_indents >0:
133+ without_pref = out_line[len(try_indent*ref_indents):]
134+ assert without_pref[0:len(try_indent)] != try_indent
135+
136+def test_3a_indent_empty(emptyComp):
137+ verify_indent(ref_emptyComp, emptyComp)
138+
139+def test_3b_indent_demo(demo2Comp):
140+ verify_indent(ref_demo2Comp, demo2Comp)
141+
142+def test_3c_indent_sub(subComp):
143+ verify_indent(ref_subComp, subComp)