mirror of
https://github.com/lloeki/rebel.git
synced 2025-12-06 10:04:39 +01:00
Tests
This commit is contained in:
parent
3415cf8ad4
commit
2155aa8d43
5 changed files with 75 additions and 5 deletions
49
test/test_exec.rb
Normal file
49
test/test_exec.rb
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
require 'minitest/autorun'
|
||||
require 'helper'
|
||||
require 'rebel'
|
||||
|
||||
class TestExec < Minitest::Test
|
||||
include Rebel::SQL
|
||||
|
||||
def setup
|
||||
@conn = memdb
|
||||
end
|
||||
|
||||
def test_create_table
|
||||
assert_raises(SQLite3::SQLException) { conn.execute('SELECT * FROM foo') }
|
||||
create_table :foo, id: 'INT', col: 'VARCHAR(255)'
|
||||
assert_equal(conn.execute('SELECT * FROM foo'), [])
|
||||
end
|
||||
|
||||
def test_drop_table
|
||||
create_table :foo, id: 'INT', col: 'VARCHAR(255)'
|
||||
assert_equal(conn.execute('SELECT * FROM foo'), [])
|
||||
drop_table :foo
|
||||
assert_raises(SQLite3::SQLException) { conn.execute('SELECT * FROM foo') }
|
||||
end
|
||||
|
||||
def test_insert_into
|
||||
create_table :foo, id: 'INT', col: 'VARCHAR(255)'
|
||||
insert_into :foo, id: 1, col: 'whatevs'
|
||||
assert_equal(conn.execute('SELECT * FROM foo'), [[1, 'whatevs']])
|
||||
end
|
||||
|
||||
def test_insert_into_with_many_values
|
||||
create_table :foo, id: 'INT', col: 'VARCHAR(255)'
|
||||
insert_into :foo,
|
||||
{ id: 1, col: 'more' },
|
||||
{ id: 2, col: 'rows' },
|
||||
{ id: 3, col: 'for the win' }
|
||||
assert_equal(conn.execute('SELECT * FROM foo'), [
|
||||
[1, 'more'],
|
||||
[2, 'rows'],
|
||||
[3, 'for the win'],
|
||||
])
|
||||
end
|
||||
|
||||
def test_select
|
||||
create_table :foo, id: 'INT', col: 'VARCHAR(255)'
|
||||
insert_into :foo, id: 1, col: 'whatevs'
|
||||
assert_equal(select('*', from: :foo), [[1, 'whatevs']])
|
||||
end
|
||||
end
|
||||
Loading…
Add table
Add a link
Reference in a new issue