📄 testproperty.java
字号:
/*****************************************************************************
* Source code information
* -----------------------
* Original author Ian Dickinson, HP Labs Bristol
* Author email Ian.Dickinson@hp.com
* Package Jena 2
* Web http://sourceforge.net/projects/jena/
* Created 26-Mar-2003
* Filename $RCSfile: TestProperty.java,v $
* Revision $Revision: 1.14 $
* Release status $State: Exp $
*
* Last modified on $Date: 2007/01/02 11:51:55 $
* by $Author: andy_seaborne $
*
* (c) Copyright 2002, 2003, 2004, 2005, 2006, 2007 Hewlett-Packard Development Company, LP
* (see footer for full conditions)
*****************************************************************************/
// Package
///////////////
package com.hp.hpl.jena.ontology.impl.test;
// Imports
///////////////
import junit.framework.TestSuite;
import com.hp.hpl.jena.ontology.*;
import com.hp.hpl.jena.rdf.model.Property;
import com.hp.hpl.jena.vocabulary.RDF;
/**
* <p>
* Unit test cases for the Ontology class
* </p>
*
* @author Ian Dickinson, HP Labs
* (<a href="mailto:Ian.Dickinson@hp.com" >email</a>)
* @version CVS $Id: TestProperty.java,v 1.14 2007/01/02 11:51:55 andy_seaborne Exp $
*/
public class TestProperty
extends OntTestBase
{
// Constants
//////////////////////////////////
// Static variables
//////////////////////////////////
// Instance variables
//////////////////////////////////
// Constructors
//////////////////////////////////
static public TestSuite suite() {
return new TestProperty( "TestProperty" );
}
public TestProperty( String name ) {
super( name );
}
// External signature methods
//////////////////////////////////
public OntTestCase[] getTests() {
return new OntTestCase[] {
new OntTestCase( "OntProperty.super-property", true, true, true, true ) {
public void ontTest( OntModel m ) throws Exception {
Profile prof = m.getProfile();
OntProperty p = m.createOntProperty( NS + "p" );
OntProperty q = m.createOntProperty( NS + "q" );
OntProperty r = m.createOntProperty( NS + "r" );
p.addSuperProperty( q );
assertEquals( "Cardinality should be 1", 1, p.getCardinality( prof.SUB_PROPERTY_OF() ) );
assertEquals( "p have super-prop q", q, p.getSuperProperty() );
p.addSuperProperty( r );
assertEquals( "Cardinality should be 2", 2, p.getCardinality( prof.SUB_PROPERTY_OF() ) );
iteratorTest( p.listSuperProperties(), new Object[] {q, r} );
p.setSuperProperty( r );
assertEquals( "Cardinality should be 1", 1, p.getCardinality( prof.SUB_PROPERTY_OF() ) );
assertEquals( "p shuold have super-prop r", r, p.getSuperProperty() );
p.removeSuperProperty( q );
assertEquals( "Cardinality should be 1", 1, p.getCardinality( prof.SUB_PROPERTY_OF() ) );
p.removeSuperProperty( r );
assertEquals( "Cardinality should be 0", 0, p.getCardinality( prof.SUB_PROPERTY_OF() ) );
}
},
new OntTestCase( "OntProperty.sub-property", true, true, true, true ) {
public void ontTest( OntModel m ) throws Exception {
Profile prof = m.getProfile();
OntProperty p = m.createOntProperty( NS + "p" );
OntProperty q = m.createOntProperty( NS + "q" );
OntProperty r = m.createOntProperty( NS + "r" );
p.addSubProperty( q );
assertEquals( "Cardinality should be 1", 1, q.getCardinality( prof.SUB_PROPERTY_OF() ) );
assertEquals( "p have sub-prop q", q, p.getSubProperty() );
p.addSubProperty( r );
assertEquals( "Cardinality should be 2", 2, q.getCardinality( prof.SUB_PROPERTY_OF() ) + r.getCardinality( prof.SUB_PROPERTY_OF() ) );
iteratorTest( p.listSubProperties(), new Object[] {q, r} );
iteratorTest( q.listSuperProperties(), new Object[] {p} );
iteratorTest( r.listSuperProperties(), new Object[] {p} );
p.setSubProperty( r );
assertEquals( "Cardinality should be 1", 1, q.getCardinality( prof.SUB_PROPERTY_OF() ) + r.getCardinality( prof.SUB_PROPERTY_OF() ) );
assertEquals( "p should have sub-prop r", r, p.getSubProperty() );
p.removeSubProperty( q );
assertTrue( "Should have sub-prop r", p.hasSubProperty( r, false ) );
p.removeSubProperty( r );
assertTrue( "Should not have sub-prop r", !p.hasSubProperty( r, false ) );
}
},
new OntTestCase( "OntProperty.domain", true, true, true, true ) {
public void ontTest( OntModel m ) throws Exception {
Profile prof = m.getProfile();
OntProperty p = m.createOntProperty( NS + "p" );
OntResource a = (OntResource) m.getResource( NS + "a" ).as( OntResource.class );
OntResource b = (OntResource) m.getResource( NS + "b" ).as( OntResource.class );
p.addDomain( a );
assertEquals( "Cardinality should be 1", 1, p.getCardinality( prof.DOMAIN() ) );
assertEquals( "p have domain a", a, p.getDomain() );
p.addDomain( b );
assertEquals( "Cardinality should be 2", 2, p.getCardinality( prof.DOMAIN() ) );
iteratorTest( p.listDomain(), new Object[] {a, b} );
p.setDomain( b );
assertEquals( "Cardinality should be 1", 1, p.getCardinality( prof.DOMAIN() ) );
assertEquals( "p should have domain b", b, p.getDomain() );
p.removeDomain( a );
assertEquals( "Cardinality should be 1", 1, p.getCardinality( prof.DOMAIN() ) );
p.removeDomain( b );
assertEquals( "Cardinality should be 0", 0, p.getCardinality( prof.DOMAIN() ) );
}
},
new OntTestCase( "OntProperty.range", true, true, true, true ) {
public void ontTest( OntModel m ) throws Exception {
Profile prof = m.getProfile();
OntProperty p = m.createOntProperty( NS + "p" );
OntResource a = (OntResource) m.getResource( NS + "a" ).as( OntResource.class );
OntResource b = (OntResource) m.getResource( NS + "b" ).as( OntResource.class );
p.addRange( a );
assertEquals( "Cardinality should be 1", 1, p.getCardinality( prof.RANGE() ) );
assertEquals( "p have range a", a, p.getRange() );
p.addRange( b );
assertEquals( "Cardinality should be 2", 2, p.getCardinality( prof.RANGE() ) );
iteratorTest( p.listRange(), new Object[] {a, b} );
p.setRange( b );
assertEquals( "Cardinality should be 1", 1, p.getCardinality( prof.RANGE() ) );
assertEquals( "p should have range b", b, p.getRange() );
p.removeRange( a );
assertEquals( "Cardinality should be 1", 1, p.getCardinality( prof.RANGE() ) );
p.removeRange( b );
assertEquals( "Cardinality should be 0", 0, p.getCardinality( prof.RANGE() ) );
}
},
new OntTestCase( "OntProperty.equivalentProperty", true, true, true, false ) {
public void ontTest( OntModel m ) throws Exception {
Profile prof = m.getProfile();
OntProperty p = m.createObjectProperty( NS + "p" );
OntProperty q = m.createObjectProperty( NS + "q" );
OntProperty r = m.createObjectProperty( NS + "r" );
p.addEquivalentProperty( q );
assertEquals( "Cardinality should be 1", 1, p.getCardinality( prof.EQUIVALENT_PROPERTY() ) );
assertEquals( "p have equivalentProperty q", q, p.getEquivalentProperty() );
p.addEquivalentProperty( r );
assertEquals( "Cardinality should be 2", 2, p.getCardinality( prof.EQUIVALENT_PROPERTY() ) );
iteratorTest( p.listEquivalentProperties(), new Object[] {q,r} );
p.setEquivalentProperty( r );
assertEquals( "Cardinality should be 1", 1, p.getCardinality( prof.EQUIVALENT_PROPERTY() ) );
assertEquals( "p should have equivalentProperty r", r, p.getEquivalentProperty() );
p.removeEquivalentProperty( q );
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -