// Copyright 2013 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 collate_test import ( "fmt" "testing" "golang.org/x/text/collate" "golang.org/x/text/language" ) func ExampleCollator_Strings() { c := collate.New(language.Und) strings := []string{ "ad", "ab", "äb", "ac", } c.SortStrings(strings) fmt.Println(strings) // Output: [ab äb ac ad] } type sorter []string func (s sorter) Len() int { return len(s) } func (s sorter) Swap(i, j int) { s[j], s[i] = s[i], s[j] } func (s sorter) Bytes(i int) []byte { return []byte(s[i]) } func TestSort(t *testing.T) { c := collate.New(language.English) strings := []string{ "bcd", "abc", "ddd", } c.Sort(sorter(strings)) res := fmt.Sprint(strings) want := "[abc bcd ddd]" if res != want { t.Errorf("found %s; want %s", res, want) } }