home *** CD-ROM | disk | FTP | other *** search
- # Commands covered: ::dom::DOMimplementation serialize
- #
- # This file contains a collection of tests for one or more of the
- # TclDOM commands. Sourcing this file into Tcl runs the tests and
- # generates output for errors. No output means no errors were found.
- #
- # Copyright (c) 1998 Zveno Pty Ltd.
- #
- # $Id: serialization.test,v 1.1.1.1 1996/02/22 06:06:14 daniel Exp $
-
- if {[string compare test [info procs test]] == 1} then {source defs}
-
- if {[catch {package require dom 1.0}]} {
- catch {puts stderr "Cannot load dom 1.0 package"}
- return
- }
-
- test serialize-1.1 {single element document} {
- set doc [::dom::DOMImplementation create]
- set top [::dom::document createElement $doc Test]
- ::dom::DOMImplementation serialize $doc
- } {<?xml version='1.0'?>
- <!DOCTYPE Test>
- <Test></Test>}
-
- test serialize-1.2 {element-only document} {
- set e1 [::dom::document createElement $top Element1]
- set e2 [::dom::document createElement $top Element2]
- set e3 [::dom::document createElement $top Element3]
- ::dom::DOMImplementation serialize $doc
- } {<?xml version='1.0'?>
- <!DOCTYPE Test>
- <Test><Element1/><Element2/><Element3/></Test>}
-
- test serialize-1.3 {serialize element} {
- ::dom::DOMImplementation serialize $top
- } {<Test><Element1/><Element2/><Element3/></Test>}
-
- test serialize-1.4 {serialize non-empty element} {
- ::dom::document createElement $e1 Child1
- ::dom::DOMImplementation serialize $doc
- } {<?xml version='1.0'?>
- <!DOCTYPE Test>
- <Test><Element1><Child1/></Element1><Element2/><Element3/></Test>}
-
- test serialize-2.1 {error: missing document element} {
- set doc [::dom::DOMImplementation create]
- set result [catch {::dom::DOMImplementation serialize $doc} msg]
- list $result $msg
- } {1 {document has no document element}}
-
- test serialize-3.1 {XML declaration: attributes in correct order} {
- set doc [::dom::DOMImplementation parse {<?xml version="1.0"?>
- <Test></Test>
- }]
- dom::DOMImplementation serialize $doc
- } {<?xml version='1.0'?>
- <!DOCTYPE Test>
- <Test></Test>}
-
- # This test fails if using TclExpat
-
- test serialize-3.2 {XML declaration: attributes in correct order} {
- set doc [::dom::DOMImplementation parse {<?xml version="1.0" standalone="yes"?>
- <Test></Test>
- }]
- dom::DOMImplementation serialize $doc
- } {<?xml version='1.0' standalone='yes'?>
- <!DOCTYPE Test>
- <Test></Test>}
-
-