1 /*
   2  * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.  Oracle designates this
   8  * particular file as subject to the "Classpath" exception as provided
   9  * by Oracle in the LICENSE file that accompanied this code.
  10  *
  11  * This code is distributed in the hope that it will be useful, but WITHOUT
  12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14  * version 2 for more details (a copy is included in the LICENSE file that
  15  * accompanied this code).
  16  *
  17  * You should have received a copy of the GNU General Public License version
  18  * 2 along with this work; if not, write to the Free Software Foundation,
  19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any
  23  * questions.
  24  */
  25 
  26 package test.javafx.beans.property;
  27 
  28 
  29 import javafx.beans.property.ListProperty;
  30 import javafx.beans.property.SimpleListProperty;
  31 import javafx.collections.FXCollections;
  32 import javafx.collections.ObservableList;
  33 import org.junit.Test;
  34 
  35 import static org.junit.Assert.assertEquals;
  36 
  37 public class SimpleListPropertyTest {
  38         
  39         private static final Object DEFAULT_BEAN = null;
  40         private static final String DEFAULT_NAME = "";
  41     private static final ObservableList<Object> DEFAULT_VALUE = null;
  42     private static final ObservableList<Object> VALUE_1 = FXCollections.observableArrayList(new Object());
  43 
  44         @Test
  45         public void testConstructor_NoArguments() {
  46                 final ListProperty<Object> v = new SimpleListProperty<Object>();
  47                 assertEquals(DEFAULT_BEAN, v.getBean());
  48                 assertEquals(DEFAULT_NAME, v.getName());
  49                 assertEquals(DEFAULT_VALUE, v.get());
  50         }
  51 
  52         @Test
  53         public void testConstructor_InitialValue() {
  54                 final ListProperty<Object> v1 = new SimpleListProperty<Object>(VALUE_1);
  55                 assertEquals(DEFAULT_BEAN, v1.getBean());
  56                 assertEquals(DEFAULT_NAME, v1.getName());
  57                 assertEquals(VALUE_1, v1.get());
  58 
  59                 final ListProperty<Object> v2 = new SimpleListProperty<Object>(DEFAULT_VALUE);
  60                 assertEquals(DEFAULT_BEAN, v2.getBean());
  61                 assertEquals(DEFAULT_NAME, v2.getName());
  62                 assertEquals(DEFAULT_VALUE, v2.get());
  63         }
  64 
  65         @Test
  66         public void testConstructor_Bean_Name() {
  67                 final Object bean = new Object();
  68                 final String name = "My name";
  69                 final ListProperty<Object> v = new SimpleListProperty<Object>(bean, name);
  70                 assertEquals(bean, v.getBean());
  71                 assertEquals(name, v.getName());
  72                 assertEquals(DEFAULT_VALUE, v.get());
  73                 
  74                 final ListProperty<Object> v2 = new SimpleListProperty<Object>(bean, null);
  75         assertEquals(bean, v2.getBean());
  76         assertEquals(DEFAULT_NAME, v2.getName());
  77         assertEquals(DEFAULT_VALUE, v2.get());
  78         }
  79 
  80         @Test
  81         public void testConstructor_Bean_Name_InitialValue() {
  82                 final Object bean = new Object();
  83                 final String name = "My name";
  84                 final ListProperty<Object> v1 = new SimpleListProperty<Object>(bean, name, VALUE_1);
  85                 assertEquals(bean, v1.getBean());
  86                 assertEquals(name, v1.getName());
  87                 assertEquals(VALUE_1, v1.get());
  88 
  89                 final ListProperty<Object> v2 = new SimpleListProperty<Object>(bean, name, DEFAULT_VALUE);
  90                 assertEquals(bean, v2.getBean());
  91                 assertEquals(name, v2.getName());
  92                 assertEquals(DEFAULT_VALUE, v2.get());
  93         
  94         final ListProperty<Object> v3 = new SimpleListProperty<Object>(bean, null, VALUE_1);
  95         assertEquals(bean, v3.getBean());
  96         assertEquals(DEFAULT_NAME, v3.getName());
  97         assertEquals(VALUE_1, v3.get());
  98         
  99         final ListProperty<Object> v4 = new SimpleListProperty<Object>(bean, null, DEFAULT_VALUE);
 100         assertEquals(bean, v4.getBean());
 101         assertEquals(DEFAULT_NAME, v4.getName());
 102         assertEquals(DEFAULT_VALUE, v4.get());
 103         }
 104 }