--- /dev/null
+L0 = <http://www.simantics.org/Layer0-1.1>
+TESTS = <http://www.simantics.org/Tests-1.0>
+VP = <http://www.simantics.org/Viewpoint-1.2>
+PROJECT = <http://www.simantics.org/Project-1.2>
+MOD = <http://www.simantics.org/Modeling-1.2>
+SILK = <http://www.simantics.org/Silk-1.1>
+IMAGE = <http://www.simantics.org/Image2-1.2>
+
+TestsUI = <http://www.simantics.org/TestsUI-1.0> : L0.Ontology
+ @L0.new
+ L0.HasResourceClass "org.simantics.tests.modelled.ui.ontology.TestsUIResource"
+
+TestsUI.SCLMain : L0.SCLModule
+ L0.SCLModule.definition _ : L0.String
+ @L0.loadString "scl/SCLMain.scl"
+
+TestsUI.testImage : IMAGE.PngImage
+ @L0.loadBytes "images/test.png"
+
+TestsUI.testSuiteImage : IMAGE.PngImage
+ @L0.loadBytes "images/tsuite.png"
+
+// Library containing all testing viewpoint contributions
+TestsUI.Contributions : L0.Library
+
+
+MBC = TestsUI.BrowseContext : VP.BrowseContext
+ VP.BrowseContext.IsIncludedIn PROJECT.ProjectBrowseContext
+
+MBC
+ @VP.namedRelationChildRule TestsUI.Contributions.STSSuites L0.Entity L0.ConsistsOf TESTS.STSSuite
+ @VP.namedConstantImageRule TestsUI.Contributions.ModuleImage TESTS.STSSuite TestsUI.testSuiteImage
+ @VP.namedRelationChildRule TestsUI.Contributions.STSTests L0.Entity L0.ConsistsOf TESTS.STSTest
+ @VP.namedConstantImageRule TestsUI.Contributions.ModuleImage TESTS.STSTest TestsUI.testImage
+
+MAC = TestsUI.ModelingActionContext : VP.BrowseContext
+ VP.BrowseContext.IsIncludedIn PROJECT.ProjectActionContext
+
+ACTIONS = MAC.Actions : L0.Library
+
+ACTIONS.NewSTSSuite
+ @MOD.sclAction "createSTSSuiteAction"
+ACTIONS.NewSTSTest
+ @MOD.sclAction "createSTSTestAction"
+ACTIONS.RunSTSTest
+ @MOD.sclAction "runSTSTestAction"
+
+MAC
+ VP.BrowseContext.HasActionContribution TestsUI.Contributions.NewSTSSuite : VP.ActionContribution
+ L0.HasLabel "STS Suite"
+ VP.ActionContribution.HasImage TestsUI.testSuiteImage
+ VP.ActionContribution.HasCategory VP.NewActionCategory
+ VP.ActionContribution.HasNodeType
+ L0.Library
+ VP.ActionContribution.HasAction ACTIONS.NewSTSSuite
+ VP.BrowseContext.HasActionContribution TestsUI.Contributions.NewSTSTest : VP.ActionContribution
+ L0.HasLabel "STS Test"
+ VP.ActionContribution.HasImage TestsUI.testImage
+ VP.ActionContribution.HasCategory VP.NewActionCategory
+ VP.ActionContribution.HasNodeType
+ TESTS.STSSuite
+ VP.ActionContribution.HasAction ACTIONS.NewSTSTest
+ VP.BrowseContext.HasActionContribution _ : VP.ActionContribution
+ L0.HasLabel "Run"
+ VP.ActionContribution.HasImage SILK.control_play
+ VP.ActionContribution.HasCategory VP.EditActionCategory
+ VP.ActionContribution.HasNodeType TESTS.STSSuite
+ VP.ActionContribution.HasAction ACTIONS.RunSTSTest
+ VP.BrowseContext.HasActionContribution _ : VP.ActionContribution
+ L0.HasLabel "Run"
+ VP.ActionContribution.HasImage SILK.control_play
+ VP.ActionContribution.HasCategory VP.EditActionCategory
+ VP.ActionContribution.HasNodeType TESTS.STSTest
+ VP.ActionContribution.HasAction ACTIONS.RunSTSTest
\ No newline at end of file