Skip to content

Commit

Permalink
add SNode read access tests to ModuleTestSuite
Browse files Browse the repository at this point in the history
  • Loading branch information
victor-matchenko committed Oct 9, 2012
1 parent 48f946b commit 6fa4651
Show file tree
Hide file tree
Showing 18 changed files with 6,659 additions and 9 deletions.
1 change: 1 addition & 0 deletions MPS.mpr
Expand Up @@ -414,6 +414,7 @@
<modulePath path="${project}/testbench/modules/testAntTask/solutions/testAntTask/testAntTask.msd" folder="testbench" />
<modulePath path="${project}/testbench/modules/testMake/solutions/jetbrains.mps.makeTest/jetbrains.mps.makeTest.msd" folder="core.make" />
<modulePath path="${project}/testbench/modules/testMake/solutions/jetbrains.mps.testModels/jetbrains.mps.testModels.msd" folder="testbench" />
<modulePath path="${project}/testbench/modules/testRead/testRead.msd" folder="testbench" />
<modulePath path="${project}/testbench/modules/testRefactoring/languages/testRefactoring/testRefactoring.mpl" folder="test" />
<modulePath path="${project}/testbench/modules/testRefactoring/languages/testRefactoringTargetLang/testRefactoringTargetLang.mpl" folder="test" />
<modulePath path="${project}/testbench/modules/testRefactoring/solutions/testRefactoring.sandbox/testRefactoring.sandbox.msd" folder="testbench" />
Expand Down
6 changes: 6 additions & 0 deletions core/kernel/source/jetbrains/mps/smodel/SNode.java
Expand Up @@ -150,6 +150,9 @@ public void setProperty(final String propertyName, String propertyValue) {
}

