1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-03 17:56:21 +03:00
abv 7a1b96cb98 0023639: Exception on attempt to save to XmlOcaf format
Variant FULL is removed from the options of DRAW command pload; ALL can be used in all cases
2016-11-17 14:41:50 +03:00

133 lines
2.8 KiB
Plaintext
Executable File

puts "================"
puts "OCC27192"
puts "================"
puts ""
######################################################
# Improvement of storage of Ocaf document in XML file format
######################################################
NewDocument M4 XmlOcaf
# Simple array with many separators inside.
SetExtStringArray M4 0:1 0 1 6
set S1 "Hello 1"
SetExtStringArrayValue M4 0:1 1 ${S1}
set S2 "Hello_2"
SetExtStringArrayValue M4 0:1 2 ${S2}
set S3 "Hello*3"
SetExtStringArrayValue M4 0:1 3 ${S3}
set S4 "Hello-4"
SetExtStringArrayValue M4 0:1 4 ${S4}
set S5 "Hello5"
SetExtStringArrayValue M4 0:1 5 ${S5}
set Sempty ""
SetExtStringArrayValue M4 0:1 6 ${Sempty}
SetNode M4 0:1
#An array with empty strings.
SetExtStringArray M4 0:2 0 0 3
SetExtStringArrayValue M4 0:2 0 ${Sempty}
set SH "H"
SetExtStringArrayValue M4 0:2 1 ${SH}
SetExtStringArrayValue M4 0:2 2 ${Sempty}
SetExtStringArrayValue M4 0:2 3 ${Sempty}
SetNode M4 0:2
AppendNode M4 0:1 0:2
#An empty array.
SetExtStringArray M4 0:3 0 0 0
SetNode M4 0:3
AppendNode M4 0:1 0:3
#Save & Close.
set aFile ${imagedir}/OCC27192.xml
#
file delete ${aFile}
#
if { [file exists ${aFile}] } {
puts "There is ${aFile} old file"
puts "OCC27192: ERROR (old file)"
}
#
catch {SaveAs M4 ${aFile}}
if { ![file exists ${aFile}] } {
puts "There is not ${aFile} file; SaveAs command: Error"
puts "OCC27192: ERROR (Save failed)"
}
Close M4
#Open the document and check the values.
catch {Open ${aFile} MM4}
set IsGood 1
#Check ExtStringArrays:
#0:1
set V1 [GetExtStringArrayValue MM4 0:1 1]
if { ${V1} != ${S1} } {
set IsGood 0
puts "${V1}!=${S1}"
}
set V2 [GetExtStringArrayValue MM4 0:1 2]
if { ${V2} != ${S2} } {
set IsGood 0
puts "${V2}!=${S2}"
}
set V3 [GetExtStringArrayValue MM4 0:1 3]
if { ${V3} != ${S3} } {
set IsGood 0
puts "${V3}!=${S3}"
}
set V4 [GetExtStringArrayValue MM4 0:1 4]
if { ${V4} != ${S4} } {
set IsGood 0
puts "${V4}!=${S4}"
}
set V5 [GetExtStringArrayValue MM4 0:1 5]
if { ${V5} != ${S5} } {
set IsGood 0
puts "${V5}!=${S5}"
}
set V6 [GetExtStringArrayValue MM4 0:1 6]
if { ${V6} != ${Sempty} } {
set IsGood 0
puts "${V6}!=${Sempty}"
}
#0:2
set V7 [GetExtStringArrayValue MM4 0:2 0]
if { ${V7} != ${Sempty} } {
set IsGood 0
puts "${V7}!=${Sempty}"
}
set V8 [GetExtStringArrayValue MM4 0:2 1]
if { ${V8} != ${SH} } {
set IsGood 0
puts "${V8}!=${SH}"
}
set V9 [GetExtStringArrayValue MM4 0:2 2]
if { ${V9} != ${Sempty} } {
set IsGood 0
puts "${V9}!=${Sempty}"
}
set V10 [GetExtStringArrayValue MM4 0:2 3]
if { ${V10} != ${Sempty} } {
set IsGood 0
puts "${V10}!=${Sempty}"
}
#0:3
set V11 [GetExtStringArrayValue MM4 0:3 0]
if { ${V11} != ${Sempty} } {
set IsGood 0
puts "${V11}!=${Sempty}"
}
if { ${IsGood} == 0} {
puts "OCC27192: Error"
} else {
puts "OCC27192: OK"
}
Close MM4