Browse Source

Merge branch 'peer-test-coverage' of gpestana/cwtch into master

pull/90/head
Sarah Jamie Lewis Gogs 1 year ago
parent
commit
7974bf4a4d
1 changed files with 49 additions and 0 deletions
  1. +49
    -0
      peer/cwtch_peer_test.go

+ 49
- 0
peer/cwtch_peer_test.go View File

@@ -23,3 +23,52 @@ func TestCwtchPeerGenerate(t *testing.T) {
t.Logf("Imported Group: %v, err := %v %v", group, err, importedGroupID)

}

func TestTrustPeer(t *testing.T) {
groupName := "test.server"
alice := NewCwtchPeer("alice", "alicepass")
bob := NewCwtchPeer("bob", "bobpass")

bobOnion := bob.GetProfile().Onion
aliceOnion := alice.GetProfile().Onion

groupID, _, err := alice.StartGroup(groupName)
if err != nil {
t.Error(err)
}

groupAlice := alice.GetGroup(groupID)
if groupAlice.GroupID != groupID {
t.Errorf("Alice should be part of group %v, got %v instead", groupID, groupAlice)
}

exportedGroup, err := alice.ExportGroup(groupID)
if err != nil {
t.Error(err)
}

err = alice.InviteOnionToGroup(bobOnion, groupID)
if err == nil {
t.Errorf("onion invitation should fail since alice does no trust bob")
}

err = alice.TrustPeer(bobOnion)
if err == nil {
t.Errorf("trust peer should fail since alice does not know about bob")
}

// bob adds alice contact by importing serialized group created by alice
_, err = bob.ImportGroup(exportedGroup)
if err != nil {
t.Error(err)
}
err = bob.TrustPeer(aliceOnion)
if err != nil {
t.Errorf("bob must be able to trust alice, got %v", err)
}

err = bob.InviteOnionToGroup(aliceOnion, groupID)
if err == nil {
t.Errorf("bob trusts alice but peer connection is not ready yet. should not be able to invite her to group, instead got: %v", err)
}
}

Loading…
Cancel
Save