diff options
author | Ian Lance Taylor <ian@gcc.gnu.org> | 2017-04-17 22:10:58 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2017-04-17 22:10:58 +0000 |
commit | ea250f561291c184423c4372041c067f5233fa5c (patch) | |
tree | a190311458c423b71ed9f800fd5bd43faa7dccc3 /libgo/go/encoding/xml/xml_test.go | |
parent | 1adb82e11762ce349eeaee1051ea3c379a453b2e (diff) | |
download | gcc-ea250f561291c184423c4372041c067f5233fa5c.zip gcc-ea250f561291c184423c4372041c067f5233fa5c.tar.gz gcc-ea250f561291c184423c4372041c067f5233fa5c.tar.bz2 |
libgo: update to Go 1.8.1 release
Reviewed-on: https://go-review.googlesource.com/40775
From-SVN: r246957
Diffstat (limited to 'libgo/go/encoding/xml/xml_test.go')
-rw-r--r-- | libgo/go/encoding/xml/xml_test.go | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/libgo/go/encoding/xml/xml_test.go b/libgo/go/encoding/xml/xml_test.go index dad6ed9..f43a5e7 100644 --- a/libgo/go/encoding/xml/xml_test.go +++ b/libgo/go/encoding/xml/xml_test.go @@ -797,3 +797,37 @@ func TestIssue12417(t *testing.T) { } } } + +func TestIssue19333(t *testing.T) { + type X struct { + XMLName Name `xml:"X"` + A int `xml:",attr"` + C int + } + + var tests = []struct { + input string + ok bool + }{ + {`<X></X>`, true}, + {`<X A=""></X>`, true}, + {`<X A="bad"></X>`, true}, + {`<X></X>`, true}, + {`<X><C></C></X>`, false}, + {`<X><C/></X>`, false}, + {`<X><C>bad</C></X>`, false}, + } + + for _, tt := range tests { + err := Unmarshal([]byte(tt.input), new(X)) + if tt.ok { + if err != nil { + t.Errorf("%s: unexpected error: %v", tt.input, err) + } + } else { + if err == nil { + t.Errorf("%s: unexpected success", tt.input) + } + } + } +} |