0
class TestDbslayerConnection < Test::Unit::TestCase
0
- "STAT" => "THIS IS A STAT REPLY"
0
- "CLIENT_INFO" => "5.2.27"
0
@slayer = ActiveRecord::ConnectionAdapters::DbslayerConnection.new
0
+ query = {"foo" => "bar"}
0
+ assert_equal URI.encode(query.to_json), @slayer.send('query_string', query)
0
+ # def cmd_execute(endpoint, commands)
0
+ # 147 url = "http://#{host}:#{port}/#{endpoint.to_s}?#{query_string(commands)}"
0
+ # 148 open(url) do |file|
0
+ # 149 JSON.parse(file.read)
0
+ # def test_cmd_execute_url
0
+ # query = {"SQL" => "select * from cities"}
0
+ # test = ActiveRecord::ConnectionAdapters::DbslayerConnection.new('localhost', 9090)
0
+ # URI.expects(:open).with("http://localhost:9090/db?#{test.send(:query_string, query)}")
0
+ # test.send :cmd_execute, :db, query
0
sql_command = "select * from cities limit 10"
0
@slayer.stubs(:cmd_execute).with(:db, {"SQL" => sql_command}).returns(CITY_RESULTS)
0
assert_not_nil reply.rows
0
+ def test_sql_null_return
0
+ sql_command = "update set posted = 1"
0
+ @slayer.stubs(:cmd_execute).with(:db, {"SQL" => sql_command}).returns(NULL_RESULT)
0
+ status = @slayer.sql_query(sql_command)
0
+ assert_equal true, status
0
+ def test_multiple_results
0
+ sql_command = "select * from cities limit 10; select * from countries limit 3"
0
+ @slayer.stubs(:cmd_execute).with(:db, {"SQL" => sql_command}).returns(MULTIPLE_RESULTS)
0
+ reply = @slayer.sql_query(sql_command)
0
+ assert_kind_of Array, reply
0
+ assert_equal 2, reply.size
0
+ reply.each {|i| assert_kind_of(ActiveRecord::ConnectionAdapters::DbslayerResult, i)}
0
+ assert_equal CITY_ROWS, reply[0].rows
0
+ assert_equal COUNTRY_ROWS, reply[1].rows
0
@slayer.stubs(:cmd_execute).with(:db, {"STAT" => true}).returns(STAT_REPLY)
0
reply = @slayer.mysql_stats
0
@slayer.stubs(:cmd_execute).returns(ERROR_REPLY)
0
- assert_raise(
DbslayerException) { @slayer.sql_query("SELECT * FROM items") }
0
+ assert_raise(
ActiveRecord::ConnectionAdapters::DbslayerException) { @slayer.sql_query("SELECT * FROM items") }
0
+ @slayer.stubs(:cmd_execute).with(:db, {"CLIENT_VERSION" => true}).returns(VERSION_NUM_REPLY)
0
+ reply = @slayer.client_version_num
0
+ assert_equal 50037, reply
0
+ @slayer.stubs(:cmd_execute).with(:db, {"SERVER_VERSION" => true}).returns(VERSION_NUM_REPLY)
0
+ reply = @slayer.server_version_num
0
+ assert_equal 50037, reply
Comments
No one has commented yet.