def test_joinroom
params = [
{
'from' => 'admin',
'recipient' => '',
'message' => '',
'room' => '',
'responce' => 'invalid_chars'
},
{
'from' => 'admin',
'recipient' => '',
'message' => '',
'room' => 'valcker',
'responce' => 'room_is_user'
},
{
'from' => 'admin',
'recipient' => '',
'message' => '',
'room' => 'ka7e54;a.sdf--a\'asdf"',
'responce' => 'invalid_chars'
}
]
msg 'Testing joinroom'
params.each do |param|
print "Params: "
p param
ajaxIM = AjaxIM.new(@db, param['from'], param['recipient'], param['message'])
responce = ajaxIM.joinroom(param['room'])
p "Responce: #{responce}"
assert_match(param['responce'], responce)
end
id = @db.next_id("{ajaxim_chats}")
@db.query("INSERT INTO {ajaxim_chats} SET uid=1, room='test', id=#{id}")
ajaxIM = AjaxIM.new(@db, 'admin', '', '')
ajaxIM_valcker = AjaxIM.new(@db, 'valcker', '', '')
responce = ajaxIM.joinroom('test')
assert_match('already_joined', responce)
responce = ajaxIM_valcker.joinroom('test')
responce = JSON.parse responce
assert(responce.has_key?('users') && responce['users'] == nil, 'responce must be hash and have users array == nil')
end