1 # frozen_string_literal: true
7 class ActiveListsControllerTest < ActionDispatch::IntegrationTest
9 # test all routes which lead to this controller
12 { :path => "/api/0.6/user/blocks/active", :method => :get },
13 { :controller => "api/user_blocks/active_lists", :action => "show" }
16 { :path => "/api/0.6/user/blocks/active.json", :method => :get },
17 { :controller => "api/user_blocks/active_lists", :action => "show", :format => "json" }
21 def test_show_no_auth_header
22 get api_user_blocks_active_list_path
23 assert_response :unauthorized
26 def test_show_no_permission
28 user_auth_header = bearer_authorization_header(user, :scopes => %w[])
30 get api_user_blocks_active_list_path, :headers => user_auth_header
31 assert_response :forbidden
36 user_auth_header = bearer_authorization_header(user, :scopes => %w[read_prefs])
37 create(:user_block, :expired, :user => user)
39 get api_user_blocks_active_list_path, :headers => user_auth_header
40 assert_response :success
41 assert_dom "user_block", :count => 0
45 user = create(:moderator_user)
46 user_auth_header = bearer_authorization_header(user, :scopes => %w[read_prefs])
47 create(:user_block, :expired, :user => user)
48 block0 = create(:user_block, :user => user)
49 block1 = create(:user_block, :user => user)
51 create(:user_block, :creator => user)
53 get api_user_blocks_active_list_path, :headers => user_auth_header
54 assert_response :success
55 assert_dom "user_block", :count => 2 do |dom_blocks|
56 assert_dom dom_blocks[0], "> @id", block1.id.to_s
57 assert_dom dom_blocks[1], "> @id", block0.id.to_s
62 user = create(:moderator_user)
63 user_auth_header = bearer_authorization_header(user, :scopes => %w[read_prefs])
64 create(:user_block, :expired, :user => user)
65 block0 = create(:user_block, :user => user)
66 block1 = create(:user_block, :user => user)
68 create(:user_block, :creator => user)
70 get api_user_blocks_active_list_path(:format => "json"), :headers => user_auth_header
71 assert_response :success
72 js = ActiveSupport::JSON.decode(@response.body)
74 assert_equal 2, js["user_blocks"].count
75 assert_equal block1.id, js["user_blocks"][0]["id"]
76 assert_equal block0.id, js["user_blocks"][1]["id"]