class UserControllerTest < Test::Unit::TestCase
  include ApplicationHelper
  fixtures :users
  .
  .
  .
  # Test poprawnej rejestracji
  def test_registration_success
    post :register, :user => { :screen_name => "new_screen_name",
                               :email       => "valid@example.com",
                               :password    => "long_enough_password" }
    # Testuj przypisanie uytkownika
    user = assigns(:user)
    .
    .
    .
    # Sprawd, czy uytkownik zosta poprawnie zalogowany
    assert logged_in?
    assert_equal user.id, session[:user_id]
  end
  .
  .
  .
  # Test poprawnego logowania
  def test_login_success
    try_to_login @valid_user
    assert logged_in?
    assert_equal @valid_user.id, session[:user_id]
    assert_equal " Uytkownik #{@valid_user.screen_name} zalogowany!", flash[:notice]
    assert_response :redirect
    assert_redirected_to :action => "index"
  end
  .
  .
  .
  # Test funkcji wylogowania
  def test_logout
    try_to_login @valid_user
    assert logged_in?
    get :logout
    assert_response :redirect
    assert_redirected_to :action => "index", :controller => "site"
    assert_equal "Wylogowano", flash[:notice]
    assert !logged_in?
  end

