summaryrefslogtreecommitdiff
path: root/src/lib/bytes/bytes_test.go
diff options
context:
space:
mode:
authorRob Pike <r@golang.org>2009-06-09 09:53:44 -0700
committerRob Pike <r@golang.org>2009-06-09 09:53:44 -0700
commit7249ea4df2b4f12a4e7ed446f270cea87e4ffd34 (patch)
tree7032a11d0cac2ae4d3e90f7a189b575b5a50f848 /src/lib/bytes/bytes_test.go
parentacf6ef7a82b3fe61516a1bac4563706552bdf078 (diff)
downloadgolang-7249ea4df2b4f12a4e7ed446f270cea87e4ffd34.tar.gz
mv src/lib to src/pkg
tests: all.bash passes, gobuild still works, godoc still works. R=rsc OCL=30096 CL=30102
Diffstat (limited to 'src/lib/bytes/bytes_test.go')
-rw-r--r--src/lib/bytes/bytes_test.go157
1 files changed, 0 insertions, 157 deletions
diff --git a/src/lib/bytes/bytes_test.go b/src/lib/bytes/bytes_test.go
deleted file mode 100644
index 4e7cdfad6..000000000
--- a/src/lib/bytes/bytes_test.go
+++ /dev/null
@@ -1,157 +0,0 @@
-// Copyright 2009 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-package bytes
-
-import (
- "bytes";
- "io";
- "testing";
-)
-
-func eq(a, b []string) bool {
- if len(a) != len(b) {
- return false;
- }
- for i := 0; i < len(a); i++ {
- if a[i] != b[i] {
- return false;
- }
- }
- return true;
-}
-
-func arrayOfString(a [][]byte) []string {
- result := make([]string, len(a));
- for j := 0; j < len(a); j++ {
- result[j] = string(a[j])
- }
- return result
-}
-
-// For ease of reading, the test cases use strings that are converted to byte
-// arrays before invoking the functions.
-
-var abcd = "abcd"
-var faces = "☺☻☹"
-var commas = "1,2,3,4"
-var dots = "1....2....3....4"
-
-type CompareTest struct {
- a string;
- b string;
- cmp int;
-}
-var comparetests = []CompareTest {
- CompareTest{ "", "", 0 },
- CompareTest{ "a", "", 1 },
- CompareTest{ "", "a", -1 },
- CompareTest{ "abc", "abc", 0 },
- CompareTest{ "ab", "abc", -1 },
- CompareTest{ "abc", "ab", 1 },
- CompareTest{ "x", "ab", 1 },
- CompareTest{ "ab", "x", -1 },
- CompareTest{ "x", "a", 1 },
- CompareTest{ "b", "x", -1 },
-}
-
-func TestCompare(t *testing.T) {
- for i := 0; i < len(comparetests); i++ {
- tt := comparetests[i];
- a := io.StringBytes(tt.a);
- b := io.StringBytes(tt.b);
- cmp := Compare(a, b);
- eql := Equal(a, b);
- if cmp != tt.cmp {
- t.Errorf(`Compare(%q, %q) = %v`, tt.a, tt.b, cmp);
- }
- if eql != (tt.cmp==0) {
- t.Errorf(`Equal(%q, %q) = %v`, tt.a, tt.b, eql);
- }
- }
-}
-
-
-type ExplodeTest struct {
- s string;
- a []string;
-}
-var explodetests = []ExplodeTest {
- ExplodeTest{ abcd, []string{"a", "b", "c", "d"} },
- ExplodeTest{ faces, []string{"☺", "☻", "☹" } },
-}
-func TestExplode(t *testing.T) {
- for i := 0; i < len(explodetests); i++ {
- tt := explodetests[i];
- a := Explode(io.StringBytes(tt.s));
- result := arrayOfString(a);
- if !eq(result, tt.a) {
- t.Errorf(`Explode("%s") = %v; want %v`, tt.s, result, tt.a);
- continue;
- }
- s := Join(a, []byte{});
- if string(s) != tt.s {
- t.Errorf(`Join(Explode("%s"), "") = "%s"`, tt.s, s);
- }
- }
-}
-
-
-type SplitTest struct {
- s string;
- sep string;
- a []string;
-}
-var splittests = []SplitTest {
- SplitTest{ abcd, "a", []string{"", "bcd"} },
- SplitTest{ abcd, "z", []string{"abcd"} },
- SplitTest{ abcd, "", []string{"a", "b", "c", "d"} },
- SplitTest{ commas, ",", []string{"1", "2", "3", "4"} },
- SplitTest{ dots, "...", []string{"1", ".2", ".3", ".4"} },
- SplitTest{ faces, "☹", []string{"☺☻", ""} },
- SplitTest{ faces, "~", []string{faces} },
- SplitTest{ faces, "", []string{"☺", "☻", "☹"} },
-}
-func TestSplit(t *testing.T) {
- for i := 0; i < len(splittests); i++ {
- tt := splittests[i];
- a := Split(io.StringBytes(tt.s), io.StringBytes(tt.sep));
- result := arrayOfString(a);
- if !eq(result, tt.a) {
- t.Errorf(`Split("%s", "%s") = %v; want %v`, tt.s, tt.sep, result, tt.a);
- continue;
- }
- s := Join(a, io.StringBytes(tt.sep));
- if string(s) != tt.s {
- t.Errorf(`Join(Split("%s", "%s"), "%s") = "%s"`, tt.s, tt.sep, tt.sep, s);
- }
- }
-}
-
-type CopyTest struct {
- a string;
- b string;
- res string;
-}
-var copytests = []CopyTest {
- CopyTest{ "", "", "" },
- CopyTest{ "a", "", "a" },
- CopyTest{ "a", "a", "a" },
- CopyTest{ "a", "b", "b" },
- CopyTest{ "xyz", "abc", "abc" },
- CopyTest{ "wxyz", "abc", "abcz" },
-}
-
-func TestCopy(t *testing.T) {
- for i := 0; i < len(copytests); i++ {
- tt := copytests[i];
- dst := io.StringBytes(tt.a);
- Copy(dst, io.StringBytes(tt.b));
- result := string(dst);
- if result != tt.res {
- t.Errorf(`Copy("%s", "%s") = "%s"; want "%s"`, tt.a, tt.b, result, tt.res);
- continue;
- }
- }
-}