Skip to content

Commit adb5600

Browse files
separate SQLite dml tests
1 parent a45a092 commit adb5600

File tree

2 files changed

+236
-224
lines changed

2 files changed

+236
-224
lines changed

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

Lines changed: 0 additions & 224 deletions
Original file line numberDiff line numberDiff line change
@@ -39,230 +39,6 @@ class CommonTest : BaseSQLiteTest() {
3939
database.delete(configs) { it.key eq "test" }
4040
}
4141

42-
@Test
43-
fun testInsertOrUpdate() {
44-
database.insertOrUpdate(Employees) {
45-
set(it.id, 1)
46-
set(it.name, "vince")
47-
set(it.job, "engineer")
48-
set(it.salary, 1000)
49-
set(it.hireDate, LocalDate.now())
50-
set(it.departmentId, 1)
51-
onConflict {
52-
set(it.salary, it.salary + 1000)
53-
}
54-
}
55-
database.insertOrUpdate(Employees.aliased("t")) {
56-
set(it.id, 5)
57-
set(it.name, "vince")
58-
set(it.job, "engineer")
59-
set(it.salary, 1000)
60-
set(it.hireDate, LocalDate.now())
61-
set(it.departmentId, 1)
62-
onConflict(it.id) {
63-
set(it.salary, it.salary + 1000)
64-
}
65-
}
66-
67-
assert(database.employees.find { it.id eq 1 }!!.salary == 1100L)
68-
assert(database.employees.find { it.id eq 5 }!!.salary == 1000L)
69-
}
70-
71-
@Test
72-
fun testInsertOrUpdate1() {
73-
database.insertOrUpdate(Employees) {
74-
set(it.id, 1)
75-
set(it.name, "vince")
76-
set(it.job, "engineer")
77-
set(it.salary, 1000)
78-
set(it.hireDate, LocalDate.now())
79-
set(it.departmentId, 1)
80-
onConflict {
81-
set(it.salary, excluded(it.salary))
82-
}
83-
}
84-
database.insertOrUpdate(Employees.aliased("t")) {
85-
set(it.id, 5)
86-
set(it.name, "vince")
87-
set(it.job, "engineer")
88-
set(it.salary, 1000)
89-
set(it.hireDate, LocalDate.now())
90-
set(it.departmentId, 1)
91-
onConflict(it.id) {
92-
set(it.salary, it.salary + 1000)
93-
}
94-
}
95-
96-
assert(database.employees.find { it.id eq 1 }!!.salary == 1000L)
97-
assert(database.employees.find { it.id eq 5 }!!.salary == 1000L)
98-
}
99-
100-
@Test
101-
fun testInsertOrUpdateOnConflictWhere() {
102-
database.insertOrUpdate(Employees.aliased("t")) {
103-
set(it.id, 1)
104-
set(it.name, "vince")
105-
set(it.job, "engineer")
106-
set(it.salary, 1000)
107-
set(it.hireDate, LocalDate.now())
108-
set(it.departmentId, 1)
109-
onConflict {
110-
set(it.salary, it.salary + excluded(it.salary))
111-
where {
112-
it.salary less 1000
113-
}
114-
}
115-
}
116-
assert(database.employees.find { it.id eq 1 }!!.salary == 1100L)
117-
database.insertOrUpdate(Employees.aliased("t")) {
118-
set(it.id, 1)
119-
set(it.name, "vince")
120-
set(it.job, "engineer")
121-
set(it.salary, 1000)
122-
set(it.hireDate, LocalDate.now())
123-
set(it.departmentId, 1)
124-
onConflict(it.id) {
125-
set(it.salary, it.salary + excluded(it.salary))
126-
where {
127-
it.salary less 1000
128-
}
129-
}
130-
}
131-
132-
assert(database.employees.find { it.id eq 1 }!!.salary == 1100L)
133-
}
134-
135-
@Test
136-
fun testBulkInsert() {
137-
database.bulkInsert(Employees.aliased("t")) {
138-
item {
139-
set(it.name, "vince")
140-
set(it.job, "engineer")
141-
set(it.salary, 1000)
142-
set(it.hireDate, LocalDate.now())
143-
set(it.departmentId, 1)
144-
}
145-
item {
146-
set(it.name, "vince")
147-
set(it.job, "engineer")
148-
set(it.salary, 1000)
149-
set(it.hireDate, LocalDate.now())
150-
set(it.departmentId, 1)
151-
}
152-
}
153-
154-
assert(database.employees.count() == 6)
155-
}
156-
157-
@Test
158-
fun testBulkInsertOrUpdate() {
159-
database.bulkInsertOrUpdate(Employees.aliased("t")) {
160-
item {
161-
set(it.id, 1)
162-
set(it.name, "vince")
163-
set(it.job, "trainee")
164-
set(it.salary, 1000)
165-
set(it.hireDate, LocalDate.now())
166-
set(it.departmentId, 2)
167-
}
168-
item {
169-
set(it.id, 5)
170-
set(it.name, "vince")
171-
set(it.job, "engineer")
172-
set(it.salary, 1000)
173-
set(it.hireDate, LocalDate.now())
174-
set(it.departmentId, 2)
175-
}
176-
onConflict(it.id) {
177-
set(it.job, it.job)
178-
set(it.departmentId, excluded(it.departmentId))
179-
set(it.salary, it.salary + 1000)
180-
}
181-
}
182-
183-
database.employees.find { it.id eq 1 }!!.let {
184-
assert(it.job == "engineer")
185-
assert(it.department.id == 2)
186-
assert(it.salary == 1100L)
187-
}
188-
189-
database.employees.find { it.id eq 5 }!!.let {
190-
assert(it.job == "engineer")
191-
assert(it.department.id == 2)
192-
assert(it.salary == 1000L)
193-
}
194-
}
195-
196-
@Test
197-
fun testBulkInsertOrUpdateOnConflictWhere() {
198-
database.bulkInsertOrUpdate(Employees.aliased("t")) {
199-
item {
200-
set(it.id, 1)
201-
set(it.name, "vince")
202-
set(it.job, "engineer")
203-
set(it.salary, 1000)
204-
set(it.hireDate, LocalDate.now())
205-
set(it.departmentId, 1)
206-
}
207-
item {
208-
set(it.id, 2)
209-
set(it.name, "marry")
210-
set(it.job, "trainee")
211-
set(it.salary, 1000)
212-
set(it.hireDate, LocalDate.now())
213-
set(it.departmentId, 1)
214-
}
215-
onConflict(it.id) {
216-
set(it.salary, it.salary + 1000)
217-
where {
218-
it.job eq "engineer"
219-
}
220-
}
221-
}
222-
223-
assert(database.employees.find { it.id eq 1 }!!.salary == 1100L)
224-
assert(database.employees.find { it.id eq 2 }!!.salary == 50L)
225-
}
226-
227-
@Test
228-
fun testBulkInsertOrUpdate1() {
229-
val bulkInsertWithUpdate = { ignoreErrors: Boolean ->
230-
database.bulkInsertOrUpdate(Employees.aliased("t")) {
231-
item {
232-
set(it.id, 5)
233-
set(it.name, "vince")
234-
set(it.job, "engineer")
235-
set(it.salary, 1000)
236-
set(it.hireDate, LocalDate.now())
237-
set(it.departmentId, 1)
238-
}
239-
item {
240-
set(it.id, 6)
241-
set(it.name, "vince")
242-
set(it.job, "engineer")
243-
set(it.salary, 1000)
244-
set(it.hireDate, LocalDate.now())
245-
set(it.departmentId, 1)
246-
}
247-
onConflict {
248-
if (ignoreErrors) doNothing() else set(it.salary, it.salary + 900)
249-
}
250-
}
251-
}
252-
253-
bulkInsertWithUpdate(false)
254-
assert(database.employees.find { it.id eq 5 }!!.salary == 1000L)
255-
assert(database.employees.find { it.id eq 6 }!!.salary == 1000L)
256-
257-
bulkInsertWithUpdate(false)
258-
assert(database.employees.find { it.id eq 5 }!!.salary == 1900L)
259-
assert(database.employees.find { it.id eq 6 }!!.salary == 1900L)
260-
261-
bulkInsertWithUpdate(true)
262-
assert(database.employees.find { it.id eq 5 }!!.salary == 1900L)
263-
assert(database.employees.find { it.id eq 6 }!!.salary == 1900L)
264-
}
265-
26642
@Test
26743
fun testLimit() {
26844
val query = database.from(Employees).select().orderBy(Employees.id.desc()).limit(0, 2)

0 commit comments

Comments
 (0)