javaquery/api/src/test/java/org/apidesign/bck2brwsr/htmlpage/KnockoutTest.java
branchmodel
changeset 930 e8916518b38d
parent 929 b43aaf398748
child 1011 9cc253aa9405
child 1787 ea12a3bb4b33
     1.1 --- a/javaquery/api/src/test/java/org/apidesign/bck2brwsr/htmlpage/KnockoutTest.java	Thu Apr 04 11:45:54 2013 +0200
     1.2 +++ b/javaquery/api/src/test/java/org/apidesign/bck2brwsr/htmlpage/KnockoutTest.java	Thu Apr 04 13:08:26 2013 +0200
     1.3 @@ -27,7 +27,9 @@
     1.4  import org.apidesign.bck2brwsr.vmtest.BrwsrTest;
     1.5  import org.apidesign.bck2brwsr.vmtest.HtmlFragment;
     1.6  import org.apidesign.bck2brwsr.vmtest.VMTest;
     1.7 +import static org.testng.Assert.assertEquals;
     1.8  import org.testng.annotations.Factory;
     1.9 +import org.testng.annotations.Test;
    1.10  
    1.11  /**
    1.12   *
    1.13 @@ -181,6 +183,28 @@
    1.14  
    1.15          assert first.getSex() == Sex.FEMALE : "Transverted to female: " + first.getSex();
    1.16      }
    1.17 +    
    1.18 +    @Test public void cloneModel() {
    1.19 +        Person model = new Person();
    1.20 +        
    1.21 +        model.setFirstName("first");
    1.22 +        Person snd = model.clone();
    1.23 +        snd.setFirstName("clone");
    1.24 +        assertEquals("first", model.getFirstName(), "Value has not changed");
    1.25 +        assertEquals("clone", snd.getFirstName(), "Value has changed in clone");
    1.26 +    }
    1.27 +   
    1.28 +    
    1.29 +    @Test public void deepCopyOnClone() {
    1.30 +        People model = new People();
    1.31 +        model.getNicknames().add("Jarda");
    1.32 +        assertEquals(model.getNicknames().size(), 1, "One element");
    1.33 +        People snd = model.clone();
    1.34 +        snd.getNicknames().clear();
    1.35 +        assertEquals(snd.getNicknames().size(), 0, "Clone is empty");
    1.36 +        assertEquals(model.getNicknames().size(), 1, "Still one element");
    1.37 +    }
    1.38 +    
    1.39       
    1.40      @OnFunction
    1.41      static void call(KnockoutModel m, String data) {