Skip to content

Commit 96fd008

Browse files
committed
Test fixes for windows
1 parent f881aab commit 96fd008

3 files changed

Lines changed: 350 additions & 339 deletions

File tree

test/test_parser.rb

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ def test_nil_document
2727
LibXML::XML::Parser.document(nil)
2828
end
2929

30-
assert_equal("Must pass an LibXML::XML::Document object", error.to_s)
30+
assert_equal("Must pass an LibXML::XML::Document object", error.message)
3131
end
3232

3333
def test_file
@@ -44,15 +44,15 @@ def test_noexistent_file
4444
LibXML::XML::Parser.file('i_dont_exist.xml')
4545
end
4646

47-
assert_equal('Warning: failed to load external entity "i_dont_exist.xml".', error.to_s)
47+
assert_equal('Warning: failed to load external entity "i_dont_exist.xml".', error.message)
4848
end
4949

5050
def test_nil_file
5151
error = assert_raises(TypeError) do
5252
LibXML::XML::Parser.file(nil)
5353
end
5454

55-
assert_match(/nil into String/, error.to_s)
55+
assert_match(/nil into String/, error.message)
5656
end
5757

5858
def test_file_encoding
@@ -63,7 +63,11 @@ def test_file_encoding
6363
parser.parse
6464
end
6565

66-
assert(error.to_s.match(/Fatal error: Extra content at the end of the document/))
66+
if windows?
67+
assert_match(/Fatal error: Opening and ending tag mismatch/, error.message)
68+
else
69+
assert_match(/Fatal error: Extra content at the end of the document/, error.message)
70+
end
6771

6872
parser = LibXML::XML::Parser.file(file, :encoding => LibXML::XML::Encoding::UTF_8)
6973
doc = parser.parse
@@ -108,7 +112,7 @@ def test_nil_io
108112
LibXML::XML::Parser.io(nil)
109113
end
110114

111-
assert_equal("Must pass in an IO object", error.to_s)
115+
assert_equal("Must pass in an IO object", error.message)
112116
end
113117

114118
def test_string_io
@@ -153,7 +157,7 @@ def test_nil_string
153157
LibXML::XML::Parser.string(nil)
154158
end
155159

156-
assert_equal("wrong argument type nil (expected String)", error.to_s)
160+
assert_equal("wrong argument type nil (expected String)", error.message)
157161
end
158162

159163
def test_string_options
@@ -212,7 +216,7 @@ def test_string_encoding
212216
end
213217

214218
assert_equal("Fatal error: Input is not proper UTF-8, indicate encoding !\nBytes: 0xF6 0x74 0x6C 0x65 at :2.",
215-
error.to_s)
219+
error.message)
216220

217221
# Parse as ISO_8859_1:
218222
parser = LibXML::XML::Parser.string(xml, :encoding => LibXML::XML::Encoding::ISO_8859_1)
@@ -281,16 +285,23 @@ def test_bad_xml
281285

282286
refute_nil(error)
283287
assert_kind_of(LibXML::XML::Error, error)
284-
assert_equal("Fatal error: Extra content at the end of the document at :1.", error.message)
288+
if windows?
289+
assert_equal("Fatal error: Couldn't find end of Start Tag ruby_array line 1 at :1.", error.message)
290+
assert_equal(LibXML::XML::Error::GT_REQUIRED, error.code)
291+
assert_equal("ruby_array", error.str1)
292+
assert_equal(1, error.int1)
293+
else
294+
assert_equal("Fatal error: Extra content at the end of the document at :1.", error.message)
295+
assert_equal(LibXML::XML::Error::DOCUMENT_END, error.code)
296+
assert_nil(error.str1)
297+
assert_equal(0, error.int1)
298+
end
285299
assert_equal(LibXML::XML::Error::PARSER, error.domain)
286-
assert_equal(LibXML::XML::Error::DOCUMENT_END, error.code)
287300
assert_equal(LibXML::XML::Error::FATAL, error.level)
288301
assert_nil(error.file)
289302
assert_equal(1, error.line)
290-
assert_nil(error.str1)
291303
assert_nil(error.str2)
292304
assert_nil(error.str3)
293-
assert_equal(0, error.int1)
294305
assert_equal(34, error.int2)
295306
assert_nil(error.node)
296307
end

test/test_reader.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -357,7 +357,7 @@ def test_string_encoding
357357
reader = LibXML::XML::Reader.string(xml, :encoding => LibXML::XML::Encoding::ISO_8859_1)
358358
reader.read
359359

360-
# Encoding is always null for strings, very annoying!
361-
assert_equal(reader.encoding, LibXML::XML::Encoding::NONE)
360+
encoding = windows? ? LibXML::XML::Encoding::ISO_8859_1 : LibXML::XML::Encoding::NONE
361+
assert_equal(reader.encoding, encoding)
362362
end
363363
end

0 commit comments

Comments
 (0)