summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authormdejong <mdejong>2002-05-27 17:33:26 (GMT)
committermdejong <mdejong>2002-05-27 17:33:26 (GMT)
commitf2ec5d37bb3e769fe75dd9a0ebd90ed8e5799864 (patch)
treec7b04c113fc582c6f1a250ccdc79fea74d634d4a /tests
parentfbf182998e38265316eb57dcd882b13a5e066134 (diff)
downloadtk-f2ec5d37bb3e769fe75dd9a0ebd90ed8e5799864.zip
tk-f2ec5d37bb3e769fe75dd9a0ebd90ed8e5799864.tar.gz
tk-f2ec5d37bb3e769fe75dd9a0ebd90ed8e5799864.tar.bz2
* tests/embed.test: Added cross platform embed tests.
Check that window passed to -use has the -container option set. * tests/wm.test: Remove useless catch call. Deiconify . just in case, stackorder tests will not pass unless it is in the normal state. Add -container flag to embedded stackorder test. * unix/tkUnixEmbed.c (TkpUseWindow): * win/tkWinEmbed.c (TkpUseWindow): Lookup Tk window based on the id passed in as the value for -use. Generate an error if the Tk window did not have the -container option set.
Diffstat (limited to 'tests')
-rw-r--r--tests/embed.test51
-rw-r--r--tests/wm.test10
2 files changed, 58 insertions, 3 deletions
diff --git a/tests/embed.test b/tests/embed.test
new file mode 100644
index 0000000..f19583a
--- /dev/null
+++ b/tests/embed.test
@@ -0,0 +1,51 @@
+# This file is a Tcl script to test out embedded Windows.
+#
+# Copyright (c) 1996-1997 Sun Microsystems, Inc.
+# Copyright (c) 1998-1999 by Scriptics Corporation.
+# All rights reserved.
+#
+# RCS: @(#) $Id: embed.test,v 1.1 2002/05/27 17:33:26 mdejong Exp $
+
+if {[lsearch [namespace children] ::tcltest] == -1} {
+ source [file join [pwd] [file dirname [info script]] defs.tcl]
+}
+
+proc deleteWindows {} {
+ foreach i [winfo children .] {
+ destroy $i
+ }
+}
+
+test embed-1.1 {TkpUseWindow procedure, bad window identifier} {
+ deleteWindows
+ list [catch {toplevel .t -use xyz} msg] $msg
+} {1 {expected integer but got "xyz"}}
+
+test embed-1.2 {CreateFrame procedure, bad window identifier} {
+ deleteWindows
+ list [catch {toplevel .t -container xyz} msg] $msg
+} {1 {expected boolean value but got "xyz"}}
+
+test embed-1.3 {CreateFrame procedure, both -use and
+ -container is invalid } {
+ deleteWindows
+ toplevel .container -container 1
+ list [catch {toplevel .t -use [winfo id .container] \
+ -container 1} msg] $msg
+} {1 {A window cannot have both the -use and the -container option set.}}
+
+test embed-1.4 {TkpUseWindow procedure, -container must be set} {
+ deleteWindows
+ toplevel .container
+ list [catch {toplevel .embd -use [winfo id .container]} err] $err
+} {1 {window ".container" doesn't have -container option set}}
+
+test embed-1.5 {TkpUseWindow procedure, -container must be set} {
+ deleteWindows
+ frame .container
+ list [catch {toplevel .embd -use [winfo id .container]} err] $err
+} {1 {window ".container" doesn't have -container option set}}
+
+
+# FIXME: test cases common to unixEmbed.test and macEmbed.test should
+# be moved here.
diff --git a/tests/wm.test b/tests/wm.test
index 0665bcc..2dea668 100644
--- a/tests/wm.test
+++ b/tests/wm.test
@@ -7,7 +7,7 @@
# Copyright (c) 1998-1999 by Scriptics Corporation.
# All rights reserved.
#
-# RCS: @(#) $Id: wm.test,v 1.5 2002/05/24 09:50:11 mdejong Exp $
+# RCS: @(#) $Id: wm.test,v 1.6 2002/05/27 17:33:26 mdejong Exp $
# This file tests window manager interactions that work across
# platforms. Window manager tests that only work on a specific
@@ -20,13 +20,14 @@ if {[lsearch [namespace children] ::tcltest] == -1} {
proc deleteWindows {} {
foreach i [winfo children .] {
- catch [destroy $i]
+ destroy $i
}
}
deleteWindows
+wm deicon .
test wm-stackorder-1.1 {usage} {
list [catch {wm stackorder} err] $err
@@ -296,7 +297,7 @@ test wm-stackorder-5.3 {An overrideredirect window
test wm-stackorder-6.1 {An embedded toplevel does not
appear in the stacking order} {
deleteWindows
- toplevel .real
+ toplevel .real -container 1
toplevel .embd -bg blue -use [winfo id .real]
update
wm stackorder .
@@ -351,6 +352,9 @@ test wm-transient-1.6 {usage} {
# if the window was raised after a button click for example.
# This sort of testing may not be possible.
+
+deleteWindows
+
return