added TestInsertProfileItems
This commit is contained in:
parent
5a586eb67a
commit
09c5f3a14c
@ -19,6 +19,7 @@ import (
|
||||
"git.grassecon.net/grassrootseconomics/sarafu-api/models"
|
||||
"git.grassecon.net/grassrootseconomics/sarafu-api/testutil/mocks"
|
||||
"git.grassecon.net/grassrootseconomics/sarafu-api/testutil/testservice"
|
||||
"git.grassecon.net/grassrootseconomics/sarafu-vise/profile"
|
||||
"git.grassecon.net/grassrootseconomics/sarafu-vise/store"
|
||||
storedb "git.grassecon.net/grassrootseconomics/sarafu-vise/store/db"
|
||||
|
||||
@ -3357,3 +3358,46 @@ func TestConstructAccountAlias(t *testing.T) {
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestInsertProfileItems(t *testing.T) {
|
||||
ctx, store := InitializeTestStore(t)
|
||||
sessionId := "session123"
|
||||
mockState := state.NewState(128)
|
||||
|
||||
fm, err := NewFlagManager(flagsPath)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
profileDataKeys := []storedb.DataTyp{
|
||||
storedb.DATA_FIRST_NAME,
|
||||
storedb.DATA_FAMILY_NAME,
|
||||
storedb.DATA_GENDER,
|
||||
storedb.DATA_YOB,
|
||||
storedb.DATA_LOCATION,
|
||||
storedb.DATA_OFFERINGS,
|
||||
}
|
||||
|
||||
profileItems := []string{"John", "Doe", "Male", "1990", "Nairobi", "Software"}
|
||||
|
||||
h := &MenuHandlers{
|
||||
userdataStore: store,
|
||||
flagManager: fm,
|
||||
st: mockState,
|
||||
profile: &profile.Profile{
|
||||
ProfileItems: profileItems,
|
||||
Max: 6,
|
||||
},
|
||||
}
|
||||
|
||||
res := &resource.Result{}
|
||||
err = h.insertProfileItems(ctx, sessionId, res)
|
||||
require.NoError(t, err)
|
||||
|
||||
// Loop through profileDataKeys to validate stored values
|
||||
for i, key := range profileDataKeys {
|
||||
storedValue, err := store.ReadEntry(ctx, sessionId, key)
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, profileItems[i], string(storedValue))
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user