# File tests/test_ajaxim.rb, line 67
  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'
    #
    # testing room_is_user and invalid_chars checks
    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
    #
    # testing user already_join check
    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