diff -r 22358b42ec2a -r 3e023bea2da4 javaquery/api/src/test/java/org/apidesign/bck2brwsr/htmlpage/KnockoutTest.java --- a/javaquery/api/src/test/java/org/apidesign/bck2brwsr/htmlpage/KnockoutTest.java Sun Mar 31 05:34:15 2013 +0200 +++ b/javaquery/api/src/test/java/org/apidesign/bck2brwsr/htmlpage/KnockoutTest.java Sun Mar 31 06:46:25 2013 +0200 @@ -101,18 +101,24 @@ @HtmlFragment( "\n" ) @BrwsrTest public void displayContentOfArrayOfPeople() { KnockoutModel m = new KnockoutModel(); - m.getPeople().add(new Person()); + + final Person first = new Person(); + first.setFirstName("first"); + m.getPeople().add(first); + m.applyBindings(); int cnt = countChildren("ul"); assert cnt == 1 : "One child, but was " + cnt; - m.getPeople().add(new Person()); + final Person second = new Person(); + second.setFirstName("second"); + m.getPeople().add(second); cnt = countChildren("ul"); assert cnt == 2 : "Two children now, but was " + cnt; @@ -123,6 +129,9 @@ cnt = countChildren("ul"); assert cnt == 1 : "Again one child, but was " + cnt; + + String txt = childText("ul", 0); + assert "first".equals(txt) : "Expecting 'first': " + txt; } @OnFunction @@ -167,4 +176,11 @@ + "e.children[pos].dispatchEvent(ev);\n " ) private static native void triggerChildClick(String id, int pos); + + @JavaScriptBody(args = { "id", "pos" }, body = + "var e = window.document.getElementById(id);\n " + + "var t = e.children[pos].innerHTML;\n " + + "return t ? t : null;" + ) + private static native String childText(String id, int pos); }