Add tests for duplicate entries

This commit is contained in:
Till Faelligen 2022-05-09 14:17:36 +02:00
parent 28e4f677c1
commit c89e06bd6f
2 changed files with 13 additions and 8 deletions

View file

@ -48,14 +48,17 @@ func Test_EventStateKeysTable(t *testing.T) {
// create some dummy data
for i := 0; i < 10; i++ {
stateKey := fmt.Sprintf("@user%d:localhost", i)
stateKeyNID, err = tab.InsertEventStateKeyNID(
ctx, nil, stateKey,
)
stateKeyNID, err = tab.InsertEventStateKeyNID(ctx, nil, stateKey)
assert.NoError(t, err)
gotEventStateKey, err = tab.SelectEventStateKeyNID(ctx, nil, stateKey)
assert.NoError(t, err)
assert.Equal(t, stateKeyNID, gotEventStateKey)
}
// This should fail, since @user0:localhost already exists
stateKey := fmt.Sprintf("@user%d:localhost", 0)
_, err = tab.InsertEventStateKeyNID(ctx, nil, stateKey)
assert.Error(t, err)
stateKeyNIDsMap, err := tab.BulkSelectEventStateKeyNID(ctx, nil, []string{"@user0:localhost", "@user1:localhost"})
assert.NoError(t, err)
wantStateKeyNIDs := make([]types.EventStateKeyNID, 0, len(stateKeyNIDsMap))

View file

@ -49,16 +49,18 @@ func Test_EventTypesTable(t *testing.T) {
eventTypeMap := make(map[string]types.EventTypeNID)
for i := 0; i < 10; i++ {
eventType := fmt.Sprintf("dummyEventType%d", i)
if eventTypeNID, err = tab.InsertEventTypeNID(
ctx, nil, eventType,
); err != nil {
t.Fatalf("unable to insert eventJSON: %s", err)
}
eventTypeNID, err = tab.InsertEventTypeNID(ctx, nil, eventType)
assert.NoError(t, err)
eventTypeMap[eventType] = eventTypeNID
gotEventTypeNID, err = tab.SelectEventTypeNID(ctx, nil, eventType)
assert.NoError(t, err)
assert.Equal(t, eventTypeNID, gotEventTypeNID)
}
// This should fail, since the dummyEventType0 already exists
eventType := fmt.Sprintf("dummyEventType%d", 0)
_, err = tab.InsertEventTypeNID(ctx, nil, eventType)
assert.Error(t, err)
eventTypeNIDs, err := tab.BulkSelectEventTypeNID(ctx, nil, []string{"dummyEventType0", "dummyEventType3"})
assert.NoError(t, err)
// verify that BulkSelectEventTypeNID and InsertEventTypeNID return the same values