package org.societies.android.api.cis.management; import java.util.ArrayList; import java.util.List; import android.os.Parcel; import android.test.AndroidTestCase; import android.test.suitebuilder.annotation.MediumTest; import org.societies.api.schema.cis.community.Criteria; import org.societies.api.schema.cis.community.MembershipCrit; public class TestMembershipCriteria extends AndroidTestCase { protected void setUp() throws Exception { super.setUp(); } protected void tearDown() throws Exception { super.tearDown(); } @MediumTest public void testParcelable() throws Exception { MembershipCrit amembershipCrit = new MembershipCrit(); List<Criteria> criteriaList = new ArrayList<Criteria>(); Criteria criteria = new Criteria(); criteria.setAttrib("location"); criteria.setOperator("equals"); criteria.setRank(1); criteria.setValue1("Paris"); criteriaList.add(criteria); amembershipCrit.setCriteria(criteriaList); assertEquals(0, amembershipCrit.describeContents()); Parcel parcel = Parcel.obtain(); amembershipCrit.writeToParcel(parcel, 0); //done writing, now reset parcel for reading parcel.setDataPosition(0); //finish round trip MembershipCrit createFromParcel = MembershipCrit.CREATOR.createFromParcel(parcel); assertEquals(amembershipCrit.getCriteria().size(), createFromParcel.getCriteria().size()); assertEquals(amembershipCrit.getCriteria().get(0).getAttrib(), createFromParcel.getCriteria().get(0).getAttrib()); assertEquals(amembershipCrit.getCriteria().get(0).getOperator(), createFromParcel.getCriteria().get(0).getOperator()); assertEquals(amembershipCrit.getCriteria().get(0).getValue1(), createFromParcel.getCriteria().get(0).getValue1()); assertEquals(amembershipCrit.getCriteria().get(0).getValue2(), createFromParcel.getCriteria().get(0).getValue2()); assertEquals(amembershipCrit.getCriteria().get(0).getRank(), createFromParcel.getCriteria().get(0).getRank()); } @MediumTest public void testEmptyMembershipParcelable() throws Exception { // AMembershipCrit amembershipCrit = new AMembershipCrit(); List<Criteria> l = new ArrayList<Criteria>(); // amembershipCrit.setACriteria(l); // // assertEquals(0, amembershipCrit.describeContents()); Parcel parcel = Parcel.obtain(); // amembershipCrit.writeToParcel(parcel, 0); // //done writing, now reset parcel for reading parcel.setDataPosition(0); //finish round trip // AMembershipCrit createFromParcel = AMembershipCrit.CREATOR.createFromParcel(parcel); // // assertEquals(amembershipCrit.getACriteria().size(), createFromParcel.getACriteria().size()); // assertEquals(0, createFromParcel.getACriteria().size()); } }