class TestActCondition

Public Instance Methods

test_condition() click to toggle source
# File vendor/qwik/lib/qwik/common-condition.rb, line 70
def test_condition
  res = session

  # test_c_login
  ok_eq(true, !!@action.c_login?)

  # test_c_require_login
  @action.c_require_login # ok, nothing happen.

  # test_c_member
  ok_eq(false, @action.c_member?)

  # test_c_require_member
  assert_raise(Qwik::RequireMember) {
    @action.c_require_member
  }

  t_add_user

  # test_c_member, again
  ok_eq(true, @action.c_member?)

  # test_c_require_member, again
  @action.c_require_member # nothing happen

  # test_c_require_post
  res = session {|req|
    ok_eq(false, req.is_post?)
  }
  assert_raise(Qwik::RequirePost) {
    @action.c_require_post
  }
  res = session('POST /test/1.html')
  @action.c_require_post # nothing happen

  # test_c_require_page_exist
  res = session('/test/1.html') {|req|
    ok_eq(nil, @site[req.base])
  }
  assert_raise(Qwik::PageNotFound) {
    @action.c_require_page_exist
  }

  # test_c_require_no_path_args
  res = session('/test/1.html/1') {|req|
    ok_eq(['1'], req.path_args)
  }
  assert_raise(Qwik::RequireNoPathArgs) {
    @action.c_require_no_path_args
  }

  # test_c_require_no_ext_args
  res = session('/test/1.t.html') {|req|
    ok_eq(['t'], req.ext_args)
  }
  assert_raise(RuntimeError) {
    @action.c_require_no_ext_args
  }

  # test_c_require_pagename
  # FIXME: Pagename is always not nil for now.

  # test_c_require_base_is_sitename
  res = session('/test/1.t.html') {|req|
    ok_eq(['t'], req.ext_args)
  }
  assert_raise(RuntimeError) {
    @action.c_require_no_ext_args
  }

end