github.com/status-im/status-go@v1.1.0/protocol/identity/identicon/identicon_test.go (about) 1 package identicon 2 3 import ( 4 "crypto/md5" // nolint: gosec 5 "reflect" 6 "testing" 7 ) 8 9 var GeneratedPattern = []byte{ 10 129, 201, 130, 201, 129, 11 56, 157, 244, 157, 56, 12 232, 187, 241, 187, 232, 13 183, 61, 165, 61, 183, 14 149, 108, 179, 108, 149, 15 } 16 17 var GeneratedBitmap = []byte{ 18 0, 0, 1, 0, 0, 19 1, 0, 1, 0, 1, 20 1, 0, 0, 0, 1, 21 0, 0, 0, 0, 0, 22 0, 1, 0, 1, 0, 23 } 24 25 var GeneratedHash = md5.Sum([]byte("Culona")) // nolint: gosec 26 27 func TestItGeneratesAPatternFromAListOfBytes(t *testing.T) { 28 pattern := generatePatternFromHash(GeneratedHash) 29 30 if !reflect.DeepEqual(GeneratedPattern, pattern) { 31 t.Fatal("Failing asserting equality of pattern.") 32 } 33 } 34 35 func TestItGeneratesABitMapFromPattern(t *testing.T) { 36 bitmap := convertPatternToBinarySwitch(GeneratedPattern) 37 38 if !reflect.DeepEqual(GeneratedBitmap, bitmap) { 39 t.Fatal("Failing asserting equality of bitmap.") 40 } 41 } 42 43 func TestItGeneratesAnIdenticonFromString(t *testing.T) { 44 identicon := generate("Culona") 45 46 if !reflect.DeepEqual(GeneratedBitmap, identicon.bitmap) { 47 t.Fatal("Failing asserting that the identicon has a valid bitmap.") 48 } 49 }