package com.constellio.app.ui.pages.search.criteria; import static org.assertj.core.api.Assertions.assertThat; import java.util.HashSet; import java.util.Set; import org.junit.Before; import org.junit.Test; import com.constellio.sdk.tests.ConstellioTest; public class FacetSelectionsFactoryTest extends ConstellioTest { FacetSelectionsFactory factory; Set<String> selectedValues; @Before public void setUp() throws Exception { selectedValues = new HashSet<>(); selectedValues.add("value1"); selectedValues.add("value2"); selectedValues.add("value3"); selectedValues.add("value4"); factory = new FacetSelectionsFactory(); } @Test public void whenSetAttributeValueThenBecomeDirty() { FacetSelections facetSelections = new FacetSelections(); assertThat(facetSelections.isDirty()).isFalse(); facetSelections = new FacetSelections(); facetSelections.setFacetField("type_default_code"); assertThat(facetSelections.isDirty()).isTrue(); facetSelections = new FacetSelections(); facetSelections.setSelectedValues(selectedValues); assertThat(facetSelections.isDirty()).isTrue(); } @Test public void whenConvertingStructureWithAllValuesThenRemainsEqual() throws Exception { FacetSelections facetSelections = new FacetSelections(); facetSelections.setFacetField("type_default_code"); facetSelections.setSelectedValues(selectedValues); String stringValue = factory.toString(facetSelections); FacetSelections builtFacetSelections = (FacetSelections) factory.build(stringValue); String stringValue2 = factory.toString(builtFacetSelections); assertThat(builtFacetSelections).isEqualTo(facetSelections); assertThat(stringValue2).isEqualTo(stringValue); assertThat(builtFacetSelections.isDirty()).isFalse(); } }