/******************************************************************************* * Copyright (c) 2007, 2010 Association for Decentralized Information Management * in Industry THTH ry. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * VTT Technical Research Centre of Finland - initial API and implementation *******************************************************************************/ package org.simantics.db.tests.api.readGraph.getAssertedStatements; import java.util.Collection; import java.util.UUID; import org.simantics.db.ReadGraph; import org.simantics.db.Resource; import org.simantics.db.Statement; import org.simantics.db.WriteGraph; import org.simantics.db.exception.DatabaseException; import org.simantics.db.testing.base.WriteReadTest; import org.simantics.db.testing.common.Tests; import org.simantics.db.tests.common.Writes; public class GetAssertedStatementsTest1 extends WriteReadTest { private Resource type; private Resource named1; private Resource named2; private Resource string1; @Override protected void write(WriteGraph graph) throws DatabaseException { // New type with assertions type = graph.newResource(); graph.claim(type, L0.Inherits, L0.Entity); named1 = Writes.named(graph, UUID.randomUUID().toString()); named2 = Writes.named(graph, UUID.randomUUID().toString()); string1 = Writes.string(graph, UUID.randomUUID().toString()); // Assert some nonfunctional objects graph.claim(type, L0.Asserts, Writes.assertion(graph, L0.ConsistsOf, named1)); graph.claim(type, L0.Asserts, Writes.assertion(graph, L0.ConsistsOf, named2)); // Assert a functional object graph.claim(type, L0.Asserts, Writes.assertion(graph, L0.HasName, string1)); } @Override protected void read(ReadGraph graph) throws DatabaseException { Collection result = graph.getAssertedStatements(type, L0.ConsistsOf); assertNotNull("Null not allowed", result); assertTrue(result.size() == 2); assertTrue(Tests.contains(result, L0.ConsistsOf, named1)); assertTrue(Tests.contains(result, L0.ConsistsOf, named2)); Collection names = graph.getAssertedStatements(type, L0.HasName); assertTrue(names.size() == 1); assertTrue(Tests.contains(names, L0.HasName, string1)); } }