1 /** 2 * Licensed to the Apache Software Foundation (ASF) under one 3 * or more contributor license agreements. See the NOTICE file 4 * distributed with this work for additional information 5 * regarding copyright ownership. The ASF licenses this file 6 * to you under the Apache License, Version 2.0 (the 7 * "License"); you may not use this file except in compliance 8 * with the License. You may obtain a copy of the License at 9 * 10 * http://www.apache.org/licenses/LICENSE-2.0 11 * 12 * Unless required by applicable law or agreed to in writing, software 13 * distributed under the License is distributed on an "AS IS" BASIS, 14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 * See the License for the specific language governing permissions and 16 * limitations under the License. 17 */ 18 package org.apache.commons.rdf.api; 19 20 import static org.junit.Assert.*; 21 22 import java.util.Objects; 23 24 import org.junit.Test; 25 26 public class DefaultQuadTest { 27 @Test 28 public void asQuad() throws Exception { 29 final Quad q = new DummyQuad(); 30 final Triple t = q.asTriple(); 31 assertEquals(t, t); 32 assertNotEquals(t, q); 33 assertEquals(t, new DummyTriple()); 34 assertEquals(t, new DummyQuad().asTriple()); 35 36 // FIXME: This would not catch if asTriple() accidentally mixed up s/p/o 37 // as they are here all the same 38 assertEquals(new DummyIRI(1), t.getSubject()); 39 assertEquals(new DummyIRI(2), t.getPredicate()); 40 assertEquals(new DummyIRI(3), t.getObject()); 41 42 43 44 assertEquals(Objects.hash(q.getSubject(), q.getPredicate(), q.getObject()), t.hashCode()); 45 } 46 47 }