merged cont.
[opensuse:yast-rest-service.git] / webservice / test / functional / authenticated_system_test.rb
1 #--
2 # Webyast Webservice framework
3 #
4 # Copyright (C) 2009, 2010 Novell, Inc. 
5 #   This library is free software; you can redistribute it and/or modify
6 # it only under the terms of version 2.1 of the GNU Lesser General Public
7 # License as published by the Free Software Foundation. 
8 #
9 #   This library is distributed in the hope that it will be useful, but WITHOUT
10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11 # FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more 
12 # details. 
13 #
14 #   You should have received a copy of the GNU Lesser General Public
15 # License along with this library; if not, write to the Free Software 
16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17 #++
18
19 require File.join(File.dirname(__FILE__),"..", "test_helper")
20
21 #
22 # Must be functional test (ActionController::TestCase) since
23 # AuthenticatedSystem is based on session data
24 #
25
26 class AuthenticatedSystemTest < ActionController::TestCase
27   def self.helper_method *args
28     # empty ActionView hook
29   end
30   
31   def authenticate_with_http_basic &block
32     yield "test_user", "password"
33   end
34
35   def remote_ip
36     "localhost"
37   end
38     
39   include AuthenticatedSystem
40
41   fixtures :accounts
42     
43   def setup
44     @request = ActionController::TestRequest.new
45     # put username and password into request
46     # -> flip.netzbeben.de/2008/06/functional-test-for-http-authentication-in-rails-2/
47  #   @request.env["HTTP_AUTHORIZATION"] = "Basic " + Base64::encode64("test_user:password")
48   end
49     
50   test "login by session" do
51     assert !logged_in?
52     assert logged_in? == authorized?
53     account = Account.find(:first)
54     assert account
55     self.current_account = account
56     assert logged_in?
57     assert logged_in? == authorized?
58   end
59
60 #  test "login by basic auth" do
61 #    self.current_account = nil
62 #    assert logged_in?
63 #    assert logged_in? == authorized?
64 #  end
65 end