mirror of
https://github.com/basecamp/once-campfire.git
synced 2026-05-03 17:34:35 +09:00
Hello world
First open source release of Campfire 🎉
This commit is contained in:
38
test/controllers/users/push_subscriptions_controller_test.rb
Normal file
38
test/controllers/users/push_subscriptions_controller_test.rb
Normal file
@@ -0,0 +1,38 @@
|
||||
require "test_helper"
|
||||
|
||||
class Users::PushSubscriptionsControllerTest < ActionDispatch::IntegrationTest
|
||||
setup do
|
||||
sign_in :david
|
||||
end
|
||||
|
||||
test "create new push subscription" do
|
||||
subscription_params = { "endpoint" => "https://apple", "p256dh_key" => "123", "auth_key" => "456" }
|
||||
|
||||
post user_push_subscriptions_url,
|
||||
params: { push_subscription: subscription_params }, headers: { "HTTP_USER_AGENT" => "Mozilla/5.0" }
|
||||
|
||||
assert_response :ok
|
||||
|
||||
assert_equal subscription_params, users(:david).push_subscriptions.last.attributes.slice("endpoint", "p256dh_key", "auth_key")
|
||||
assert_equal "Mozilla/5.0", users(:david).push_subscriptions.last.user_agent
|
||||
end
|
||||
|
||||
test "touch existing subscription" do
|
||||
assert_no_difference -> { users(:david).push_subscriptions.count } do
|
||||
assert_changes -> { push_subscriptions(:david_chrome).reload.updated_at } do
|
||||
post user_push_subscriptions_url(params: {
|
||||
push_subscription: push_subscriptions(:david_chrome).attributes.slice("endpoint", "p256dh_key", "auth_key")
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
assert_response :ok
|
||||
end
|
||||
|
||||
test "destroy a push subscription via dev mode" do
|
||||
assert_difference -> { Push::Subscription.count }, -1 do
|
||||
delete user_push_subscription_url(push_subscriptions(:david_chrome))
|
||||
assert_redirected_to user_push_subscriptions_url
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user