WIP: Insert sets PK

This commit is contained in:
2026-05-21 21:57:44 +02:00
parent 4726204413
commit 5d607c3ecb
4 changed files with 86 additions and 69 deletions
+41 -29
View File
@@ -36,14 +36,14 @@ func TestSelectEmpty(t *testing.T) {
return
}
res, err := selectExec.Execute(conn)
err = selectExec.Execute(conn)
if err != nil {
log.LogError("Select failure. %s", err)
t.Fail()
return
}
if len(res) > 0 {
if len(selectExec.GetResult()) > 0 {
log.LogError("Expected empty result.")
t.Fail()
return
@@ -61,7 +61,7 @@ func TestInsertAndSelectSingle(t *testing.T) {
testObj := Test{Int64Field: 54, IntField: 12, StringField: "asdf"}
insertExec, err := exec.NewInsert(orm, testObj)
insertExec, err := exec.NewInsert(orm, &testObj)
if err != nil {
log.LogError("TestInsertAndSelectSingle setup failed: %s", err)
t.Fail()
@@ -76,16 +76,18 @@ func TestInsertAndSelectSingle(t *testing.T) {
}
// WHEN
_, err = insertExec.Execute(conn)
err = insertExec.Execute(conn)
if err != nil {
log.LogError("TestInsertAndSelectSingle insert failed: %s", err)
t.Fail()
return
}
res, err := selectExec.Execute(conn)
err = selectExec.Execute(conn)
// THEN
res := selectExec.GetResult()
if err != nil {
log.LogError("TestInsertAndSelectSingle failure. %s", err)
t.Fail()
@@ -116,7 +118,7 @@ func TestInsertSelectWithCompositePk(t *testing.T) {
testObj := TestWithCompositePk{ID: 12, Name: "Test"}
insertExec, err := exec.NewInsert(orm, testObj)
insertExec, err := exec.NewInsert(orm, &testObj)
if err != nil {
log.LogError("TestInsertSelectWithCompositePk setup failed: %s", err)
t.Fail()
@@ -131,14 +133,15 @@ func TestInsertSelectWithCompositePk(t *testing.T) {
}
// WHEN
_, err = insertExec.Execute(conn)
err = insertExec.Execute(conn)
if err != nil {
log.LogError("TestInsertSelectWithCompositePk insert failed: %s", err)
t.Fail()
return
}
res, err := selectExec.Execute(conn)
err = selectExec.Execute(conn)
res := selectExec.GetResult()
// THEN
if err != nil {
@@ -173,14 +176,14 @@ func TestInsertMultipleAndSelectWithParam(t *testing.T) {
testObj := Test{Int64Field: 54, IntField: 12, StringField: "asdf"}
testObjSecond := Test{Int64Field: 12, IntField: 54, StringField: "fdsa"}
insertExec, err := exec.NewInsert(orm, testObj)
insertExec, err := exec.NewInsert(orm, &testObj)
if err != nil {
log.LogError("TestInsertMultipleAndSelectWithParam setup failed: %s", err)
t.Fail()
return
}
insertSecond, err := exec.NewInsert(orm, testObjSecond)
insertSecond, err := exec.NewInsert(orm, &testObjSecond)
if err != nil {
log.LogError("TestInsertMultipleAndSelectWithParam setup failed: %s", err)
t.Fail()
@@ -196,21 +199,22 @@ func TestInsertMultipleAndSelectWithParam(t *testing.T) {
// WHEN
_, err = insertExec.Execute(conn)
err = insertExec.Execute(conn)
if err != nil {
log.LogError("TestInsertMultipleAndSelectWithParam first insert failed: %s", err)
t.Fail()
return
}
_, err = insertSecond.Execute(conn)
err = insertSecond.Execute(conn)
if err != nil {
log.LogError("TestInsertMultipleAndSelectWithParam second insert failed: %s", err)
t.Fail()
return
}
res, err := selectExec.Execute(conn)
err = selectExec.Execute(conn)
res := selectExec.GetResult()
// THEN
if err != nil {
@@ -243,7 +247,7 @@ func TestInsertAndUpdate(t *testing.T) {
testObj := Test{Int64Field: 54, IntField: 12, StringField: "asdf"}
insertExec, err := exec.NewInsert(orm, testObj)
insertExec, err := exec.NewInsert(orm, &testObj)
if err != nil {
log.LogError("TestInsertAndUpdate setup failed: %s", err)
t.Fail()
@@ -259,14 +263,16 @@ func TestInsertAndUpdate(t *testing.T) {
// WHEN
_, err = insertExec.Execute(conn)
err = insertExec.Execute(conn)
if err != nil {
log.LogError("TestInsertAndUpdate insert failed: %s", err)
t.Fail()
return
}
res, err := selectExec.Execute(conn)
err = selectExec.Execute(conn)
res := selectExec.GetResult()
if err != nil {
log.LogError("TestInsertAndUpdate re-select failed: %s", err)
t.Fail()
@@ -285,8 +291,9 @@ func TestInsertAndUpdate(t *testing.T) {
return
}
_, err = updateExec.Execute(conn)
res, selectErr := selectExec.Execute(conn)
err = updateExec.Execute(conn)
selectErr := selectExec.Execute(conn)
res = selectExec.GetResult()
// THEN
if err != nil {
@@ -326,14 +333,14 @@ func TestInsertAndDelete(t *testing.T) {
testObj := Test{Int64Field: 54, IntField: 12, StringField: "asdf"}
insertExec, err := exec.NewInsert(orm, testObj)
insertExec, err := exec.NewInsert(orm, &testObj)
if err != nil {
log.LogError("TestInsertAndDelete setup failed: %s", err)
t.Fail()
return
}
_, err = insertExec.Execute(conn)
err = insertExec.Execute(conn)
if err != nil {
log.LogError("TestInsertAndDelete setup failed: %s", err)
t.Fail()
@@ -347,7 +354,8 @@ func TestInsertAndDelete(t *testing.T) {
return
}
selectRes, err := selectExec.Execute(conn)
err = selectExec.Execute(conn)
selectRes := selectExec.GetResult()
if err != nil {
log.LogError("TestInsertAndDelete setup failed. %s", err)
@@ -358,7 +366,7 @@ func TestInsertAndDelete(t *testing.T) {
deleteExec, err := exec.NewDelete(orm, selectRes)
// WHEN
_, err = deleteExec.Execute(conn)
err = deleteExec.Execute(conn)
// THEN
if err != nil {
@@ -367,7 +375,9 @@ func TestInsertAndDelete(t *testing.T) {
return
}
selectRes, err = selectExec.Execute(conn)
err = selectExec.Execute(conn)
selectRes = selectExec.GetResult()
if len(selectRes) != 0 {
log.LogError("TestInsertAndDelete test failed. Expected: 0, Actual: %s", len(selectRes))
t.Fail()
@@ -386,7 +396,7 @@ func TestBoolInsertAndSelectSingle(t *testing.T) {
testObj := TestWithBool{BoolField: true}
insertExec, err := exec.NewInsert(orm, testObj)
insertExec, err := exec.NewInsert(orm, &testObj)
if err != nil {
log.LogError("TestBoolInsertAndSelectSingle setup failed: %s", err)
t.Fail()
@@ -401,14 +411,15 @@ func TestBoolInsertAndSelectSingle(t *testing.T) {
}
// WHEN
_, err = insertExec.Execute(conn)
err = insertExec.Execute(conn)
if err != nil {
log.LogError("TestBoolInsertAndSelectSingle insert failed: %s", err)
t.Fail()
return
}
res, err := selectExec.Execute(conn)
err = selectExec.Execute(conn)
res := selectExec.GetResult()
// THEN
if err != nil {
@@ -441,7 +452,7 @@ func TestTimeInsertAndSelectSingle(t *testing.T) {
now := time.Now().UnixMilli()
testObj := TestWithTime{TimeField: now}
insertExec, err := exec.NewInsert(orm, testObj)
insertExec, err := exec.NewInsert(orm, &testObj)
if err != nil {
log.LogError("TestTimeInsertAndSelectSingle setup failed: %s", err)
t.Fail()
@@ -456,14 +467,15 @@ func TestTimeInsertAndSelectSingle(t *testing.T) {
}
// WHEN
_, err = insertExec.Execute(conn)
err = insertExec.Execute(conn)
if err != nil {
log.LogError("TestTimeInsertAndSelectSingle insert failed: %s", err)
t.Fail()
return
}
res, err := selectExec.Execute(conn)
err = selectExec.Execute(conn)
res := selectExec.GetResult()
// THEN
if err != nil {