public void visitProperties(PropertyVisitor v) {
ModelAccess.assertLegalRead(this);
fireNodeReadAccess();

if (myProperties == null) return;
for (int i = 0; i < myProperties.length; i += 2) {
v.visitProperty(myProperties[i], myProperties[i + 1]);
Expand Down Expand Up @@ -345,6 +348,9 @@ public void setReference(String role, @Nullable org.jetbrains.mps.openapi.model.
}

public void visitReferences(ReferenceVisitor v) {
ModelAccess.assertLegalRead(this);
fireNodeReadAccess();

if (myReferences == null) return;
for (SReference ref : myReferences) {
v.visitReference(ref.getRole(), ref);
Expand Down
98 changes: 98 additions & 0 deletions testbench/modules/testRead/SNodeContract.xml
@@ -0,0 +1,98 @@
<?xml version="1.0" encoding="UTF-8"?>
<java version="1.6.0_35" class="java.beans.XMLDecoder">
<object class="java.util.HashSet">
<void method="add">
<string>public abstract java.lang.Object org.jetbrains.mps.openapi.model.SNode.getUserObject(java.lang.Object)</string>
</void>
<void method="add">
<string>public abstract void org.jetbrains.mps.openapi.model.SNode.setReferenceTarget(java.lang.String,org.jetbrains.mps.openapi.model.SNode)</string>
</void>
<void method="add">
<string>public abstract void org.jetbrains.mps.openapi.model.SNode.visitChildren(org.jetbrains.mps.openapi.model.SNode$ChildVisitor)</string>
</void>
<void method="add">
<string>public abstract java.lang.String org.jetbrains.mps.openapi.model.SNode.getName()</string>
</void>
<void method="add">
<string>public abstract java.lang.Iterable&lt;? extends org.jetbrains.mps.openapi.model.SNode&gt; org.jetbrains.mps.openapi.model.SNode.getChildren(java.lang.String)</string>
</void>
<void method="add">
<string>public abstract java.lang.String org.jetbrains.mps.openapi.model.SNode.getPresentation()</string>
</void>
<void method="add">
<string>public abstract void org.jetbrains.mps.openapi.model.SNode.insertChild(java.lang.String,org.jetbrains.mps.openapi.model.SNode,org.jetbrains.mps.openapi.model.SNode)</string>
</void>
<void method="add">
<string>public abstract java.lang.String org.jetbrains.mps.openapi.model.SNode.getProperty(java.lang.String)</string>
</void>
<void method="add">
<string>public abstract java.lang.String org.jetbrains.mps.openapi.model.SNode.getRoleOf(org.jetbrains.mps.openapi.model.SNode)</string>
</void>
<void method="add">
<string>public abstract org.jetbrains.mps.openapi.model.SNode org.jetbrains.mps.openapi.model.SNode.getTopmostAncestor()</string>
</void>
<void method="add">
<string>public abstract org.jetbrains.mps.openapi.model.SReference org.jetbrains.mps.openapi.model.SNode.getReference(java.lang.String)</string>
</void>
<void method="add">
<string>public abstract org.jetbrains.mps.openapi.model.SNode org.jetbrains.mps.openapi.model.SNode.getReferenceTarget(java.lang.String)</string>
</void>
<void method="add">
<string>public abstract void org.jetbrains.mps.openapi.model.SNode.delete()</string>
</void>
<void method="add">
<string>public abstract org.jetbrains.mps.openapi.model.SNode org.jetbrains.mps.openapi.model.SNode.getParent()</string>
</void>
<void method="add">
<string>public abstract org.jetbrains.mps.openapi.language.SConcept org.jetbrains.mps.openapi.model.SNode.getConcept()</string>
</void>
<void method="add">
<string>public abstract void org.jetbrains.mps.openapi.model.SNode.setProperty(java.lang.String,java.lang.String)</string>
</void>
<void method="add">
<string>public abstract org.jetbrains.mps.openapi.model.SNode org.jetbrains.mps.openapi.model.SNode.getPrevChild(org.jetbrains.mps.openapi.model.SNode)</string>
</void>
<void method="add">
<string>public abstract void org.jetbrains.mps.openapi.model.SNode.putUserObject(java.lang.Object,java.lang.Object)</string>
</void>
<void method="add">
<string>public abstract void org.jetbrains.mps.openapi.model.SNode.removeChild(org.jetbrains.mps.openapi.model.SNode)</string>
</void>
<void method="add">
<string>public abstract void org.jetbrains.mps.openapi.model.SNode.visitProperties(org.jetbrains.mps.openapi.model.SNode$PropertyVisitor)</string>
</void>
<void method="add">
<string>public abstract void org.jetbrains.mps.openapi.model.SNode.visitUserObjects(org.jetbrains.mps.openapi.model.SNode$UserObjectVisitor)</string>
</void>
<void method="add">
<string>public abstract void org.jetbrains.mps.openapi.model.SNode.visitReferences(org.jetbrains.mps.openapi.model.SNode$ReferenceVisitor)</string>
</void>
<void method="add">
<string>public abstract org.jetbrains.mps.openapi.model.SNode org.jetbrains.mps.openapi.model.SNode.getNextChild(org.jetbrains.mps.openapi.model.SNode)</string>
</void>
<void method="add">
<string>public abstract boolean org.jetbrains.mps.openapi.model.SNode.hasProperty(java.lang.String)</string>
</void>
<void method="add">
<string>public abstract void org.jetbrains.mps.openapi.model.SNode.addChild(java.lang.String,org.jetbrains.mps.openapi.model.SNode)</string>
</void>
<void method="add">
<string>public abstract java.lang.Iterable&lt;? extends org.jetbrains.mps.openapi.model.SReference&gt; org.jetbrains.mps.openapi.model.SNode.getReferences()</string>
</void>
<void method="add">
<string>public abstract org.jetbrains.mps.openapi.model.SNodeId org.jetbrains.mps.openapi.model.SNode.getSNodeId()</string>
</void>
<void method="add">
<string>public abstract org.jetbrains.mps.openapi.model.SNodeReference org.jetbrains.mps.openapi.model.SNode.getReference()</string>
</void>
<void method="add">
<string>public abstract java.lang.Iterable&lt;? extends org.jetbrains.mps.openapi.model.SNode&gt; org.jetbrains.mps.openapi.model.SNode.getChildren()</string>
</void>
<void method="add">
<string>public abstract org.jetbrains.mps.openapi.model.SModel org.jetbrains.mps.openapi.model.SNode.getContainingModel()</string>
</void>
<void method="add">
<string>public abstract void org.jetbrains.mps.openapi.model.SNode.setReference(java.lang.String,org.jetbrains.mps.openapi.model.SReference)</string>
</void>
</object>
</java>

0 comments on commit 6fa4651

Please sign in to comment.