func UpdateUser(t *testing.T, store UpdateUserStore) { var first, second vsafe.User var firstResult, secondResult vsafe.User createUsers(t, store, &first, &second) first.Name = "John Doe" first.Key = "John Doe Key" if err := store.UpdateUser(nil, &first); err != nil { t.Fatalf("Got error updating user: %v", err) } if err := store.UserById(nil, first.Id, &firstResult); err != nil { t.Fatalf("Got error reading database by id: %v", err) } if err := store.UserById(nil, second.Id, &secondResult); err != nil { t.Fatalf("Got error reading database by id: %v", err) } assertUserEqual(t, &first, &firstResult) assertUserEqual(t, &second, &secondResult) if err := store.UserById(nil, kBadId, &firstResult); err != vsafedb.ErrNoSuchId { t.Errorf("Expected ErrNoSuchId, got %v", err) } }