puts "# =====================================================================" puts "# 0033487: Data Exchange, Step Import - Unresolved reference crashes" puts "# =====================================================================" # This test checks if crash happens when reading step file with missing # FILL_AREA_STYLE_COLOUR entities. # Read original file as plain text. set aSourceFilePath [locate_data_file trj6_as1-hc-214.stp] set aSourceFileChannel [open $aSourceFilePath r] set aSourceTextData [read $aSourceFileChannel] close $aSourceFileChannel # Create a 'broken' text data for step file by removing all FILL_AREA_STYLE_COLOUR entities. set aBrokenStepTextData "" set aToRemove "FILL_AREA_STYLE_COLOUR" set aSourceFileLines [split $aSourceTextData ";"] foreach aCurrentLine $aSourceFileLines { if {[string first $aToRemove $aCurrentLine] == -1} { # Add all strings from source file, except for strings that contain FILL_AREA_STYLE_COLOUR, # to the new file. append aBrokenStepTextData $aCurrentLine ";" } } # Write 'broken' plain text data into temporary step file. set aTmpFilePath "$imagedir/${casename}.stp" set aTmpFileChannel [open $aTmpFilePath w] puts $aTmpFileChannel $aBrokenStepTextData close $aTmpFileChannel # Read temporary file and delete it. # If something is wrong with step reader, crash will occur while executing ReadFile command. # If step reader works correctly, we expect just 'Unresolved Reference' message. puts {REQUIRED All: ERR StepReaderData : Unresolved Reference : Fails Count : 39} ReadFile aDoc $aTmpFilePath file delete $aTmpFilePath