001/* 002 * The contents of this file are subject to the license and copyright 003 * detailed in the LICENSE and NOTICE files at the root of the source 004 * tree. 005 */ 006package org.fcrepo.http.commons.domain.ldp; 007 008import static org.fcrepo.kernel.api.RdfLexicon.EMBED_CONTAINED; 009import static org.fcrepo.kernel.api.RdfLexicon.INBOUND_REFERENCES; 010import static org.fcrepo.kernel.api.RdfLexicon.PREFER_CONTAINMENT; 011import static org.fcrepo.kernel.api.RdfLexicon.PREFER_MEMBERSHIP; 012import static org.fcrepo.kernel.api.RdfLexicon.PREFER_MINIMAL_CONTAINER; 013import static org.junit.Assert.assertFalse; 014import static org.junit.Assert.assertTrue; 015 016import org.fcrepo.http.commons.domain.PreferTag; 017 018import org.junit.Test; 019 020/** 021 * @author cabeer 022 */ 023public class LdpPreferTagTest { 024 025 private LdpPreferTag testObj; 026 027 @Test 028 public void testDefaultDecisions() { 029 final PreferTag prefer = PreferTag.emptyTag(); 030 testObj = new LdpPreferTag(prefer); 031 032 assertTrue(testObj.displayUserRdf()); 033 assertTrue(testObj.displayServerManaged()); 034 assertFalse(testObj.displayReferences()); 035 assertTrue(testObj.displayContainment()); 036 assertTrue(testObj.displayMembership()); 037 assertFalse(testObj.displayEmbed()); 038 } 039 040 @Test 041 public void testMinimalContainer() { 042 final PreferTag prefer 043 = new PreferTag("return=representation; include=\"" + PREFER_MINIMAL_CONTAINER + "\""); 044 testObj = new LdpPreferTag(prefer); 045 046 assertTrue(testObj.displayUserRdf()); 047 assertTrue(testObj.displayServerManaged()); 048 assertFalse(testObj.displayReferences()); 049 assertFalse(testObj.displayContainment()); 050 assertFalse(testObj.displayMembership()); 051 assertFalse(testObj.displayEmbed()); 052 } 053 054 @Test 055 public void testPreferMembership() { 056 final PreferTag prefer 057 = new PreferTag("return=representation; include=\"" + PREFER_MINIMAL_CONTAINER + " " 058 + PREFER_MEMBERSHIP + "\""); 059 testObj = new LdpPreferTag(prefer); 060 061 assertTrue(testObj.displayUserRdf()); 062 assertTrue(testObj.displayServerManaged()); 063 assertFalse(testObj.displayReferences()); 064 assertFalse(testObj.displayContainment()); 065 assertTrue(testObj.displayMembership()); 066 assertFalse(testObj.displayEmbed()); 067 } 068 069 @Test 070 public void testPreferContainment() { 071 final PreferTag prefer 072 = new PreferTag("return=representation; include=\"" + PREFER_MINIMAL_CONTAINER + " " 073 + PREFER_CONTAINMENT + "\""); 074 testObj = new LdpPreferTag(prefer); 075 076 assertTrue(testObj.displayUserRdf()); 077 assertTrue(testObj.displayServerManaged()); 078 assertFalse(testObj.displayReferences()); 079 assertTrue(testObj.displayContainment()); 080 assertFalse(testObj.displayMembership()); 081 assertFalse(testObj.displayEmbed()); 082 } 083 084 @Test 085 public void testPreferContainmentAndMembership() { 086 final PreferTag prefer 087 = new PreferTag("return=representation; include=\"" + PREFER_MEMBERSHIP + " " 088 + PREFER_CONTAINMENT + "\""); 089 testObj = new LdpPreferTag(prefer); 090 091 assertTrue(testObj.displayUserRdf()); 092 assertTrue(testObj.displayServerManaged()); 093 assertFalse(testObj.displayReferences()); 094 assertTrue(testObj.displayContainment()); 095 assertTrue(testObj.displayMembership()); 096 assertFalse(testObj.displayEmbed()); 097 } 098 099 @Test 100 public void testPreferOmitContainmentAndMembership() { 101 final PreferTag prefer 102 = new PreferTag("return=representation; omit=\"" + PREFER_MEMBERSHIP + " " 103 + PREFER_CONTAINMENT + "\""); 104 testObj = new LdpPreferTag(prefer); 105 106 assertTrue(testObj.displayUserRdf()); 107 assertTrue(testObj.displayServerManaged()); 108 assertFalse(testObj.displayReferences()); 109 assertFalse(testObj.displayContainment()); 110 assertFalse(testObj.displayMembership()); 111 assertFalse(testObj.displayEmbed()); 112 } 113 114 @Test 115 public void testPreferReference() { 116 final PreferTag prefer 117 = new PreferTag("return=representation; include=\"" + INBOUND_REFERENCES + "\""); 118 testObj = new LdpPreferTag(prefer); 119 120 assertTrue(testObj.displayUserRdf()); 121 assertTrue(testObj.displayServerManaged()); 122 assertTrue(testObj.displayReferences()); 123 assertTrue(testObj.displayContainment()); 124 assertTrue(testObj.displayMembership()); 125 assertFalse(testObj.displayEmbed()); 126 } 127 128 @Test 129 public void testEmbedContained() { 130 testObj = new LdpPreferTag(new PreferTag("return=representation; include=\"" + EMBED_CONTAINED + "\"")); 131 132 assertTrue(testObj.displayUserRdf()); 133 assertTrue(testObj.displayServerManaged()); 134 assertFalse(testObj.displayReferences()); 135 assertTrue(testObj.displayContainment()); 136 assertTrue(testObj.displayMembership()); 137 assertTrue(testObj.displayEmbed()); 138 } 139}