v2 / vlib / db / pg_sqlite_consistency_test.v
51 lines · 47 sloc · 1006 bytes · da7e85cbec7fd73d9d26db033850648c49120c9f
Raw
1// vtest build: !windows
2module main
3
4import db.pg
5import db.sqlite
6
7fn test_pg_connection_user_aliases() {
8 assert pg.Config{
9 user: 'alice'
10 }.connection_user()! == 'alice'
11 assert pg.Config{
12 username: 'alice'
13 }.connection_user()! == 'alice'
14 assert pg.Config{
15 user: 'alice'
16 username: 'alice'
17 }.connection_user()! == 'alice'
18 if _ := pg.Config{
19 user: 'alice'
20 username: 'bob'
21 }.connection_user()
22 {
23 assert false
24 } else {
25 assert err.msg().contains('must match')
26 }
27}
28
29fn test_pg_row_value_helpers() {
30 mut vals := []?string{}
31 vals << none
32 vals << 'hello'
33 vals << ''
34 row := pg.Row{
35 vals: vals
36 }
37 assert row.val(0) == ''
38 assert row.val(1) == 'hello'
39 assert row.values() == ['', 'hello', '']
40 assert row.val_opt(0) == none
41 assert row.val_opt(1) or { '' } == 'hello'
42}
43
44fn test_sqlite_row_value_helpers() {
45 sqlite_row := sqlite.Row{
46 vals: ['hello', '']
47 names: ['first', 'second']
48 }
49 assert sqlite_row.val(0) == 'hello'
50 assert sqlite_row.values() == ['hello', '']
51}
52