Sha256: 4b7ed18c7404f44b02469696a0c7fff51f4ad7507c4a5e012cf4d1e7d3fac628

Contents?: true

Size: 1022 Bytes

Versions: 10

Compression:

Stored size: 1022 Bytes

Contents

require "test_helper"

class UserOptionsControllerTest < ActionController::TestCase
  include Devise::Test::ControllerHelpers

  attr_reader :user

  setup do
    @user = create(:user,
      props: {
        "view.speed" => "plaid",
        "view.helmet" => "dark" })
    sign_in @user
  end


  context "#update" do
    should "merge supplied options with the user's options" do
      expected_options = {
        "view.speed" => "light",
        "view.helmet" => "dark",
        "view.schwartz" => "up side" }

      put :update, params: { options: {"view.speed" => "light", "view.schwartz" => "up side"} }
      assert_response :ok
      assert_equal expected_options, user.reload.props.to_h
    end
  end


  context "#destroy" do
    should "remove the specified key from the user's options" do
      expected_options = {
        "view.speed" => "plaid" }

      delete :destroy, params: { key: "view.helmet" }
      assert_response :ok
      assert_equal expected_options, user.reload.props.to_h
    end
  end


end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
houston-core-0.9.2 test/unit/controllers/user_options_controller_test.rb
houston-core-0.9.1 test/unit/controllers/user_options_controller_test.rb
houston-core-0.9.0 test/unit/controllers/user_options_controller_test.rb
houston-core-0.9.0.rc1 test/unit/controllers/user_options_controller_test.rb
houston-core-0.8.4 test/unit/controllers/user_options_controller_test.rb
houston-core-0.8.3 test/unit/controllers/user_options_controller_test.rb
houston-core-0.8.2 test/unit/controllers/user_options_controller_test.rb
houston-core-0.8.1 test/unit/controllers/user_options_controller_test.rb
houston-core-0.8.0 test/unit/controllers/user_options_controller_test.rb
houston-core-0.8.0.pre2 test/unit/controllers/user_options_controller_test.rb