diff options
| author | Kyle Consalus <consalus@gmail.com> | 2010-03-23 09:43:20 -0700 |
|---|---|---|
| committer | Kyle Consalus <consalus@gmail.com> | 2010-03-23 09:43:20 -0700 |
| commit | 3515ef9d3b3cc90214cb2fe8e4df55c9d775a8f5 (patch) | |
| tree | 46d11280b7ae68d9f661804937cc50509fe45a59 /src/pkg/xml/xml_test.go | |
| parent | 7a35908d56fb8a0c06db4fdc2b70640862e75642 (diff) | |
| download | golang-3515ef9d3b3cc90214cb2fe8e4df55c9d775a8f5.tar.gz | |
xml: add CopyToken
R=rsc
CC=golang-dev
http://codereview.appspot.com/634042
Committer: Russ Cox <rsc@golang.org>
Diffstat (limited to 'src/pkg/xml/xml_test.go')
| -rw-r--r-- | src/pkg/xml/xml_test.go | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/pkg/xml/xml_test.go b/src/pkg/xml/xml_test.go index 3749a3a53..37538cbe9 100644 --- a/src/pkg/xml/xml_test.go +++ b/src/pkg/xml/xml_test.go @@ -328,3 +328,29 @@ func TestUnquotedAttrs(t *testing.T) { t.Errorf("Unexpected attribute name: %v", attr.Name.Local) } } + +func TestCopyTokenCharData(t *testing.T) { + data := []byte("same data") + var tok1 Token = CharData(data) + tok2 := CopyToken(tok1) + if !reflect.DeepEqual(tok1, tok2) { + t.Error("CopyToken(CharData) != CharData") + } + data[1] = 'o' + if reflect.DeepEqual(tok1, tok2) { + t.Error("CopyToken(CharData) uses same buffer.") + } +} + +func TestCopyTokenStartElement(t *testing.T) { + elt := StartElement{Name{"", "hello"}, []Attr{Attr{Name{"", "lang"}, "en"}}} + var tok1 Token = elt + tok2 := CopyToken(tok1) + if !reflect.DeepEqual(tok1, tok2) { + t.Error("CopyToken(StartElement) != StartElement") + } + elt.Attr[0] = Attr{Name{"", "lang"}, "de"} + if reflect.DeepEqual(tok1, tok2) { + t.Error("CopyToken(CharData) uses same buffer.") + } +} |
