func testLoadUserWithNoKeys(t *testing.T, g *libkb.GlobalContext) { // The LoadUser class in libkb returns an error by default if the user in // question has no keys. The RPC methods that wrap it should suppress this // error, by setting the PublicKeyOptional flag. cli, err := client.GetUserClient(g) if err != nil { t.Fatalf("failed to get a user client: %v", err) } // Check the LoadUserByName RPC. t_ellen is a test user with no keys. loadUserByNameArg := keybase1.LoadUserByNameArg{Username: "******"} tEllen, err := cli.LoadUserByName(context.TODO(), loadUserByNameArg) if err != nil { t.Fatal(err) } if tEllen.Username != "t_ellen" { t.Fatalf("expected t_ellen, saw %s", tEllen.Username) } // Check the LoadUser RPC. loadUserArg := keybase1.LoadUserArg{Uid: tEllen.Uid} tEllen2, err := cli.LoadUser(context.TODO(), loadUserArg) if err != nil { t.Fatal(err) } if tEllen2.Username != "t_ellen" { t.Fatalf("expected t_ellen, saw %s", tEllen2.Username) } }
func testLoadAllPublicKeysUnverified(t *testing.T, g *libkb.GlobalContext) { cli, err := client.GetUserClient(g) if err != nil { t.Fatalf("failed to get user client: %s", err) } // t_rosetta arg := keybase1.LoadAllPublicKeysUnverifiedArg{Uid: keybase1.UID("b8939251cb3d367e68587acb33a64d19")} res, err := cli.LoadAllPublicKeysUnverified(context.TODO(), arg) if err != nil { t.Fatalf("failed to make load keys call: %s", err) } if len(res) != 3 { t.Fatalf("wrong amount of keys loaded: %d != %d", len(res), 3) } keys := map[keybase1.KID]bool{ keybase1.KID("0101fe1183765f256289427d6943cd8bab3b5fe095bcdd27f031ed298da523efd3120a"): true, keybase1.KID("0101b5839c4ccaa9d03b3016b9aa73a7e3eafb067f9c86c07a6f2f79cb8558b1c97f0a"): true, keybase1.KID("0101188ee7e63ccbd05af498772ab2975ee29df773240d17dde09aecf6c132a5a9a60a"): true, } for _, key := range res { if _, ok := keys[key.KID]; !ok { t.Fatalf("unknown key in response: %s", key.KID) } } }