package org.societies.android.api.internal.cssmanager; import org.societies.api.internal.css.management.CSSManagerEnums; import org.societies.api.schema.cssmanagement.CssNode; import android.os.Parcel; import android.test.AndroidTestCase; public class TestAndroidCSSNode extends AndroidTestCase{ public static final String TEST_IDENTITY_1 = "node11"; public static final String TEST_IDENTITY_2 = "node22"; protected void setUp() throws Exception { super.setUp(); } protected void tearDown() throws Exception { super.tearDown(); } public void testConstructor() throws Exception { AndroidCSSNode cssNode = new AndroidCSSNode(); assertNotNull(cssNode); cssNode.setIdentity(TEST_IDENTITY_1); cssNode.setStatus(CSSManagerEnums.nodeStatus.Available.ordinal()); cssNode.setType(CSSManagerEnums.nodeType.Cloud.ordinal()); assertEquals(TEST_IDENTITY_1, cssNode.getIdentity()); assertEquals(CSSManagerEnums.nodeStatus.Available.ordinal(), cssNode.getStatus()); assertEquals(CSSManagerEnums.nodeType.Cloud.ordinal(), cssNode.getType()); } public void testAlternativeConstructor() { AndroidCSSNode cssNode = new AndroidCSSNode(); cssNode.setIdentity(TEST_IDENTITY_1); cssNode.setStatus(CSSManagerEnums.nodeStatus.Hibernating.ordinal()); cssNode.setType(CSSManagerEnums.nodeType.Rich.ordinal()); assertEquals(TEST_IDENTITY_1, cssNode.getIdentity()); assertEquals(CSSManagerEnums.nodeType.Rich.ordinal(), cssNode.getType()); assertEquals(CSSManagerEnums.nodeStatus.Hibernating.ordinal(), cssNode.getStatus()); } public void testConversion() { CssNode cssNode = new CssNode(); assertNotNull(cssNode); cssNode.setIdentity(TEST_IDENTITY_1); cssNode.setStatus(CSSManagerEnums.nodeStatus.Available.ordinal()); cssNode.setType(CSSManagerEnums.nodeType.Cloud.ordinal()); assertEquals(TEST_IDENTITY_1, cssNode.getIdentity()); assertEquals(CSSManagerEnums.nodeStatus.Available.ordinal(), cssNode.getStatus()); assertEquals(CSSManagerEnums.nodeType.Cloud.ordinal(), cssNode.getType()); AndroidCSSNode aNode = AndroidCSSNode.convertCssNode(cssNode); assertEquals(TEST_IDENTITY_1, aNode.getIdentity()); assertEquals(CSSManagerEnums.nodeStatus.Available.ordinal(), aNode.getStatus()); assertEquals(CSSManagerEnums.nodeType.Cloud.ordinal(), aNode.getType()); } public void testParcelable() { AndroidCSSNode cssNode = new AndroidCSSNode(); assertNotNull(cssNode); cssNode.setIdentity(TEST_IDENTITY_1); cssNode.setStatus(CSSManagerEnums.nodeStatus.Available.ordinal()); cssNode.setType(CSSManagerEnums.nodeType.Cloud.ordinal()); assertEquals(0, cssNode.describeContents()); Parcel parcel = Parcel.obtain(); cssNode.writeToParcel(parcel, 0); //done writing, now reset parcel for reading parcel.setDataPosition(0); //finish round trip AndroidCSSNode createFromParcel = AndroidCSSNode.CREATOR.createFromParcel(parcel); assertEquals(cssNode.getIdentity(), createFromParcel.getIdentity()); assertEquals(cssNode.getStatus(), createFromParcel.getStatus()); assertEquals(cssNode.getType(), createFromParcel.getType()); } }