Skip to content

Commit e240af3

Browse files
committed
Merge pull request #735 from Systems-Modeling/ST6RI-903
ST6RI-903 Comment.getLocale() returns a quoted locale name
2 parents 05b77b2 + 15ad497 commit e240af3

2 files changed

Lines changed: 22 additions & 0 deletions

File tree

org.omg.sysml.interactive.tests/src/org/omg/sysml/interactive/tests/DerivedPropertyAndOperationTest.java

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,9 @@
3535
import org.omg.sysml.lang.sysml.AcceptActionUsage;
3636
import org.omg.sysml.lang.sysml.ActionUsage;
3737
import org.omg.sysml.lang.sysml.AttributeUsage;
38+
import org.omg.sysml.lang.sysml.Comment;
3839
import org.omg.sysml.lang.sysml.Definition;
40+
import org.omg.sysml.lang.sysml.Documentation;
3941
import org.omg.sysml.lang.sysml.Element;
4042
import org.omg.sysml.lang.sysml.EnumerationDefinition;
4143
import org.omg.sysml.lang.sysml.EnumerationUsage;
@@ -330,4 +332,23 @@ public void testCircularRecursiveImport() throws Exception {
330332
assertArrayEquals("P2.importedMembers", new String[] {"P1", "P2", "X", "Test", "Y"},
331333
importedMemberships.stream().map(Membership::getMemberElement).map(Element::getName).toArray());
332334
}
335+
336+
public final String localeTest =
337+
"package Test {\n"
338+
+ " comment locale \"en_US\" /* doc */\n"
339+
+ " doc locale \"en_US\" /* doc */\\n"
340+
+ "}";
341+
342+
@Test
343+
public void testLocale() throws Exception {
344+
SysMLInteractive instance = getSysMLInteractiveInstance();
345+
SysMLInteractiveResult result = instance.process(localeTest);
346+
Element root = result.getRootElement();
347+
List<Element> elements = ((Namespace)root).getOwnedMember();
348+
List<Element> ownedMembers = ((Namespace)elements.get(0)).getOwnedMember();
349+
Comment comment = (Comment)ownedMembers.get(0);
350+
Documentation doc = (Documentation)ownedMembers.get(1);
351+
assertEquals("comment.locale", "en_US", comment.getLocale());
352+
assertEquals("doc.locale", "en_US", doc.getLocale());
353+
}
333354
}

org.omg.sysml/src/org/omg/sysml/adapter/CommentAdapter.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ public Comment getTarget() {
3737
public void postProcess() {
3838
super.postProcess();
3939
Comment target = getTarget();
40+
target.setLocale(ElementUtil.unescapeString(target.getLocale()));
4041
target.setBody(ElementUtil.processCommentBody(target.getBody()));
4142
}
4243
}

0 commit comments

Comments
 (0)