1.1 --- a/javaquery/api/src/test/java/org/apidesign/bck2brwsr/htmlpage/KnockoutTest.java Tue Apr 02 15:40:08 2013 +0200
1.2 +++ b/javaquery/api/src/test/java/org/apidesign/bck2brwsr/htmlpage/KnockoutTest.java Thu Apr 04 11:45:54 2013 +0200
1.3 @@ -139,28 +139,46 @@
1.4 assert "changed".equals(txt) : "Expecting 'changed': " + txt;
1.5 }
1.6
1.7 + @ComputedProperty
1.8 + static Person firstPerson(List<Person> people) {
1.9 + return people.isEmpty() ? null : people.get(0);
1.10 + }
1.11 +
1.12 + @HtmlFragment(
1.13 + "<p id='ul' data-bind='with: firstPerson'>\n"
1.14 + + " <span data-bind='text: firstName, click: changeSex'></span>\n"
1.15 + + "</p>\n"
1.16 + )
1.17 + @BrwsrTest public void accessFirstPersonWithOnFunction() {
1.18 + trasfertToFemale();
1.19 + }
1.20 +
1.21 @HtmlFragment(
1.22 "<ul id='ul' data-bind='foreach: people'>\n"
1.23 + " <li data-bind='text: $data.firstName, click: changeSex'></li>\n"
1.24 + "</ul>\n"
1.25 )
1.26 @BrwsrTest public void onPersonFunction() {
1.27 + trasfertToFemale();
1.28 + }
1.29 +
1.30 + private void trasfertToFemale() {
1.31 KnockoutModel m = new KnockoutModel();
1.32 -
1.33 +
1.34 final Person first = new Person();
1.35 first.setFirstName("first");
1.36 first.setSex(Sex.MALE);
1.37 m.getPeople().add(first);
1.38 -
1.39 -
1.40 +
1.41 +
1.42 m.applyBindings();
1.43 -
1.44 +
1.45 int cnt = countChildren("ul");
1.46 assert cnt == 1 : "One child, but was " + cnt;
1.47 -
1.48 -
1.49 +
1.50 +
1.51 triggerChildClick("ul", 0);
1.52 -
1.53 +
1.54 assert first.getSex() == Sex.FEMALE : "Transverted to female: " + first.getSex();
1.55 }
1.56