mirror of
https://github.com/dolthub/dolt.git
synced 2026-01-14 10:25:59 -06:00
50 lines
1.2 KiB
Ruby
50 lines
1.2 KiB
Ruby
#!/usr/bin/ruby
|
|
|
|
require 'mysql'
|
|
require 'test/unit'
|
|
require 'pp'
|
|
|
|
extend Test::Unit::Assertions
|
|
|
|
user = ARGV[0]
|
|
port = ARGV[1]
|
|
db = ARGV[2]
|
|
|
|
queries = [
|
|
"create table test (pk int, `value` int, d1 decimal(9, 3), f1 float, primary key(pk))",
|
|
"describe test",
|
|
"select * from test",
|
|
"insert into test (pk, `value`, d1, f1) values (0,0,0.0,0.0)",
|
|
"select * from test",
|
|
"call dolt_add('-A');",
|
|
"call dolt_commit('-m', 'my commit')",
|
|
"select COUNT(*) FROM dolt_log",
|
|
"call dolt_checkout('-b', 'mybranch')",
|
|
"insert into test (pk, `value`, d1, f1) values (1,1, 123456.789, 420.42)",
|
|
"call dolt_commit('-a', '-m', 'my commit2')",
|
|
"call dolt_checkout('main')",
|
|
"call dolt_merge('mybranch')",
|
|
"select COUNT(*) FROM dolt_log",
|
|
]
|
|
|
|
# Smoke test the queries to make sure nothing blows up
|
|
conn = Mysql::new("127.0.0.1", user, "", db, port)
|
|
queries.each do |query|
|
|
res = conn.query(query)
|
|
end
|
|
|
|
# Then make sure we can read some data back
|
|
res = conn.query("SELECT * from test where pk = 1;")
|
|
rowCount = 0
|
|
res.each do |row|
|
|
rowCount += 1
|
|
assert_equal 1, row[0].to_i
|
|
assert_equal 1, row[1].to_i
|
|
assert_equal 123456.789, row[2].to_f
|
|
assert_equal 420.42, row[3].to_f
|
|
end
|
|
assert_equal 1, rowCount
|
|
|
|
conn.close()
|
|
exit(0)
|