Skip to content

Commit fc83f78

Browse files
test #405 for sqlite
1 parent 4eb106c commit fc83f78

File tree

3 files changed

+36
-3
lines changed

3 files changed

+36
-3
lines changed

ktorm-support-sqlite/src/test/kotlin/org/ktorm/support/sqlite/CommonTest.kt

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,12 @@ package org.ktorm.support.sqlite
33
import org.junit.Test
44
import org.ktorm.database.use
55
import org.ktorm.dsl.*
6-
import org.ktorm.entity.count
7-
import org.ktorm.entity.find
6+
import org.ktorm.entity.*
87
import org.ktorm.schema.Table
8+
import org.ktorm.schema.int
99
import org.ktorm.schema.varchar
1010
import java.time.LocalDate
11+
import kotlin.test.assertEquals
1112

1213
/**
1314
* Created by vince on Dec 12, 2018.
@@ -169,4 +170,29 @@ class CommonTest : BaseSQLiteTest() {
169170
println(employee)
170171
}
171172
}
173+
174+
interface TestMultiGeneratedKey : Entity<TestMultiGeneratedKey> {
175+
var id: Int
176+
var k: String
177+
var v: String
178+
}
179+
180+
object TestMultiGeneratedKeys : Table<TestMultiGeneratedKey>("t_multi_generated_key") {
181+
val id = int("id").primaryKey().bindTo { it.id }
182+
val k = varchar("k").bindTo { it.k }
183+
val v = varchar("v").bindTo { it.v }
184+
}
185+
186+
@Test
187+
fun testMultiGeneratedKey() {
188+
val e = Entity.create<TestMultiGeneratedKey>()
189+
e.v = "test~~"
190+
database.sequenceOf(TestMultiGeneratedKeys).add(e)
191+
192+
val e1 = database.sequenceOf(TestMultiGeneratedKeys).first()
193+
println(e1)
194+
assertEquals(1, e1.id)
195+
assertEquals("test~~", e1.v)
196+
assert(e1.k.isNotEmpty())
197+
}
172198
}
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
drop table if exists "t_department";
22
drop table if exists "t_employee";
3-
drop table if exists "t_employee0";
3+
drop table if exists "t_employee0";
4+
drop table if exists "t_multi_generated_key";

ktorm-support-sqlite/src/test/resources/init-sqlite-data.sql

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,12 @@ create table t_employee(
1515
department_id integer not null
1616
);
1717

18+
create table t_multi_generated_key(
19+
id integer primary key autoincrement,
20+
k text not null default ((strftime('%s','now'))),
21+
v text not null
22+
);
23+
1824
insert into t_department(name, location) values ('tech', 'Guangzhou');
1925
insert into t_department(name, location) values ('finance', 'Beijing');
2026

0 commit comments

Comments
 (0)