### Question:
ColumnProperty implements Property { public boolean isPersistent() { if (isVersionColumn()) { return false; } else if (isReadOnlyChangeAllowed() && !isReadOnly()) { return true; } else { return false; } } @SuppressWarnings("unused") private  ColumnProperty(); @Deprecated  ColumnProperty(String propertyId, boolean readOnly,
            boolean allowReadOnlyChange, boolean nullable, Object value,
            Class<?> type);  ColumnProperty(String propertyId, boolean readOnly,
            boolean allowReadOnlyChange, boolean nullable, boolean primaryKey,
            Object value, Class<?> type); @Override Object getValue(); Object getOldValue(); @Override void setValue(Object newValue); @Override Class<?> getType(); @Override boolean isReadOnly(); boolean isReadOnlyChangeAllowed(); @Override void setReadOnly(boolean newStatus); boolean isPrimaryKey(); String getPropertyId(); @Deprecated @Override String toString(); void setOwner(RowItem owner); boolean isModified(); boolean isVersionColumn(); void setVersionColumn(boolean versionColumn); boolean isNullable(); boolean isPersistent(); boolean isRowIdentifier(); void commit();  }### Answer:
@Test public void neverWritableColumnsShouldNotBeInValueMap_shouldReturnFalse() { ColumnProperty property = new ColumnProperty("NAME", true, false, true, false, "Ville", String.class); Assert.assertFalse(property.isPersistent()); }
@Test public void writableColumnsShouldBeInValueMap_shouldReturnTrue() { ColumnProperty property = new ColumnProperty("NAME", false, true, true, false, "Ville", String.class); Assert.assertTrue(property.isPersistent()); }
@Test public void writableButReadOnlyColumnsShouldNotBeInValueMap_shouldReturnFalse() { ColumnProperty property = new ColumnProperty("NAME", true, true, true, false, "Ville", String.class); Assert.assertFalse(property.isPersistent()); }