72 lines
1.5 KiB
Ruby
72 lines
1.5 KiB
Ruby
# frozen_string_literal: true
|
|
require 'test_helper'
|
|
|
|
class AccountsControllerTest < ActionDispatch::IntegrationTest
|
|
include TestAuthHelper
|
|
|
|
setup do
|
|
get auth_path
|
|
@account = accounts(:account1)
|
|
end
|
|
|
|
test "should get index" do
|
|
get accounts_url
|
|
|
|
assert_response :success
|
|
end
|
|
|
|
test "should get new" do
|
|
get new_account_url
|
|
assert_response :success
|
|
end
|
|
|
|
test "should create account" do
|
|
assert_difference('Account.count') do
|
|
post accounts_url, params: { account: {
|
|
home: @account.home,
|
|
password: @account.password,
|
|
site: @account.site,
|
|
username: 'client-new'
|
|
} }
|
|
end
|
|
|
|
assert_redirected_to account_url(Account.last)
|
|
end
|
|
|
|
test "should show account" do
|
|
get account_url(@account)
|
|
assert_response :success
|
|
end
|
|
|
|
test "should get edit" do
|
|
get edit_account_url(@account)
|
|
assert_response :success
|
|
end
|
|
|
|
test "should update account" do
|
|
patch account_url(@account), params: { account: {
|
|
home: @account.home,
|
|
password: @account.password,
|
|
site: @account.site,
|
|
username: @account.username
|
|
} }
|
|
assert_redirected_to account_url(@account)
|
|
end
|
|
|
|
test "should destroy account" do
|
|
assert_difference('Account.count', -1) do
|
|
delete account_url(@account)
|
|
end
|
|
|
|
assert_redirected_to accounts_url
|
|
end
|
|
|
|
test 'reveal should provide password' do
|
|
get reveal_password_url(@account.to_i), xhr: true
|
|
json = JSON.parse(response.body).to_hash
|
|
|
|
assert_response :success
|
|
assert_match '1q2w3e4r5t6y7u', json['hash']
|
|
end
|
|
end
|