github.com/glide-im/glide@v1.6.0/pkg/gate/client_test.go (about) 1 package gate 2 3 import ( 4 "crypto/sha512" 5 "github.com/glide-im/glide/pkg/hash" 6 "github.com/stretchr/testify/assert" 7 "testing" 8 "time" 9 ) 10 11 func TestNewID(t *testing.T) { 12 id := NewID("gate", "uid", "dev") 13 assert.Equal(t, "gate_uid_dev", string(id)) 14 } 15 16 func TestID_SetGateway(t *testing.T) { 17 id := NewID2("empty-uid") 18 suc := id.SetGateway("gateway") 19 20 assert.True(t, suc) 21 assert.Equal(t, "gateway_empty-uid_", string(id)) 22 } 23 24 func TestID_SetDevice(t *testing.T) { 25 id := NewID2("empty-uid") 26 suc := id.SetDevice("device") 27 28 assert.True(t, suc) 29 assert.Equal(t, "_empty-uid_device", string(id)) 30 } 31 32 func TestID_IsTemp(t *testing.T) { 33 id := NewID2(tempIdPrefix + "temp-uid") 34 assert.True(t, id.IsTemp()) 35 36 id = NewID2("uid") 37 assert.False(t, id.IsTemp()) 38 } 39 40 func TestID_UID(t *testing.T) { 41 id := NewID2("uid") 42 assert.Equal(t, "uid", id.UID()) 43 } 44 45 func TestID_Gateway(t *testing.T) { 46 id := NewID("gate", "uid", "dev") 47 assert.Equal(t, "gate", id.Gateway()) 48 49 id = NewID2("uid") 50 assert.Equal(t, "", id.Gateway()) 51 } 52 53 func TestAesCBC_Decrypt(t *testing.T) { 54 55 key := sha512.New().Sum([]byte("secret_key")) 56 cbcCrypto := NewAesCBCCrypto(key) 57 58 credentials := ClientAuthCredentials{ 59 Type: 1, 60 UserID: "", 61 DeviceID: "1", 62 DeviceName: "iPhone 6s", 63 Secrets: &ClientSecrets{ 64 MessageDeliverSecret: "secret", 65 }, 66 ConnectionID: "1", 67 Timestamp: time.Now().UnixMilli(), 68 } 69 encryptCredentials, err := cbcCrypto.EncryptCredentials(&credentials) 70 assert.NoError(t, err) 71 72 t.Log(string(encryptCredentials)) 73 decryptCredentials, err := cbcCrypto.DecryptCredentials(encryptCredentials) 74 assert.NoError(t, err) 75 76 assert.Equal(t, decryptCredentials.UserID, credentials.UserID) 77 } 78 79 func TestGenerateTicket(t *testing.T) { 80 81 secret := "secret" 82 sum1 := hash.SHA1(secret + "to") 83 expectTicket := hash.SHA1(secret + "from" + sum1) 84 85 t.Log(expectTicket) 86 }