Test output for ersatz [ok]

Testing time: 0s

/home/mario/local/chicken-4.8.0.3/bin/csi -script run.scm < /dev/null

-- testing runtime test ------------------------------------------------------

    -- testing tvalue string representation ----------------------------------
    (->string (Tstr "a")) ............................................ [ PASS]
    (->string (Tint 1)) .............................................. [ PASS]
    (->string (Tfloat 1.0)) .......................................... [ PASS]
    (->string (Tfloat 1.2)) .......................................... [ PASS]
    (->string (Tlist (list (Tint 0) (Tint 1)))) ...................... [ PASS]
    (->string (Tobj (list (cons 'name (Tstr "value"))))) ............. [ PASS]
    6 tests completed in 0.001 seconds.
    6 out of 6 (100%) tests passed.
    -- done testing tvalue string representation -----------------------------


    -- testing arithmetic and logic ------------------------------------------
    (op-plus (Tint 1) (Tint 1)) ...................................... [ PASS]
    (op-plus (Tfloat 1.0) (Tfloat 1.0)) .............................. [ PASS]
    (op-minus (Tint 1) (Tint 1)) ..................................... [ PASS]
    (op-minus (Tint 1) (Tint -1)) .................................... [ PASS]
    (op-minus (Tint 0) (Tfloat 1.0)) ................................. [ PASS]
    (op-minus (Tint 1) (Tfloat 0.0)) ................................. [ PASS]
    (tval-equal? (op-abs (Tint -1) kwargs) (Tint 1)) ................. [ PASS]
    (tval-equal? (op-abs (Tint 1) kwargs) (Tint 1)) .................. [ PASS]
    (tval-equal? (op-round (Tstr "floor") (Tfloat 1.5) kwargs) (Tfl...  [ PASS]
    (tval-equal? (op-round (Tstr "ceil") (Tfloat 1.5) kwargs) (Tflo...  [ PASS]
    (tval-equal? (op-range (Tint 0) (Tint 2) kwargs) (Tlist (list (...  [ PASS]
    (tval-equal? (op-range (Tint 2) (Tint 0) kwargs) (Tlist (list (...  [ PASS]
    (tval-equal? (op-range (Tint 2012) (Tint 2006) kwargs) (Tlist (...  [ PASS]
    (tval-equal? (op-times (Tint 0) (Tint 1)) (Tint 0)) .............. [ PASS]
    (tval-equal? (op-times (Tint 1) (Tint 1)) (Tint 1)) .............. [ PASS]
    (tval-equal? (op-times (Tint 2) (Tint 2)) (Tint 4)) .............. [ PASS]
    (tval-equal? (op-times (Tint 2) (Tint 3)) (Tint 6)) .............. [ PASS]
    (tval-equal? (op-times (Tfloat 1.0) (Tint 2)) (Tfloat 2.0)) ...... [ PASS]
    (tval-equal? (op-times (Tfloat 2.0) (Tfloat 2.0)) (Tfloat 4.0)) .. [ PASS]
    (tval-equal? (op-times (Tfloat 2.0) (Tfloat 3.0)) (Tfloat 6.0)) .. [ PASS]
    (tval-equal? (op-times (Tfloat 0.0) (Tfloat 2.0)) (Tfloat 0.0)) .. [ PASS]
    (tval-equal? (op-times (Tfloat 0.0) (Tint 1)) (Tfloat 0.0)) ...... [ PASS]
    (tval-equal? (op-power (Tint 2) (Tint -1)) (Tfloat 1.0)) ......... [ PASS]
    (tval-equal? (op-power (Tint 2) (Tint 0)) (Tfloat 1.0)) .......... [ PASS]
    (tval-equal? (op-power (Tint 2) (Tint 1)) (Tfloat 2.0)) .......... [ PASS]
    (tval-equal? (op-power (Tint 2) (Tint 10)) (Tfloat 1024.0)) ...... [ PASS]
    (tval-equal? (op-div (Tint 4) (Tint 2)) (Tint 2)) ................ [ PASS]
    (tval-equal? (op-div (Tfloat 4.0) (Tint 2)) (Tfloat 2.0)) ........ [ PASS]
    (tval-equal? (op-mod (Tint 4) (Tint 3)) (Tint 1)) ................ [ PASS]
    (tval-equal? (op-mod (Tint 4) (Tint 1)) (Tint 0)) ................ [ PASS]
    (tval-equal? (op-and (Tbool #t) (Tbool #t)) (Tbool #t)) .......... [ PASS]
    (tval-equal? (op-and (Tbool #t) (Tbool #f)) (Tbool #f)) .......... [ PASS]
    (tval-equal? (op-and (Tbool #f) (Tbool #t)) (Tbool #f)) .......... [ PASS]
    (tval-equal? (op-and (Tbool #f) (Tbool #f)) (Tbool #f)) .......... [ PASS]
    (tval-equal? (op-or (Tbool #t) (Tbool #t)) (Tbool #t)) ........... [ PASS]
    (tval-equal? (op-or (Tbool #t) (Tbool #f)) (Tbool #t)) ........... [ PASS]
    (tval-equal? (op-or (Tbool #f) (Tbool #t)) (Tbool #t)) ........... [ PASS]
    (tval-equal? (op-or (Tbool #f) (Tbool #f)) (Tbool #f)) ........... [ PASS]
    (tval-equal? (op-toint (Tint 1) kwargs) (Tint 1)) ................ [ PASS]
    (tval-equal? (op-toint (Tfloat 1.0) kwargs) (Tint 1)) ............ [ PASS]
    (tval-equal? (op-tofloat (Tint 1) kwargs) (Tfloat 1.0)) .......... [ PASS]
    (tval-equal? (op-tofloat (Tfloat 1.0) kwargs) (Tfloat 1.0)) ...... [ PASS]
    42 tests completed in 0.003 seconds.
    42 out of 42 (100%) tests passed.
    -- done testing arithmetic and logic -------------------------------------


    -- testing list equality -------------------------------------------------
    (tval-equal? (Tbool #t) (list-same lst1 lst2)) ................... [ PASS]
    (tval-equal? (Tbool #f) (list-same lst1 lst3)) ................... [ PASS]
    (tval-equal? (Tbool #f) (list-same lst1 lst4)) ................... [ PASS]
    3 tests completed in 0.001 seconds.
    3 out of 3 (100%) tests passed.
    -- done testing list equality --------------------------------------------


    -- testing object equality -----------------------------------------------
    (tval-equal? (Tbool #t) (obj-same obj1 obj2)) .................... [ PASS]
    (tval-equal? (Tbool #f) (obj-same obj1 obj3)) .................... [ PASS]
    (tval-equal? (Tbool #t) (obj-same obj1 obj4)) .................... [ PASS]
    3 tests completed in 0.0 seconds.
    3 out of 3 (100%) tests passed.
    -- done testing object equality ------------------------------------------


    -- testing eq-eq ---------------------------------------------------------
    (tval-equal? (eq-eq (Tint 1) (Tint 1)) (Tbool #t)) ............... [ PASS]
    (tval-equal? (eq-eq (Tint 1) (Tfloat 1.0)) (Tbool #f)) ........... [ PASS]
    (tval-equal? (eq-eq (Tfloat 1.0) (Tfloat 1.0)) (Tbool #t)) ....... [ PASS]
    (tval-equal? (eq-eq (Tstr "aaa") (Tstr "aaa")) (Tbool #t)) ....... [ PASS]
    (tval-equal? (eq-eq (Tstr "aaa") (Tstr "bbb")) (Tbool #f)) ....... [ PASS]
    (tval-equal? (eq-eq (Tstr "日本語") (Tstr "日本語")) (Tbo...  [ PASS]
    (tval-equal? (eq-eq (Tstr "日本語") (Tstr "英語")) (Tbool ...  [ PASS]
    (tval-equal? (eq-eq (Tstr "aaa") (Tint 0)) (Tbool #f)) ........... [ PASS]
    8 tests completed in 0.0 seconds.
    8 out of 8 (100%) tests passed.
    -- done testing eq-eq ----------------------------------------------------


    -- testing string operations ---------------------------------------------
    upper ............................................................ [ PASS]
    lower ............................................................ [ PASS]
    join ............................................................. [ PASS]
    substring ........................................................ [ PASS]
    substring ........................................................ [ PASS]
    substring ........................................................ [ PASS]
    substring ........................................................ [ PASS]
    replace .......................................................... [ PASS]
    replace .......................................................... [ PASS]
    replace .......................................................... [ PASS]
    truncate ......................................................... [ PASS]
    capitalize ....................................................... [ PASS]
    escape-html ...................................................... [ PASS]
    wordcount ........................................................ [ PASS]
    wordcount ........................................................ [ PASS]
    urlize ........................................................... [ PASS]
    title ............................................................ [ PASS]
    striptags ........................................................ [ PASS]
    18 tests completed in 0.001 seconds.
    18 out of 18 (100%) tests passed.
    -- done testing string operations ----------------------------------------


    -- testing sorting -------------------------------------------------------
    (tval-equal? (op-sort lst kwargs) (Tlist (list (Tint 1) (Tint 2...  [ PASS]
    (tval-equal? (op-sort lst kwargs) (Tlist (list (Tfloat 1.0) (Tf...  [ PASS]
    (tval-equal? (op-sort lst kwargs) (Tlist (list (Tstr "aa") (Tst...  [ PASS]
    3 tests completed in 0.0 seconds.
    3 out of 3 (100%) tests passed.
    -- done testing sorting --------------------------------------------------


    -- testing length --------------------------------------------------------
    (tval-equal? (op-length (Tstr "test") kwargs) (Tint 4)) .......... [ PASS]
    (tval-equal? (op-length (Tstr "日本語") kwargs) (Tint 3)) ..... [ PASS]
    (tval-equal? (op-length (Tlist (list (Tint 0) (Tint 1))) kwargs...  [ PASS]
    3 tests completed in 0.0 seconds.
    3 out of 3 (100%) tests passed.
    -- done testing length ---------------------------------------------------

reverse .............................................................. [ PASS]
slice ................................................................ [ PASS]
last ................................................................. [ PASS]
default .............................................................. [ PASS]
list ................................................................. [ PASS]
sublist .............................................................. [ PASS]
expand and escape .................................................... [ PASS]
safe expand .......................................................... [ PASS]
expand with filter ................................................... [ PASS]
if ................................................................... [ PASS]
loop index/revindex .................................................. [ PASS]
loop cycle ........................................................... [ PASS]
loop first ........................................................... [ PASS]
loop last ............................................................ [ PASS]
loop length .......................................................... [ PASS]
in ................................................................... [ PASS]
is ................................................................... [ PASS]
is ................................................................... [ PASS]
set .................................................................. [ PASS]
set/with ............................................................. [ PASS]
defined .............................................................. [ PASS]
defined .............................................................. [ PASS]
extends .............................................................. [ PASS]
include .............................................................. [ PASS]
macro ................................................................ [ PASS]
caller ............................................................... [ PASS]
filter ............................................................... [ PASS]
set .................................................................. [ PASS]
make-lexer-table ..................................................... [ PASS]
29 tests and 8 subgroups completed in 0.196 seconds.
29 out of 29 (100%) tests passed.
8 out of 8 (100%) subgroups passed.
-- done testing runtime test -------------------------------------------------



include test
============

<h1>this is included source</h1>


binop
======

1+1 = 2
1-1 = 0
2*4 = 8
4/2 = 2
8^3 = 512.0
8%3 = 2
not true = false
not true(2) = false

single quote string test
=========================


single_quoted = hoge

expand test
===========


expand with escape = &lt;script&gt;alert(1)&lt;/script&gt;
expand with safe = <script>alert(1)</script>

set test
=========

set hoge = "ok"

now hoge = ok

if test
=======


value of hoge == "ok"


for test
========




<p>1</p>
<p>1</p>
<p>tmp = 1</p>


<p>2</p>
<p>2</p>
<p>tmp = 2</p>


<p>3</p>
<p>3</p>
<p>tmp = 3</p>


<p>4</p>
<p>1</p>
<p>tmp = 4</p>


<p>5</p>
<p>2</p>
<p>tmp = 5</p>



<a href="http://yahoo.co.jp">yahoo japan</a>



<a href="http://yahoo.co.jp">yahoo japan</a>

<a href="http://google.co.jp">google japan</a>



<a href="http://yahoo.co.jp">yahoo japan</a>

<a href="http://google.co.jp">google japan</a>


obj test
=========



name = aa
age = 10
obj["name"] = aa
obj["age"] = 10

filter test
===========

upper test:MUST BE UPPER
word count for "hoge hage hige" = 3

func test
=========

range(0,3) = 0123
range(3,0) = 3210

strlen("testtest") = 8
strlen("日本語") = 3

round floor of 1.5 = 1
round ceil of 1.5 = 2

join(",", [1,2,3,4,5]) = 1,2,3,4,5



  
  
  
  1,1 = 10
  
  
  2,1 = 20
  
  
  3,1 = 30
  
  
  4,1 = 40
  

  
  
  
  1,2 = 50
  
  
  2,2 = 60
  
  
  3,2 = 70
  
  
  4,2 = 80
  

  
  
  
  1,3 = 90
  
  
  2,3 = 100
  




filter tag test
===============


MUST BE UPPER


list expr
=========

1234.5str


1-2-3

{{

syntax test "is"
================

6 is divisibleby 4 = false
6 is divisibleby 3 = true
6 is divisibleby 2 = true
6 is divisibleby 2 = true
6 is divisibleby 3 via func = true

macro test
==========




10,20




10  20





from 
inner text!
args of call = 1,2
macro name = delay_macro
via caller = true
 to





<a name="#about"></a>
<h2>about me</h2>

Hi, I'm a programmer living in Japan.

<a href="#top">back to top</a>



<a name="#language"></a>
<h2>favorite language</h2>

I love Scheme.

<a href="#top">back to top</a>





this is test macro x = 10, y = 20






this is test macro x = 30, y = 40


this is other macro x = 50, y = 60











this is test_caller
age=120
class=mytest

name=test_caller
caller=true
catch_kwargs=true
catch_vargs=false
kw_from_test_caller=yeah



with statement test
====================


inner with foo = 10, hoge = 20


after with foo = , hoge = ok



inner with hige = 20
hige is defined = true


after with hige = 
hige is defined = false

in expr test
=============

1 is in [1,2,3] = true


yes! 1 is in [1,2,3]




autoescape test
===============

autoescape = true


&lt;script&gt;&lt;/script&gt;


autoescape = false

<script></script>


obj literal
===========



person["age"] = 10
person.age = 10
person["name"] = taro
person.name = taro

eval
====


from eval!