|  | // 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 json | 
|  |  | 
|  | import ( | 
|  | "bytes" | 
|  | "testing" | 
|  | ) | 
|  |  | 
|  | func FuzzEqualFold(f *testing.F) { | 
|  | for _, ss := range [][2]string{ | 
|  | {"", ""}, | 
|  | {"123abc", "123ABC"}, | 
|  | {"αβδ", "ΑΒΔ"}, | 
|  | {"abc", "xyz"}, | 
|  | {"abc", "XYZ"}, | 
|  | {"1", "2"}, | 
|  | {"hello, world!", "hello, world!"}, | 
|  | {"hello, world!", "Hello, World!"}, | 
|  | {"hello, world!", "HELLO, WORLD!"}, | 
|  | {"hello, world!", "jello, world!"}, | 
|  | {"γειά, κόσμε!", "γειά, κόσμε!"}, | 
|  | {"γειά, κόσμε!", "Γειά, Κόσμε!"}, | 
|  | {"γειά, κόσμε!", "ΓΕΙΆ, ΚΌΣΜΕ!"}, | 
|  | {"γειά, κόσμε!", "ΛΕΙΆ, ΚΌΣΜΕ!"}, | 
|  | {"AESKey", "aesKey"}, | 
|  | {"AESKEY", "aes_key"}, | 
|  | {"aes_key", "AES_KEY"}, | 
|  | {"AES_KEY", "aes-key"}, | 
|  | {"aes-key", "AES-KEY"}, | 
|  | {"AES-KEY", "aesKey"}, | 
|  | {"aesKey", "AesKey"}, | 
|  | {"AesKey", "AESKey"}, | 
|  | {"AESKey", "aeskey"}, | 
|  | {"DESKey", "aeskey"}, | 
|  | {"AES Key", "aeskey"}, | 
|  | } { | 
|  | f.Add([]byte(ss[0]), []byte(ss[1])) | 
|  | } | 
|  | equalFold := func(x, y []byte) bool { return string(foldName(x)) == string(foldName(y)) } | 
|  | f.Fuzz(func(t *testing.T, x, y []byte) { | 
|  | got := equalFold(x, y) | 
|  | want := bytes.EqualFold(x, y) | 
|  | if got != want { | 
|  | t.Errorf("equalFold(%q, %q) = %v, want %v", x, y, got, want) | 
|  | } | 
|  | }) | 
|  | } |