github.com/goravel/framework@v1.13.9/crypt/aes_test.go (about) 1 package crypt 2 3 import ( 4 "testing" 5 6 "github.com/stretchr/testify/suite" 7 8 configmock "github.com/goravel/framework/contracts/config/mocks" 9 ) 10 11 type AesTestSuite struct { 12 suite.Suite 13 aes *AES 14 } 15 16 func TestAesTestSuite(t *testing.T) { 17 mockConfig := &configmock.Config{} 18 mockConfig.On("GetString", "app.key").Return("11111111111111111111111111111111").Once() 19 suite.Run(t, &AesTestSuite{ 20 aes: NewAES(mockConfig), 21 }) 22 mockConfig.AssertExpectations(t) 23 } 24 25 func (s *AesTestSuite) SetupTest() { 26 27 } 28 29 func (s *AesTestSuite) TestEncryptString() { 30 encryptString, err := s.aes.EncryptString("Goravel") 31 s.NoError(err) 32 s.NotEmpty(encryptString) 33 } 34 35 func (s *AesTestSuite) TestDecryptString() { 36 payload, err := s.aes.EncryptString("Goravel") 37 s.NoError(err) 38 s.NotEmpty(payload) 39 40 value, err := s.aes.DecryptString(payload) 41 s.NoError(err) 42 s.Equal("Goravel", value) 43 44 _, err = s.aes.DecryptString("Goravel") 45 s.Error(err) 46 47 _, err = s.aes.DecryptString("R29yYXZlbA==") 48 s.Error(err) 49 50 _, err = s.aes.DecryptString("eyJpIjoiMTIzNDUiLCJ2YWx1ZSI6IjEyMzQ1In0=") 51 s.Error(err) 52 53 _, err = s.aes.DecryptString("eyJpdiI6IjEyMzQ1IiwidiI6IjEyMzQ1In0=") 54 s.Error(err) 55 56 _, err = s.aes.DecryptString("eyJpdiI6IjEyMzQ1IiwidmFsdWUiOiIxMjM0NSJ9") 57 s.Error(err) 58 }