package com.twasyl.slideshowfx.utils.beans.binding; import javafx.beans.property.BooleanProperty; import javafx.beans.property.SimpleBooleanProperty; import org.junit.Test; import static org.junit.Assert.assertEquals; /** * This class tests the {@link WildcardBinding} class. * @author Thierry Wasylczenko * @since SlideshowFX 1.0 */ public class WildcardBindingTest { /** * Test that creating a binding with a null property throws a {@link NullPointerException}. */ @Test(expected = NullPointerException.class) public void testWithNullProperty() { final WildcardBinding binding = new WildcardBinding(null); } /** * Test that "" is returned for a property. */ @Test public void testWithPropertyWithDefaultValue() { final BooleanProperty prop = new SimpleBooleanProperty(); final WildcardBinding binding = new WildcardBinding(prop); assertEquals("", binding.get()); } /** * Test that "*" is returned for a property. */ @Test public void testWithTrueProperty() { final BooleanProperty prop = new SimpleBooleanProperty(true); final WildcardBinding binding = new WildcardBinding(prop); assertEquals("*", binding.get()); } /** * Test that "" is returned for a property. */ @Test public void testWithFalseProperty() { final BooleanProperty prop = new SimpleBooleanProperty(false); final WildcardBinding binding = new WildcardBinding(prop); assertEquals(binding.get(), ""); } @Test public void testWithChangingProperty() { final BooleanProperty prop = new SimpleBooleanProperty(false); final WildcardBinding binding = new WildcardBinding(prop); assertEquals("", binding.get()); prop.set(true); assertEquals("*", binding.get()); } }