home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC World 2000 December
/
PCWorld_2000-12_cd.bin
/
Komunikace
/
Comanche
/
xuibuilder
/
TclDOM-1.6
/
tests
/
element.test
< prev
next >
Wrap
Text File
|
2000-11-02
|
2KB
|
88 lines
# Commands covered: ::dom::element
#
# 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: element.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
}
set doc [dom::DOMImplementation create]
set top [dom::document createElement $doc Test]
set e1 [dom::document createElement $top Element]
test element-1.1 {cget -tagName} {
dom::element cget $top -tagName
} Test
test element-1.2 {cget -tagName} {
dom::element cget $e1 -tagName
} Element
test element-1.3 {error: cget -tagName on non-element node} {
set result [catch {dom::element cget $doc -tagName} msg]
list $result $msg
} {1 {not an element type node}}
test element-1.4 {error: cget} {
catch {dom::element cget}
} 1
test element-1.5 {error:cget} {
catch {dom::element cget $e1}
} 1
test element-2.1 {error: configure -tagName, read-only option} {
catch {dom::element configure $e1 -tagName Error}
} 1
test element-3.1 {setAttribute} {
dom::element setAttribute $e1 class success
} {}
test element-3.2 {error: setAttribute, wrong number args} {
catch {dom::element setAttribute $e1 href}
} 1
# TODO: test that illegal attribute names are rejected
test element-4.1 {getAttribute} {
dom::element getAttribute $e1 class
} success
test element-4.2 {error: getAttribute, wrong number args} {
catch {dom::element getAttribute $e1}
} 1
test element-4.3 {error: getAttribute, undefined attribute} {
catch {dom::element getAttribute $e1 unknown}
} 1
# TODO: check that attribute values are escaped correctly
test element-5.1 {removeAttribute} {
dom::element removeAttribute $e1 class
} {}
# Attribute nodes are not yet implemented
if {0} {
test element-6.1 {getAttributeNode} {
} {}
test element-7.1 {setAttributeNode} {
} {}
test element-8.1 {removeAttributeNode} {
} {}
}
test element-9.1 {getElementsByTagName} {
} {}
test element-10.1 {normalize} {
} {}
test element-11.1 {error: method} {
set result [catch {dom::element foo $e1} msg]
list $result $msg
} {1 {unknown method "foo"}}