### Question:
ParseACL implements Parcelable { ParseACL copy() { return new ParseACL(this); } ParseACL();  ParseACL(ParseACL acl);  ParseACL(ParseUser owner);   ParseACL(Parcel source, ParseParcelDecoder decoder); static void setDefaultACL(ParseACL acl, boolean withAccessForCurrentUser); void setPublicReadAccess(boolean allowed); boolean getPublicReadAccess(); void setPublicWriteAccess(boolean allowed); boolean getPublicWriteAccess(); void setReadAccess(String userId, boolean allowed); boolean getReadAccess(String userId); void setWriteAccess(String userId, boolean allowed); boolean getWriteAccess(String userId); void setReadAccess(ParseUser user, boolean allowed); boolean getReadAccess(ParseUser user); void setWriteAccess(ParseUser user, boolean allowed); boolean getWriteAccess(ParseUser user); boolean getRoleReadAccess(String roleName); void setRoleReadAccess(String roleName, boolean allowed); boolean getRoleWriteAccess(String roleName); void setRoleWriteAccess(String roleName, boolean allowed); boolean getRoleReadAccess(ParseRole role); void setRoleReadAccess(ParseRole role, boolean allowed); boolean getRoleWriteAccess(ParseRole role); void setRoleWriteAccess(ParseRole role, boolean allowed); @Override int describeContents(); @Override void writeToParcel(Parcel dest, int flags); final static Creator<ParseACL> CREATOR; }### Answer:
@Test public void testCopy() throws Exception { ParseACL acl = new ParseACL(); final ParseUser unresolvedUser = mock(ParseUser.class); when(unresolvedUser.isLazy()).thenReturn(true); acl.setReadAccess(unresolvedUser, true); acl.setWriteAccess(unresolvedUser, true); reset(unresolvedUser); ParseACL copiedACL = new ParseACL(acl); assertEquals(1, copiedACL.getPermissionsById().size()); assertTrue(copiedACL.getPermissionsById().containsKey(UNRESOLVED_KEY)); assertTrue(copiedACL.getReadAccess(unresolvedUser)); assertTrue(copiedACL.getWriteAccess(unresolvedUser)); assertFalse(copiedACL.isShared()); assertSame(unresolvedUser, copiedACL.getUnresolvedUser()); verify(unresolvedUser, times(1)).registerSaveListener(any(GetCallback.class)); }