package zenproject.meditation.android.sketch.painting.flowers; import org.fest.assertions.api.Assertions; import org.junit.Test; import org.junit.runner.RunWith; import org.robolectric.annotation.Config; import zenproject.meditation.android.BuildConfig; import zenproject.meditation.android.RobolectricLauncherGradleTestRunner; import zenproject.meditation.android.ZenTestBase; @RunWith(RobolectricLauncherGradleTestRunner.class) @Config(constants = BuildConfig.class) public class FlowerTest extends ZenTestBase { private static final int UNKNOWN_ORDINAL = -1; private static final int POPPY_ORDINAL = 2; @Test public void testThatNONEFlowerHasNoLeafs() { Assertions.assertThat(Flower.NONE.getFlowerLeafRes()).isEmpty(); } @Test public void testThatAllOthersFlowersButNONEhaveLeafs() { for(Flower flower: Flower.values()) { if(flower != Flower.NONE) { Assertions.assertThat(flower.getFlowerLeafRes().size()).isGreaterThan(0); } } } @Test public void testThatAllAvailableFlowersHasPositiveMinSize() { for (Flower flower : Flower.values()) { Assertions.assertThat(flower.getMinSize()).isGreaterThanOrEqualTo(0); } } @Test public void testThatAllAvailableFlowersHasPositiveMaxSize() { for (Flower flower : Flower.values()) { Assertions.assertThat(flower.getMaxSize()).isGreaterThanOrEqualTo(0); } } @Test public void testThatGettingFlowerFromUnknownOrdinalReturnsNONE() { Assertions.assertThat(Flower.from(UNKNOWN_ORDINAL)).isEqualTo(Flower.NONE); } @Test public void testThatGettingFlowerFromKnownOrdinalReturnsCorrectFlower() { Assertions.assertThat(Flower.from(POPPY_ORDINAL)).isEqualTo(Flower.POPPY); } }