package jfxtras.icalendarfx.property.component; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import org.junit.Test; import jfxtras.icalendarfx.properties.component.descriptive.Categories; public class CategoriesTest { @Test public void canParseCategories() { Categories property = new Categories("group03","g,roup\\;p"); String expectedContent = "CATEGORIES:group03,g\\,roup\\\\\\;p"; assertEquals(expectedContent, property.toString()); Categories property2 = Categories.parse(expectedContent); assertEquals(property, property2); } @Test public void canParseMultipleCategories() { Categories property = Categories.parse("CATEGORIES:group03,group04,group05"); String expectedSummary = "CATEGORIES:group03,group04,group05"; assertEquals(expectedSummary, property.toString()); assertEquals(3, property.getValue().size()); } @Test public void canParseMultipleCategories2() { Categories property = Categories.parse("group03,group04,group05"); String expectedSummary = "CATEGORIES:group03,group04,group05"; assertEquals(expectedSummary, property.toString()); assertEquals(3, property.getValue().size()); } @Test public void canCopyCategories() { String content = "group03,group04,group05"; Categories property1 = Categories.parse(content); Categories property2 = new Categories(property1); assertEquals(property1, property2); assertFalse(property1 == property2); assertFalse(property1.getValue() == property2.getValue()); assertEquals("CATEGORIES:" + content, property2.toString()); // make sure wrapped collection is different String first = property1.getValue().iterator().next(); property1.getValue().remove(first); assertEquals(2, property1.getValue().size()); assertEquals(3, property2.getValue().size()); } }