Skip to content

Commit d8fdacb

Browse files
committed
fix(bool): added unit tests on Bool
1 parent 475d078 commit d8fdacb

1 file changed

Lines changed: 56 additions & 1 deletion

File tree

bool_test.go

Lines changed: 56 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ func TestBool(t *testing.T) {
1111
d, err := sql.Open("sqlite3", "file::memory:")
1212
require.NoError(t, err)
1313

14-
_, err = d.Exec("CREATE TABLE `users` (`id` int NOT NULL,`status` BIT(1), PRIMARY KEY (`id`))")
14+
_, err = d.Exec("CREATE TABLE `users` (`id` int NOT NULL,`status` BIT(1),`status_string` VARCHAR(5),`status_int` INT, `status_boolean` boolean, PRIMARY KEY (`id`))")
1515
require.NoError(t, err)
1616

1717
result, err := d.Exec("INSERT INTO `users`(`id`, `status`) VALUES(?, ?)", 10, Bool(true))
@@ -71,4 +71,59 @@ func TestBool(t *testing.T) {
7171

7272
require.EqualValues(t, false, b4)
7373

74+
// Insert with different types
75+
_, err = d.Exec("INSERT INTO `users`(`id`, `status_string`) VALUES(?, ?)", 14, "true")
76+
require.NoError(t, err)
77+
78+
_, err = d.Exec("INSERT INTO `users`(`id`, `status_string`) VALUES(?, ?)", 15, "false")
79+
require.NoError(t, err)
80+
81+
var b5 Bool
82+
err = d.QueryRow("SELECT `status_string` FROM `users` WHERE id=?", 14).Scan(&b5)
83+
require.NoError(t, err)
84+
85+
require.EqualValues(t, true, b5)
86+
87+
var b6 Bool
88+
err = d.QueryRow("SELECT `status_string` FROM `users` WHERE id=?", 15).Scan(&b6)
89+
require.NoError(t, err)
90+
91+
require.EqualValues(t, false, b6)
92+
93+
_, err = d.Exec("INSERT INTO `users`(`id`, `status_int`) VALUES(?, ?)", 16, 1)
94+
require.NoError(t, err)
95+
96+
result, err = d.Exec("INSERT INTO `users`(`id`, `status_int`) VALUES(?, ?)", 17, 0)
97+
require.NoError(t, err)
98+
99+
var b7 Bool
100+
err = d.QueryRow("SELECT `status_int` FROM `users` WHERE id=?", 16).Scan(&b7)
101+
require.NoError(t, err)
102+
103+
require.EqualValues(t, true, b7)
104+
105+
var b8 Bool
106+
err = d.QueryRow("SELECT `status_int` FROM `users` WHERE id=?", 17).Scan(&b8)
107+
require.NoError(t, err)
108+
109+
require.EqualValues(t, false, b8)
110+
111+
_, err = d.Exec("INSERT INTO `users`(`id`, `status_boolean`) VALUES(?, ?)", 18, true)
112+
require.NoError(t, err)
113+
114+
_, err = d.Exec("INSERT INTO `users`(`id`, `status_boolean`) VALUES(?, ?)", 19, false)
115+
require.NoError(t, err)
116+
117+
var b9 Bool
118+
err = d.QueryRow("SELECT `status_boolean` FROM `users` WHERE id=?", 18).Scan(&b9)
119+
require.NoError(t, err)
120+
121+
require.EqualValues(t, true, b9)
122+
123+
var b10 Bool
124+
err = d.QueryRow("SELECT `status_boolean` FROM `users` WHERE id=?", 19).Scan(&b10)
125+
require.NoError(t, err)
126+
127+
require.EqualValues(t, false, b10)
128+
74129
}

0 commit comments

Comments
 (0)