summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorvincentdarley <vincentdarley>2004-12-20 10:34:19 (GMT)
committervincentdarley <vincentdarley>2004-12-20 10:34:19 (GMT)
commit305b4b22eef2f33fc2f65c97556123af3efdde37 (patch)
treef51e7f5db8a417f505089b9d7c91bafc34386c83 /tests
parentad8a25f00a1b5b9df12360a878f56a50d20c712e (diff)
downloadtk-305b4b22eef2f33fc2f65c97556123af3efdde37.zip
tk-305b4b22eef2f33fc2f65c97556123af3efdde37.tar.gz
tk-305b4b22eef2f33fc2f65c97556123af3efdde37.tar.bz2
Corrected handling of MacOS filetypes in tk_*file dialogs
Diffstat (limited to 'tests')
-rw-r--r--tests/filebox.test16
-rw-r--r--tests/winDialog.test20
2 files changed, 34 insertions, 2 deletions
diff --git a/tests/filebox.test b/tests/filebox.test
index f42af62..432323d 100644
--- a/tests/filebox.test
+++ b/tests/filebox.test
@@ -6,13 +6,27 @@
# Copyright (c) 1998-1999 by Scriptics Corporation.
# All rights reserved.
#
-# RCS: @(#) $Id: filebox.test,v 1.17 2004/12/08 03:02:53 dgp Exp $
+# RCS: @(#) $Id: filebox.test,v 1.18 2004/12/20 10:34:20 vincentdarley Exp $
#
package require tcltest 2.1
eval tcltest::configure $argv
tcltest::loadTestedCommands
+test fileDialog-0.1 {GetFileName: file types: MakeFilter() fails} {
+ # MacOS type that is too long
+
+ set res [list [catch {tk_getSaveFile -filetypes {{"foo" .foo {\0\0\0\0\0}}}} msg] $msg]
+ regsub -all "\0" $res {\\0}
+} {1 {bad Macintosh file type "\0\0\0\0\0"}}
+test fileDialog-0.2 {GetFileName: file types: MakeFilter() fails} {
+ # MacOS type that is too short, but looks ok in utf (4 bytes).
+
+ set x [catch {tk_getSaveFile -filetypes {{"foo" .foo {\0\0}}}} msg]
+ regsub -all "\0" $msg {\\0} msg
+ list $x $msg
+} {1 {bad Macintosh file type "\0\0"}}
+
set tk_strictMotif_old $tk_strictMotif
#----------------------------------------------------------------------
diff --git a/tests/winDialog.test b/tests/winDialog.test
index b2a705a..c89ff27 100644
--- a/tests/winDialog.test
+++ b/tests/winDialog.test
@@ -6,7 +6,7 @@
# Copyright (c) 1998-1999 by Scriptics Corporation.
# Copyright (c) 1998-1999 ActiveState Corporation.
#
-# RCS: @(#) $Id: winDialog.test,v 1.11 2004/06/17 22:38:57 dkf Exp $
+# RCS: @(#) $Id: winDialog.test,v 1.12 2004/12/20 10:34:20 vincentdarley Exp $
package require tcltest 2.1
eval tcltest::configure $argv
@@ -257,6 +257,24 @@ test winDialog-5.24 {GetFileName: convert \ to /} {nt testwinevent} {
}
set x
} {c:/12x 457}
+test winDialog-5.25 {GetFileName: file types: MakeFilter() succeeds} {nt} {
+ # MacOS type that is correct, but has embedded nulls.
+
+ start {set x [catch {tk_getSaveFile -filetypes {{"foo" .foo {\0\0\0\0}}}}]}
+ then {
+ Click 2
+ }
+ set x
+} {0}
+test winDialog-5.26 {GetFileName: file types: MakeFilter() succeeds} {nt} {
+ # MacOS type that is correct, but has embedded high-bit chars.
+
+ start {set x [catch {tk_getSaveFile -filetypes {{"foo" .foo {\u2022\u2022\u2022\u2022}}}}]}
+ then {
+ Click 2
+ }
+ set x
+} {0}
test winDialog-6.1 {MakeFilter} {emptyTest nt} {} {}