001/*
002 * Licensed to DuraSpace under one or more contributor license agreements.
003 * See the NOTICE file distributed with this work for additional information
004 * regarding copyright ownership.
005 *
006 * DuraSpace licenses this file to you under the Apache License,
007 * Version 2.0 (the "License"); you may not use this file except in
008 * compliance with the License.  You may obtain a copy of the License at
009 *
010 *     http://www.apache.org/licenses/LICENSE-2.0
011 *
012 * Unless required by applicable law or agreed to in writing, software
013 * distributed under the License is distributed on an "AS IS" BASIS,
014 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
015 * See the License for the specific language governing permissions and
016 * limitations under the License.
017 */
018package org.fcrepo.kernel.api;
019
020import static org.fcrepo.kernel.api.RdfLexicon.PREMIS_NAMESPACE;
021import static org.fcrepo.kernel.api.RdfLexicon.REPOSITORY_NAMESPACE;
022import static org.fcrepo.kernel.api.RdfLexicon.isManagedPredicateURI;
023import static org.junit.Assert.assertTrue;
024
025import org.junit.Test;
026
027/**
028 * <p>RdfLexiconTest class.</p>
029 *
030 * @author ajs6f
031 */
032public class RdfLexiconTest {
033
034    @Test
035    public void repoPredicatesAreManaged() {
036        assertTrue( isManagedPredicateURI.test( PREMIS_NAMESPACE + "hasSize") );
037        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE + "primaryType") );
038        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE + "repositoryCustomRepName") );
039        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE + "repositoryIdentifierStability") );
040        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE + "repositoryJcrRepositoryName") );
041        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE + "repositoryJcrRepositoryVendor") );
042        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE + "repositoryJcrRepositoryVendorUrl") );
043        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE + "repositoryJcrRepositoryVersion") );
044        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE + "repositoryJcrSpecificationName") );
045        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE + "repositoryJcrSpecificationVersion") );
046        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE + "repositoryLevel1Supported") );
047        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE + "repositoryLevel2Supported") );
048        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
049                    "repositoryNodeTypeManagementAutocreatedDefinitionsSupported") );
050        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
051                    "repositoryNodeTypeManagementInheritance") );
052        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
053                    "repositoryNodeTypeManagementMultipleBinaryPropertiesSupported") );
054        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
055                    "repositoryNodeTypeManagementMultivaluedPropertiesSupported") );
056        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
057                    "repositoryNodeTypeManagementOrderableChildNodesSupported") );
058        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
059                    "repositoryNodeTypeManagementOverridesSupported") );
060        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
061                    "repositoryNodeTypeManagementPrimaryItemNameSupported") );
062        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
063                    "repositoryNodeTypeManagementPropertyTypes") );
064        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
065                    "repositoryNodeTypeManagementResidualDefinitionsSupported") );
066        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
067                    "repositoryNodeTypeManagementSameNameSiblingsSupported") );
068        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
069                    "repositoryNodeTypeManagementUpdateInUseSupported") );
070        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
071                    "repositoryNodeTypeManagementValueConstraintsSupported") );
072        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
073                    "repositoryOptionAccessControlSupported") );
074        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
075                    "repositoryOptionActivitiesSupported") );
076        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
077                    "repositoryOptionBaselinesSupported") );
078        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
079                    "repositoryOptionJournaledObservationSupported") );
080        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
081                    "repositoryOptionLifecycleSupported") );
082        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
083                    "repositoryOptionLockingSupported") );
084        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
085                    "repositoryOptionNodeAndPropertyWithSameNameSupported") );
086        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
087                    "repositoryOptionNodeTypeManagementSupported") );
088        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
089                    "repositoryOptionObservationSupported") );
090        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
091                    "repositoryOptionQuerySqlSupported") );
092        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
093                    "repositoryOptionRetentionSupported") );
094        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
095                    "repositoryOptionShareableNodesSupported") );
096        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
097                    "repositoryOptionSimpleVersioningSupported") );
098        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
099                    "repositoryOptionTransactionsSupported") );
100        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
101                    "repositoryOptionUnfiledContentSupported") );
102        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
103                    "repositoryOptionUpdateMixinNodeTypesSupported") );
104        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
105                    "repositoryOptionUpdatePrimaryNodeTypeSupported") );
106        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
107                    "repositoryOptionVersioningSupported") );
108        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
109                    "repositoryOptionWorkspaceManagementSupported") );
110        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
111                    "repositoryOptionXmlExportSupported") );
112        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
113                    "repositoryOptionXmlImportSupported") );
114        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
115                    "repositoryQueryFullTextSearchSupported") );
116        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
117                    "repositoryQueryJoins") );
118        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
119                    "repositoryQueryStoredQueriesSupported") );
120        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
121                    "repositoryQueryXpathDocOrder") );
122        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
123                    "repositoryQueryXpathPosIndex") );
124        assertTrue( isManagedPredicateURI.test( REPOSITORY_NAMESPACE +
125                    "repositoryWriteSupported") );
126    }
127    @Test
128    public void otherPredicatesAreNotManaged() {
129        assertTrue( !isManagedPredicateURI.test( "http://purl.org/dc/elements/1.1/title") );
130    }
131}