macFCmd.test
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:8k
源码类别:

通讯编程

开发平台:

Visual C++

  1. # This file tests the tclfCmd.c file.
  2. #
  3. # This file contains a collection of tests for one or more of the Tcl
  4. # built-in commands.  Sourcing this file into Tcl runs the tests and
  5. # generates output for errors.  No output means no errors were found.
  6. #
  7. # Copyright (c) 1997 Sun Microsystems, Inc.
  8. # Copyright (c) 1998-1999 by Scriptics Corporation.
  9. #
  10. # See the file "license.terms" for information on usage and redistribution
  11. # of this file, and for a DISCLAIMER OF ALL WARRANTIES.
  12. #
  13. # RCS: @(#) $Id: macFCmd.test,v 1.10 2002/07/05 10:38:43 dkf Exp $
  14. #
  15. if {[lsearch [namespace children] ::tcltest] == -1} {
  16.     package require tcltest
  17.     namespace import -force ::tcltest::*
  18. }
  19. # These tests really need to be run from a writable directory, which
  20. # it is assumed [temporaryDirectory] is.
  21. set oldcwd [pwd]
  22. cd [temporaryDirectory]
  23. catch {file delete -force foo.dir}
  24. file mkdir foo.dir
  25. if {[catch {file attributes foo.dir -readonly 1}]} {
  26.     set ::tcltest::testConstraints(fileSharing) 0
  27.     set ::tcltest::testConstraints(notFileSharing) 1
  28. } else {
  29.     set ::tcltest::testConstraints(fileSharing) 1
  30.     set ::tcltest::testConstraints(notFileSharing) 0
  31. }
  32. file delete -force foo.dir
  33. test macFCmd-1.1 {GetFileFinderAttributes - no file} {macOnly} {
  34.     catch {file delete -force foo.file}
  35.     list [catch {file attributes foo.file -creator} msg] $msg
  36. } {1 {could not read "foo.file": no such file or directory}}
  37. test macFCmd-1.2 {GetFileFinderAttributes - creator} {macOnly} {
  38.     catch {file delete -force foo.file}
  39.     catch {close [open foo.file w]}
  40.     list [catch {file attributes foo.file -creator} msg] 
  41.     [regexp {MPW |CWIE} $msg] [file delete -force foo.file]
  42. } {0 1 {}}
  43. test macFCmd-1.3 {GetFileFinderAttributes - type} {macOnly} {
  44.     catch {file delete -force foo.file}
  45.     catch {close [open foo.file w]}
  46.     list [catch {file attributes foo.file -type} msg] $msg 
  47.     [file delete -force foo.file]
  48. } {0 TEXT {}}
  49. test macFCmd-1.4 {GetFileFinderAttributes - not hidden} {macOnly} {
  50.     catch {file delete -force foo.file}
  51.     catch {close [open foo.file w]}
  52.     list [catch {file attributes foo.file -hidden} msg] $msg 
  53.     [file delete -force foo.file]
  54. } {0 0 {}}
  55. test macFCmd-1.5 {GetFileFinderAttributes - hidden} {macOnly} {
  56.     catch {file delete -force foo.file}
  57.     catch {close [open foo.file w]}
  58.     file attributes foo.file -hidden 1
  59.     list [catch {file attributes foo.file -hidden} msg] $msg 
  60.     [file delete -force foo.file]
  61. } {0 1 {}}
  62. test macFCmd-1.6 {GetFileFinderAttributes - folder creator} {macOnly} {
  63.     catch {file delete -force foo.dir}
  64.     file mkdir foo.dir
  65.     list [catch {file attributes foo.dir -creator} msg] $msg 
  66.     [file delete -force foo.dir]
  67. } {0 Fldr {}}
  68. test macFCmd-1.7 {GetFileFinderAttributes - folder type} {macOnly} {
  69.     catch {file delete -force foo.dir}
  70.     file mkdir foo.dir
  71.     list [catch {file attributes foo.dir -type} msg] $msg 
  72.     [file delete -force foo.dir]
  73. } {0 Fldr {}}
  74. test macFCmd-1.8 {GetFileFinderAttributes - folder hidden} {macOnly} {
  75.     catch {file delete -force foo.dir}
  76.     file mkdir foo.dir
  77.     list [catch {file attributes foo.dir -hidden} msg] $msg 
  78.     [file delete -force foo.dir]
  79. } {0 0 {}}
  80. test macFCmd-2.1 {GetFileReadOnly - bad file} {macOnly} {
  81.     catch {file delete -force foo.file}
  82.     list [catch {file attributes foo.file -readonly} msg] $msg
  83. } {1 {could not read "foo.file": no such file or directory}}
  84. test macFCmd-2.2 {GetFileReadOnly - file not read only} {macOnly} {
  85.     catch {file delete -force foo.file}
  86.     close [open foo.file w]
  87.     list [catch {file attributes foo.file -readonly} msg] $msg 
  88.     [file delete -force foo.file]
  89. } {0 0 {}}
  90. test macFCmd-2.3 {GetFileReadOnly - file read only} {macOnly} {
  91.     catch {file delete -force foo.file}
  92.     close [open foo.file w]
  93.     file attributes foo.file -readonly 1
  94.     list [catch {file attributes foo.file -readonly} msg] $msg 
  95.     [file delete -force foo.file]
  96. } {0 1 {}}
  97. test macFCmd-2.4 {GetFileReadOnly - directory not read only} {macOnly} {
  98.     catch {file delete -force foo.dir}
  99.     file mkdir foo.dir
  100.     list [catch {file attributes foo.dir -readonly} msg] $msg 
  101.     [file delete -force foo.dir]
  102. } {0 0 {}}
  103. test macFCmd-2.5 {GetFileReadOnly - directory read only} {macOnly fileSharing} {
  104.     catch {file delete -force foo.dir}
  105.     file mkdir foo.dir
  106.     file attributes foo.dir -readonly 1
  107.     list [catch {file attributes foo.dir -readonly} msg] $msg 
  108.     [file delete -force foo.dir]
  109. } {0 1 {}}
  110. test macFCmd-3.1 {SetFileFinderAttributes - bad file} {macOnly} {
  111.     catch {file delete -force foo.file}
  112.     list [catch {file attributes foo.file -creator FOOO} msg] $msg
  113. } {1 {could not read "foo.file": no such file or directory}}
  114. test macFCmd-3.2 {SetFileFinderAttributes - creator} {macOnly} {
  115.     catch {file delete -force foo.file}
  116.     close [open foo.file w]
  117.     list [catch {file attributes foo.file -creator FOOO} msg] $msg 
  118.     [file attributes foo.file -creator] [file delete -force foo.file]
  119. } {0 {} FOOO {}}
  120. test macFCmd-3.3 {SetFileFinderAttributes - bad creator} {macOnly} {
  121.     catch {file delete -force foo.file}
  122.     close [open foo.file w]
  123.     list [catch {file attributes foo.file -creator 0} msg] $msg 
  124.     [file delete -force foo.file]
  125. } {1 {expected Macintosh OS type but got "0"} {}}
  126. test macFCmd-3.4 {SetFileFinderAttributes - hidden} {macOnly} {
  127.     catch {file delete -force foo.file}
  128.     close [open foo.file w]
  129.     list [catch {file attributes foo.file -hidden 1} msg] $msg 
  130.     [file attributes foo.file -hidden] [file delete -force foo.file]
  131. } {0 {} 1 {}}
  132. test macFCmd-3.5 {SetFileFinderAttributes - type} {macOnly} {
  133.     catch {file delete -force foo.file}
  134.     close [open foo.file w]
  135.     list [catch {file attributes foo.file -type FOOO} msg] $msg 
  136.     [file attributes foo.file -type] [file delete -force foo.file]
  137. } {0 {} FOOO {}}
  138. test macFCmd-3.6 {SetFileFinderAttributes - bad type} {macOnly} {
  139.     catch {file delete -force foo.file}
  140.     close [open foo.file w]
  141.     list [catch {file attributes foo.file -type 0} msg] $msg 
  142.     [file delete -force foo.file]
  143. } {1 {expected Macintosh OS type but got "0"} {}}
  144. test macFCmd-3.7 {SetFileFinderAttributes - directory} {macOnly} {
  145.     catch {file delete -force foo.dir}
  146.     file mkdir foo.dir
  147.     list [catch {file attributes foo.dir -creator FOOO} msg] 
  148.     $msg [file delete -force foo.dir]
  149. } {1 {cannot set -creator: "foo.dir" is a directory} {}}
  150. test macFCmd-4.1 {SetFileReadOnly - bad file} {macOnly} {
  151.     catch {file delete -force foo.file}
  152.     list [catch {file attributes foo.file -readonly 1} msg] $msg
  153. } {1 {could not read "foo.file": no such file or directory}}
  154. test macFCmd-4.2 {SetFileReadOnly - file not readonly} {macOnly} {
  155.     catch {file delete -force foo.file}
  156.     close [open foo.file w]
  157.     list [catch {file attributes foo.file -readonly 0} msg] 
  158.     $msg [file attributes foo.file -readonly] [file delete -force foo.file]
  159. } {0 {} 0 {}}
  160. test macFCmd-4.3 {SetFileReadOnly - file readonly} {macOnly} {
  161.     catch {file delete -force foo.file}
  162.     close [open foo.file w]
  163.     list [catch {file attributes foo.file -readonly 1} msg] 
  164.     $msg [file attributes foo.file -readonly] [file delete -force foo.file]
  165. } {0 {} 1 {}}
  166. test macFCmd-4.4 {SetFileReadOnly - directory not readonly} 
  167. {macOnly fileSharing} {
  168.     catch {file delete -force foo.dir}
  169.     file mkdir foo.dir
  170.     list [catch {file attributes foo.dir -readonly 0} msg] 
  171.     $msg [file attributes foo.dir -readonly] [file delete -force foo.dir]
  172. } {0 {} 0 {}}
  173. test macFCmd-4.5 {SetFileReadOnly - directory not readonly} 
  174. {macOnly notFileSharing} {
  175.     catch {file delete -force foo.dir}
  176.     file mkdir foo.dir
  177.     list [catch {file attributes foo.dir -readonly 0} msg] $msg 
  178.     [file delete -force foo.dir]
  179. } {1 {cannot set a directory to read-only when File Sharing is turned off} {}}
  180. test macFCmd-4.6 {SetFileReadOnly - directory readonly} {macOnly fileSharing} {
  181.     catch {file delete -force foo.dir}
  182.     file mkdir foo.dir
  183.     list [catch {file attributes foo.dir -readonly 1} msg] $msg 
  184.     [file attributes foo.dir -readonly] [file delete -force foo.dir]
  185. } {0 {} 1 {}}
  186. test macFCmd-4.7 {SetFileReadOnly - directory readonly} {macOnly notFileSharing} {
  187.     catch {file delete -force foo.dir}
  188.     file mkdir foo.dir
  189.     list [catch {file attributes foo.dir -readonly 1} msg] $msg 
  190.     [file delete -force foo.dir]
  191. } {1 {cannot set a directory to read-only when File Sharing is turned off} {}}
  192. # cleanup
  193. cd $oldcwd
  194. ::tcltest::cleanupTests
  195. return