github.com/status-im/status-go@v1.1.0/protocol/messenger_walletconnect_test.go (about) 1 package protocol 2 3 import ( 4 "testing" 5 6 "github.com/stretchr/testify/suite" 7 8 "github.com/status-im/status-go/protocol/requests" 9 ) 10 11 func TestWalletConnectSessionsSuite(t *testing.T) { 12 suite.Run(t, new(WalletConnectSessionsSuite)) 13 } 14 15 type WalletConnectSessionsSuite struct { 16 MessengerBaseTestSuite 17 } 18 19 func (s *WalletConnectSessionsSuite) TestCreateReadAndDeleteSessions() { 20 peerID1 := "0643983b-0000-2222-1111-b05fdac338zd1" 21 peerID2 := "0643983b-0000-2222-1111-b05fdac338zd2" 22 23 dappName1 := "b" 24 dappName2 := "a" 25 url := "some-url" 26 27 sessionInfo := "some dummy text that looks like a json" 28 29 wcSession1 := &requests.AddWalletConnectSession{ 30 PeerID: peerID1, 31 DAppName: dappName1, 32 DAppURL: url, 33 Info: sessionInfo, 34 } 35 36 wcSession2 := &requests.AddWalletConnectSession{ 37 PeerID: peerID2, 38 DAppName: dappName2, 39 DAppURL: url, 40 Info: sessionInfo, 41 } 42 43 err := s.m.AddWalletConnectSession(wcSession1) 44 s.Require().NoError(err) 45 46 err = s.m.AddWalletConnectSession(wcSession2) 47 s.Require().NoError(err) 48 49 response, err := s.m.GetWalletConnectSession() 50 s.Require().NoError(err) 51 s.Require().NotNil(response) 52 s.Require().Len(response, 2) 53 s.Require().Equal(response[0].PeerID, peerID2) 54 s.Require().Equal(response[0].DAppName, dappName2) 55 s.Require().Equal(response[0].DAppURL, url) 56 s.Require().Equal(response[0].Info, sessionInfo) 57 s.Require().Equal(response[1].PeerID, peerID1) 58 s.Require().Equal(response[1].DAppName, dappName1) 59 s.Require().Equal(response[1].DAppURL, url) 60 s.Require().Equal(response[1].Info, sessionInfo) 61 62 errWhileDeletion := s.m.DestroyWalletConnectSession(peerID1) 63 s.Require().NoError(errWhileDeletion) 64 65 shouldNotBeEmpty, errWhileFetchingAgain := s.m.GetWalletConnectSession() 66 s.Require().NoError(errWhileFetchingAgain) 67 s.Require().NotNil(shouldNotBeEmpty) 68 s.Require().Len(shouldNotBeEmpty, 1) 69 s.Require().Equal(shouldNotBeEmpty[0].PeerID, peerID2) 70 }