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