Skip to content

Commit aeb8de3

Browse files
authored
Fix fetch all test compatibility (#201)
* Make new tests for fetch_all/4 backwards compatible * Capture log messages by default for ex_unit * Simplifiy Enum.reverse/1 call
1 parent 05ff3fa commit aeb8de3

3 files changed

Lines changed: 14 additions & 10 deletions

File tree

lib/exqlite/sqlite3.ex

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -137,11 +137,11 @@ defmodule Exqlite.Sqlite3 do
137137
{:done, rows} ->
138138
case accum do
139139
[] -> {:ok, rows}
140-
accum -> {:ok, (rows ++ accum) |> Enum.reverse()}
140+
accum -> {:ok, Enum.reverse(rows ++ accum)}
141141
end
142142

143143
{:rows, rows} ->
144-
fetch_all(conn, statement, chunk_size, (rows |> Enum.reverse()) ++ accum)
144+
fetch_all(conn, statement, chunk_size, Enum.reverse(rows) ++ accum)
145145

146146
{:error, reason} ->
147147
{:error, reason}

test/exqlite/connection_test.exs

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -166,9 +166,16 @@ defmodule Exqlite.ConnectionTest do
166166
:ok =
167167
Sqlite3.execute(db, "create table users (id integer primary key, name text)")
168168

169-
Enum.each(1..10_000, fn i ->
170-
:ok =
171-
Sqlite3.execute(db, "insert into users (id, name) values (#{i}, 'User-#{i}')")
169+
users =
170+
Enum.map(1..10_000, fn i ->
171+
[i, "User-#{i}"]
172+
end)
173+
174+
users
175+
|> Enum.chunk_every(20)
176+
|> Enum.each(fn chunk ->
177+
values = Enum.map_join(chunk, ", ", fn [id, name] -> "(#{id}, '#{name}')" end)
178+
Sqlite3.execute(db, "insert into users (id, name) values #{values}")
172179
end)
173180

174181
:ok = Exqlite.Sqlite3.close(db)
@@ -187,10 +194,7 @@ defmodule Exqlite.ConnectionTest do
187194

188195
assert result.command == :execute
189196
assert length(result.rows) == 10_000
190-
191-
Enum.with_index(result.rows, fn row, i ->
192-
assert row == [i + 1, "User-#{i + 1}"]
193-
end)
197+
assert users == result.rows
194198

195199
File.rm(path)
196200
end

test/test_helper.exs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
ExUnit.start()
1+
ExUnit.start(capture_log: true)

0 commit comments

Comments
 (0)