Class StringPropertyTest
- java.lang.Object
-
- junit.framework.Assert
-
- junit.framework.TestCase
-
- org.apache.jackrabbit.test.JUnitTest
-
- org.apache.jackrabbit.test.AbstractJCRTest
-
- org.apache.jackrabbit.test.api.StringPropertyTest
-
- All Implemented Interfaces:
junit.framework.Test
public class StringPropertyTest extends AbstractJCRTest
StringPropertyTesttests a String property against the conversions to other Properties (except Name and Path property). If no String property is found or only a multivalue String property with an empty array, a NotExecutableException is thrown on setUp. More precisely, the tests are:- Value.getString() should return a string equals to Property.getString(), and in case of a multivalue property the failure of Property.getString() is checked.
- Value.getBoolean() Conversion to Boolean property.
- Value.getDate() Conversion to Date property is only valid when the String follows the required Date pattern (6.2.5.1 of jsr170 specification).
- Value.getDouble() Conversion to Double are only valid when the String follows the correct patterns as required by the according Java classes.
- Value.getLong() Conversion to Double are only valid when the String follows the correct patterns as required by the according Java classes.
- Value.getStream() Conversion to a Binary property follows the rules of Value.getStream() as explained in chapter 6.2.7 of the jsr170 specification. The required encoding is utf-8.
- Property.getNode() Conversion to a Reference property is tested with Property.getNode. The String should match the UUID pattern but this doesn't guarantee to be a reference (which especially requires integrity).
- Property.getLength() .
- Property.getLengths() .
- Property.getType() is compared to Value.getType() .
-
-
Field Summary
Fields Modifier and Type Field Description protected booleanmultipletrueif the property is multi valuedprotected Propertypropprotected SessionsessionA read only sessionprotected static StringUTF8String encoding in a stream-
Fields inherited from class org.apache.jackrabbit.test.AbstractJCRTest
isReadOnly, jcrBaseVersion, jcrCopiedFrom, jcrCreated, jcrFrozenNode, jcrFrozenUuid, jcrIsCheckedOut, jcrlockIsDeep, jcrLockOwner, jcrMergeFailed, jcrMixinTypes, jcrPredecessors, jcrPrimaryType, jcrRootVersion, jcrSuccessors, jcrSystem, jcrUUID, jcrVersionHistory, mixLockable, mixReferenceable, mixShareable, mixSimpleVersionable, mixTitle, mixVersionable, nodeName1, nodeName2, nodeName3, nodeName4, NS_JCR_URI, NS_MIX_URI, NS_NT_URI, NS_SV_URI, ntActivity, ntBase, ntFrozenNode, ntQuery, ntUnstructured, ntVersion, ntVersionHistory, ntVersionLabels, propertyName1, propertyName2, superuser, testNodeType, testNodeTypeNoChildren, testNodeTypeTestRoot, testPath, testRoot, testRootNode, vf, workspaceName
-
-
Constructor Summary
Constructors Constructor Description StringPropertyTest()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcleanUp()protected BooleangetPropertyIsMultivalued()Returns "does not matter" (null).protected intgetPropertyType()ReturnsPropertyType.STRING.protected voidsetUp()Sets up the fixture for the tests.protected voidtearDown()Releases the session aquired inAbstractJCRTest.setUp().voidtestGetBoolean()Tests conversion from String type to Boolean type.voidtestGetDate()Tests conversion from String type to Date type.voidtestGetDouble()Tests conversion from String type to Double type.voidtestGetLength()Tests the Property.getLength() method.voidtestGetLengths()Tests the Property.getLengths() method.voidtestGetLong()Tests conversion from String type to Long type.voidtestGetNode()Tests conversion from String type to Reference or Path type.voidtestGetProperty()Tests conversion from String type to Reference or Path type.voidtestGetStream()Tests conversion from String type to Binary type.voidtestGetType()Tests if Value.getType() returns the same as Property.getType() and also tests that prop.getDefinition().getRequiredType() returns the same type in case it is not of Undefined type.voidtestValue()Tests that Property.getString() delivers a string equal to the string received with Value.getString().-
Methods inherited from class org.apache.jackrabbit.test.AbstractJCRTest
checkSupportedOption, cleanUpTestRoot, createRandomString, ensureCanSetProperty, ensureCanSetProperty, ensureCanSetProperty, ensureKnowsNodeType, ensureLockingSupported, ensureMixinType, ensureMultipleWorkspacesSupported, getHelper, getJcrValue, getLocalName, getNonExistingWorkspaceName, getPrefix, getProperty, getProperty, getQualifiedName, getSize, isSupported, needsMixin, run
-
Methods inherited from class junit.framework.TestCase
assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertTrue, assertTrue, countTestCases, createResult, fail, fail, failNotEquals, failNotSame, failSame, format, getName, run, runBare, runTest, setName, toString
-
-
-
-
Method Detail
-
getPropertyType
protected int getPropertyType()
ReturnsPropertyType.STRING.- Returns:
PropertyType.STRING.
-
getPropertyIsMultivalued
protected Boolean getPropertyIsMultivalued()
Returns "does not matter" (null).- Returns:
null.
-
testValue
public void testValue() throws RepositoryExceptionTests that Property.getString() delivers a string equal to the string received with Value.getString().- Throws:
RepositoryException
-
testGetBoolean
public void testGetBoolean() throws RepositoryExceptionTests conversion from String type to Boolean type.- Throws:
RepositoryException
-
testGetDate
public void testGetDate() throws RepositoryExceptionTests conversion from String type to Date type.- Throws:
RepositoryException
-
testGetDouble
public void testGetDouble() throws RepositoryExceptionTests conversion from String type to Double type.- Throws:
RepositoryException
-
testGetLong
public void testGetLong() throws RepositoryExceptionTests conversion from String type to Long type.- Throws:
RepositoryException
-
testGetStream
public void testGetStream() throws RepositoryException, IOExceptionTests conversion from String type to Binary type.- Throws:
RepositoryExceptionIOException
-
testGetNode
public void testGetNode() throws RepositoryException, NotExecutableExceptionTests conversion from String type to Reference or Path type.
-
testGetProperty
public void testGetProperty() throws RepositoryException, NotExecutableExceptionTests conversion from String type to Reference or Path type.
-
testGetLength
public void testGetLength() throws RepositoryExceptionTests the Property.getLength() method. The length returned is either -1 or it is the length of the string.- Throws:
RepositoryException
-
testGetLengths
public void testGetLengths() throws RepositoryExceptionTests the Property.getLengths() method. The returned values are either -1 or the lengths of the according strings.- Throws:
RepositoryException
-
testGetType
public void testGetType() throws RepositoryExceptionTests if Value.getType() returns the same as Property.getType() and also tests that prop.getDefinition().getRequiredType() returns the same type in case it is not of Undefined type.- Throws:
RepositoryException
-
setUp
protected void setUp() throws ExceptionSets up the fixture for the tests.- Overrides:
setUpin classAbstractJCRTest- Throws:
Exception
-
cleanUp
protected void cleanUp() throws Exception- Overrides:
cleanUpin classAbstractJCRTest- Throws:
Exception
-
tearDown
protected void tearDown() throws ExceptionReleases the session aquired inAbstractJCRTest.setUp().- Overrides:
tearDownin classAbstractJCRTest- Throws:
Exception
-
-