package com.constellio.model.services.schemas.builders; import static org.assertj.core.api.Assertions.assertThat; import org.junit.Test; import com.constellio.model.entities.schemas.MetadataValueType; public class MetadataBuilder_MetadataAccessRestrictionTest extends MetadataBuilderTest { @Test public void whenBuildingMetadataWithoutInheritanceThenSetAccessRestrictions() throws Exception { metadataWithoutInheritanceBuilder.setType(MetadataValueType.STRING).defineAccessRestrictions() .withRequiredReadRole("zeRole"); build(); assertThat(metadataWithoutInheritance.getAccessRestrictions().getRequiredReadRoles()).containsOnly("zeRole"); } @Test public void whenModifyingMetadataWithoutInheritanceThenSetAccessRestrictions() throws Exception { metadataWithoutInheritanceBuilder.setType(MetadataValueType.STRING).defineAccessRestrictions() .withRequiredReadRole("zeRole"); buildAndModify(); assertThat(metadataWithoutInheritanceBuilder.defineAccessRestrictions().getRequiredReadRoles()).containsOnly("zeRole"); } @Test public void whenBuildingMetadataWithInheritanceThenSetAccessRestrictionsConfiguredInInheritedMetadata() throws Exception { inheritedMetadataBuilder.setType(MetadataValueType.STRING).defineAccessRestrictions() .withRequiredReadRole("zeRole"); build(); assertThat(metadataWithInheritance.getAccessRestrictions().getRequiredReadRoles()).containsOnly("zeRole"); } @Test public void whenModifyingMetadataWithInheritanceThenSetNull() throws Exception { metadataWithoutInheritanceBuilder.setType(MetadataValueType.STRING).defineAccessRestrictions() .withRequiredReadRole("zeRole"); buildAndModify(); assertThat(metadataWithInheritanceBuilder.defineAccessRestrictions()).isNull(); } }