[claw-cvs] r41 - trunk/main/claw-core/tests

achiumenti at common-lisp.net achiumenti at common-lisp.net
Tue Apr 15 17:49:17 UTC 2008


Author: achiumenti
Date: Tue Apr 15 13:49:16 2008
New Revision: 41

Added:
   trunk/main/claw-core/tests/some-page.lisp
Log:
writing tests for manual

Added: trunk/main/claw-core/tests/some-page.lisp
==============================================================================
--- (empty file)
+++ trunk/main/claw-core/tests/some-page.lisp	Tue Apr 15 13:49:16 2008
@@ -0,0 +1,58 @@
+;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: CL-USER; Base: 10 -*-
+;;; $Header: tests/test1.lisp $
+
+;;; Copyright (c) 2008, Andrea Chiumenti.  All rights reserved.
+
+;;; Redistribution and use in source and binary forms, with or without
+;;; modification, are permitted provided that the following conditions
+;;; are met:
+
+;;;   * Redistributions of source code must retain the above copyright
+;;;     notice, this list of conditions and the following disclaimer.
+
+;;;   * Redistributions in binary form must reproduce the above
+;;;     copyright notice, this list of conditions and the following
+;;;     disclaimer in the documentation and/or other materials
+;;;     provided with the distribution.
+
+;;; THIS SOFTWARE IS PROVIDED BY THE AUTHOR 'AS IS' AND ANY EXPRESSED
+;;; OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+;;; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+;;; ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
+;;; DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+;;; DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+;;; GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+;;; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+;;; WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+;;; NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+;;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+(in-package :claw-tests)
+
+(defcomponent inspector () ())
+
+(defmethod wcomponent-parameters ((inspector inspector))
+  (list :id :required :ref-id :required))
+
+(defmethod wcomponent-template ((inspector inspector))
+  (div> :static-id (htcomponent-client-id inspector) 
+        (htcomponent-body inspector)))
+
+(defmethod htcomponent-instance-initscript ((inspector inspector))
+  (format nil "document.getElementById\('~a').onclick = 
+          function \() {alert\(document.getElementById\('~a').innerHTML);};"
+          (htcomponent-client-id inspector)
+          (wcomponent-parameter-value inspector :ref-id)))
+
+(defclass some-page (page) ())
+
+(defmethod page-content ((some-page some-page))
+  (let ((hidden-component-id (generate-id "hiddenComp"))
+        (rnd-value (prin1-to-string (random 10000))))
+    (site-template> :title "this is the page title" 
+		    :class "foo"
+		    (p>
+		     (div> :static-id hidden-component-id :style "display: none;" rnd-value)
+		     (inspector> :id "inspector" :ref-id hidden-component-id "Show value")))))
+
+(lisplet-register-page-location *test-lisplet* 'some-page "some-page.html")



More information about the Claw-cvs mailing list