File: TestEmptyXML.tcl

package info (click to toggle)
vtk7 7.1.1%2Bdfsg1-12
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 125,776 kB
  • sloc: cpp: 1,539,582; ansic: 106,521; python: 78,038; tcl: 47,013; xml: 8,142; yacc: 5,040; java: 4,439; perl: 3,132; lex: 1,926; sh: 1,500; makefile: 122; objc: 83
file content (130 lines) | stat: -rw-r--r-- 3,577 bytes parent folder | download | duplicates (12)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
package require vtk

# List of types and corresponding file extensions.
set types {
    {ImageData vti}
    {RectilinearGrid vtr}
    {StructuredGrid vts}
    {PolyData vtp}
    {UnstructuredGrid vtu}
}

# We intentionally cause vtkErrorMacro calls to be made below.  Dump
# errors to a file to prevent a window from coming up.
vtkFileOutputWindow fow
fow SetFileName "TestEmptyXMLErrors.txt"
fow SetFlush 0
fow SetInstance fow

# Prepare some test files.
file delete -force "junkFile.vtk"
file delete -force "emptyFile.vtk"
set f [open "emptyFile.vtk" w]
close $f
set f [open "junkFile.vtk" w]
puts $f "v9np7598mapwcawoiur-,rjpmW9MJV28nun-q38ynq-9 8ugujqvt-8n3-nv8"
close $f

# Test each writer/reader.
foreach pair $types {
    set type [lindex $pair 0]
    set ext [lindex $pair 1]
    vtk${type} input
    vtkXML${type}Writer writer
    writer SetFileName "empty${type}.${ext}"
    puts "Attempting ${type} write with no input."
    catch {writer Write}
    puts "Attempting ${type} write with empty input."
    writer SetInputData input
    writer Write

    vtkXML${type}Reader reader
    reader SetFileName "empty${type}.${ext}"
    puts "Attempting read from file with empty ${type}."
    reader Update

    vtkXMLP${type}Writer pwriter
    pwriter SetFileName "emptyP${type}.p${ext}"
    pwriter SetNumberOfPieces 1
    puts "Attempting P${type} write with no input."
    catch {pwriter Write}
    puts "Attempting P${type} write with empty input."
    pwriter SetInputData input
    pwriter Write

    vtkXMLP${type}Reader preader
    preader SetFileName "emptyP${type}.p${ext}"
    puts "Attempting read from file with empty P${type}."
    preader Update

    reader SetFileName "emptyFile.vtk"
    preader SetFileName "emptyFile.vtk"

    puts "Attempting read ${type} from empty file."
    reader Update
    puts "Attempting read P${type} from empty file."
    preader Update

    reader SetFileName "junkFile.vtk"
    preader SetFileName "junkFile.vtk"

    puts "Attempting read ${type} from junk file."
    reader Update
    puts "Attempting read P${type} from junk file."
    preader Update

    input Delete
    writer Delete
    reader Delete
    pwriter Delete
    preader Delete
}

# Test the data set writers.
foreach pair $types {
    set type [lindex $pair 0]
    set ext [lindex $pair 1]
    vtkXMLDataSetWriter writer
    vtkXMLPDataSetWriter pwriter
    vtk${type} input

    writer SetFileName "empty${type}DataSet.${ext}"
    puts "Attempting DataSet ${type} write with no input."
    catch {writer Write}
    puts "Attempting DataSet ${type} write with empty input."
    writer SetInputData input
    writer Write

    pwriter SetFileName "emptyP${type}DataSet.p${ext}"
    pwriter SetNumberOfPieces 1
    puts "Attempting DataSet P${type} write with no input."
    catch {pwriter Write}
    puts "Attempting DataSet P${type} write with empty input."
    pwriter SetInputData input
    pwriter Write

    input Delete
    pwriter Delete
    writer Delete
}

# Done with file output window.
fow SetInstance {}
fow Delete

# Delete the test files.
foreach pair $types {
    set type [lindex $pair 0]
    set ext [lindex $pair 1]
    file delete -force "empty${type}.${ext}"
    file delete -force "empty${type}DataSet.${ext}"
    file delete -force "emptyP${type}.p${ext}"
    file delete -force "emptyP${type}0.${ext}"
    file delete -force "emptyP${type}DataSet.p${ext}"
    file delete -force "emptyP${type}DataSet0.${ext}"
}
file delete -force "junkFile.vtk"
file delete -force "emptyFile.vtk"
file delete -force "TestEmptyXMLErrors.txt"

exit