more tests for index handling

This commit is contained in:
Radu Ioan Fericean
2015-07-13 18:23:01 +03:00
parent 5c1c066996
commit 1b5320da6f
2 changed files with 77 additions and 1 deletions

View File

@@ -256,7 +256,6 @@ func (um *UserMap) deleteIndex(up *UserProfile) {
}
continue
}
for k, v := range up.Profile {
if k == index && v != "" {
indexKey := utils.ConcatenatedKey(k, v)

View File

@@ -424,3 +424,80 @@ func TestUsersGetMissingIdTwoINdex(t *testing.T) {
t.Error("error getting users: ", results)
}
}
func TestUsersAddUpdateRemoveIndexes(t *testing.T) {
tm := newUserMap(ratingStorage)
var r string
tm.AddIndex([]string{"t"}, &r)
if len(tm.index) != 0 {
t.Error("error adding indexes: ", tm.index)
}
tm.SetUser(UserProfile{
Tenant: "test",
UserName: "user",
Profile: map[string]string{
"t": "v",
},
}, &r)
if len(tm.index) != 1 || !tm.index["t:v"]["test:user"] {
t.Error("error adding indexes: ", tm.index)
}
tm.SetUser(UserProfile{
Tenant: "test",
UserName: "best",
Profile: map[string]string{
"t": "v",
},
}, &r)
if len(tm.index) != 1 ||
!tm.index["t:v"]["test:user"] ||
!tm.index["t:v"]["test:best"] {
t.Error("error adding indexes: ", tm.index)
}
tm.UpdateUser(UserProfile{
Tenant: "test",
UserName: "best",
Profile: map[string]string{
"t": "v1",
},
}, &r)
if len(tm.index) != 2 ||
!tm.index["t:v"]["test:user"] ||
!tm.index["t:v1"]["test:best"] {
t.Error("error adding indexes: ", tm.index)
}
tm.UpdateUser(UserProfile{
Tenant: "test",
UserName: "best",
Profile: map[string]string{
"t": "v",
},
}, &r)
if len(tm.index) != 1 ||
!tm.index["t:v"]["test:user"] ||
!tm.index["t:v"]["test:best"] {
t.Error("error adding indexes: ", tm.index)
}
tm.RemoveUser(UserProfile{
Tenant: "test",
UserName: "best",
Profile: map[string]string{
"t": "v",
},
}, &r)
if len(tm.index) != 1 ||
!tm.index["t:v"]["test:user"] ||
tm.index["t:v"]["test:best"] {
t.Error("error adding indexes: ", tm.index)
}
tm.RemoveUser(UserProfile{
Tenant: "test",
UserName: "user",
Profile: map[string]string{
"t": "v",
},
}, &r)
if len(tm.index) != 0 {
t.Error("error adding indexes: ", tm.index)
}
}