...
1 package dbal
2
3 import (
4 "testing"
5
6 "github.com/stretchr/testify/assert"
7 )
8
9 func TestIsMemorySQLite(t *testing.T) {
10 testCases := map[string]bool{
11 SQLiteInMemory: true,
12 SQLiteSharedInMemory: true,
13 "memory": true,
14 ":memory:": true,
15 "sqlite://:memory:?_fk=true": true,
16 "sqlite://file:uniquedb:?_fk=true&mode=memory": true,
17 "sqlite://file:uniquedb:?_fk=true&mode=memory&cache=shared": true,
18 "sqlite://file:uniquedb:?_fk=true&cache=shared&mode=memory": true,
19 "sqlite://file:uniquedb:?mode=memory": true,
20 "sqlite://file:::uniquedb:?_fk=true&mode=memory": true,
21 "sqlite://file:memdb1?mode=memory&cache=shared": true,
22 "sqlite://file:uniquedb:?_fk=true&cache=shared": false,
23 "sqlite://": false,
24 "sqlite://file": false,
25 "sqlite://file:::": false,
26 "sqlite://?_fk=true&mode=memory": false,
27 "sqlite://?_fk=true&cache=shared": false,
28 "sqlite://file::?_fk=true": false,
29 "sqlite://file:::?_fk=true": false,
30 "postgresql://username:secret@localhost:5432/database": false,
31 }
32
33 for dsn, expected := range testCases {
34 t.Run("dsn="+dsn, func(t *testing.T) {
35 assert.Equal(t, expected, IsMemorySQLite(dsn))
36 })
37 }
38 }
39
View as plain text