Skip to content

Commit 114ffac

Browse files
authored
Merge pull request #16 from dotnetprojects/complSign
bugfix constants
2 parents 49db7e4 + 432f77f commit 114ffac

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

TiaCodeGen.Tests/SampleTests.cs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -358,5 +358,15 @@ public void ComplexVariableAccessTest2()
358358
var xml = sb.ToString();
359359
Assert.AreEqual("<Access Scope=\"LocalVariable\" UId=\"1\">\r\n<Symbol>\r\n<Component Name=\"A\">\r\n</Component>\r\n<Component Name=\"B\">\r\n</Component>\r\n<Component Name=\"C\">\r\n<Access Scope=\"LocalVariable\">\r\n<Symbol>\r\n<Component Name=\"D\" />\r\n<Component Name=\"E\" />\r\n<Component Name=\"F\" />\r\n</Symbol>\r\n</Access>\r\n<Access Scope=\"LocalVariable\">\r\n<Symbol>\r\n<Component Name=\"G\" />\r\n<Component Name=\"H\" />\r\n<Component Name=\"I\" />\r\n</Symbol>\r\n</Access>\r\n</Component>\r\n</Symbol>\r\n</Access>\r\n".Replace("\n", "").Replace("\r", ""), xml.Replace("\n", "").Replace("\r", ""));
360360
}
361+
362+
[Test]
363+
public void TestConstant()
364+
{
365+
var sb = new StringBuilder();
366+
var s = new Signal("AAA", SignalType.Constant);
367+
s.AddXmlToStringBuilder(1, sb);
368+
var xml = sb.ToString();
369+
Assert.AreEqual("<Access Scope=\"GlobalConstant\" UId=\"1\">\r\n<Constant Name=\"AAA\">\r\n</Constant>\r\n</Access>\r\n".Replace("\n", "").Replace("\r", ""), xml.Replace("\n", "").Replace("\r", ""));
370+
}
361371
}
362372
}

TiaCodegen/Commands/Signals/Signal.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,10 @@ public void AddXmlToStringBuilder(ulong id, StringBuilder sb)
102102
{
103103
var value = Name.IndexOf(",");
104104
sb.AppendLine("<Access Scope=\"GlobalConstant\" UId=\"" + id + "\">");
105-
sb.AppendLine("<Constant Name=\"" + Name.Substring(0, value) + "\">");
105+
if (value == -1)
106+
sb.AppendLine("<Constant Name=\"" + Name + "\">");
107+
else
108+
sb.AppendLine("<Constant Name=\"" + Name.Substring(0, value) + "\">");
106109
sb.AppendLine("</Constant>");
107110
sb.AppendLine("</Access>");
108111
}

0 commit comments

Comments
 (0)