From 901b4d9305e03bca45da999be8d86845c13c15d5 Mon Sep 17 00:00:00 2001 From: Danny Yoo Date: Wed, 7 Sep 2011 16:47:37 -0400 Subject: [PATCH] adding some test cases for navigating, editing the tree --- tests/more-tests/view.expected | 2 ++ tests/more-tests/view.rkt | 28 +++++++++++++++++++++++++--- web-world/js-impl.js | 2 +- 3 files changed, 28 insertions(+), 4 deletions(-) diff --git a/tests/more-tests/view.expected b/tests/more-tests/view.expected index e66ca31..ea8ddd6 100644 --- a/tests/more-tests/view.expected +++ b/tests/more-tests/view.expected @@ -1,3 +1,5 @@ "" "some text" (html (head) (body (p "hello world, this is a test") (div (@ (id "a div")) "some text"))) +"blah" +(html (head) (body (p (@ (class "baz"))))) \ No newline at end of file diff --git a/tests/more-tests/view.rkt b/tests/more-tests/view.rkt index 57aeac5..4934ee4 100644 --- a/tests/more-tests/view.rkt +++ b/tests/more-tests/view.rkt @@ -16,6 +16,28 @@ (view-text updated-new-view) ;; should be "some text" (view->xexp (view-up (view-up updated-new-view))) -;; should be: -; (html (head) (body (p "hello world, this is a test") -; (div (@ (id "a div")) "some text"))) \ No newline at end of file + + +(view-attr (view-down + (view-right + (view-down + (->view (xexp->dom `(html (head) + (body (p (@ (class "blah")))))))))) + "class") + + +(define (my-view-top v) + (cond [(view-up? v) + (my-view-top (view-up v))] + [else + v])) + +(view->xexp + (my-view-top + (update-view-attr (view-down + (view-right + (view-down + (->view (xexp->dom `(html (head) + (body (p (@ (class "blah")))))))))) + "class" + "baz"))) diff --git a/web-world/js-impl.js b/web-world/js-impl.js index 54f9331..43f24a2 100644 --- a/web-world/js-impl.js +++ b/web-world/js-impl.js @@ -194,7 +194,7 @@ return this.act( function(cursor) { return cursor.replaceNode([cursor.node[0]] - .concat([document.createTextNode(text)])); + .concat([[document.createTextNode(text)]])); }, function(eventHandlers) { return eventHandlers; }, function(view) {