activity_notification 2.1.4 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.travis.yml +6 -16
- data/CHANGELOG.md +14 -0
- data/README.md +1 -1
- data/activity_notification.gemspec +1 -1
- data/app/controllers/activity_notification/notifications_controller.rb +0 -20
- data/bin/bundle_update.sh +0 -1
- data/lib/activity_notification/common.rb +11 -3
- data/lib/activity_notification/controllers/common_controller.rb +1 -17
- data/lib/activity_notification/models/concerns/notifiable.rb +1 -1
- data/lib/activity_notification/models/concerns/target.rb +5 -9
- data/lib/activity_notification/orm/active_record.rb +1 -1
- data/lib/activity_notification/orm/active_record/notification.rb +3 -3
- data/lib/activity_notification/orm/dynamoid/notification.rb +1 -1
- data/lib/activity_notification/orm/mongoid/notification.rb +1 -1
- data/lib/activity_notification/renderable.rb +2 -2
- data/lib/activity_notification/roles/acts_as_notifiable.rb +11 -15
- data/lib/activity_notification/version.rb +1 -1
- data/lib/generators/templates/migrations/migration.rb +1 -1
- data/spec/channels/notification_api_channel_spec.rb +42 -44
- data/spec/channels/notification_api_with_devise_channel_spec.rb +57 -59
- data/spec/channels/notification_channel_spec.rb +41 -43
- data/spec/channels/notification_with_devise_channel_spec.rb +75 -77
- data/spec/concerns/common_spec.rb +25 -3
- data/spec/concerns/models/target_spec.rb +10 -12
- data/spec/concerns/renderable_spec.rb +5 -5
- data/spec/controllers/controller_spec_utility.rb +15 -51
- data/spec/generators/migration/migration_generator_spec.rb +2 -10
- data/spec/helpers/view_helpers_spec.rb +1 -1
- data/spec/optional_targets/action_cable_api_channel_spec.rb +21 -24
- data/spec/optional_targets/action_cable_channel_spec.rb +26 -29
- data/spec/rails_app/config/application.rb +2 -6
- data/spec/rails_app/config/environments/test.rb +2 -11
- data/spec/spec_helper.rb +1 -5
- metadata +5 -8
- data/gemfiles/Gemfile.rails-4.2 +0 -24
- data/spec/support/patch_rails_42_action_controller_test_response.rb +0 -11
@@ -1,50 +1,48 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
User._notification_action_cable_with_devise = true
|
15
|
-
end
|
16
|
-
|
17
|
-
after do
|
18
|
-
User._notification_action_cable_with_devise = @user_notification_action_cable_with_devise
|
19
|
-
end
|
20
|
-
|
21
|
-
it "rejects subscription even if target_type and target_id parameters are passed" do
|
22
|
-
subscribe({ target_type: target_type, target_id: test_target.id })
|
23
|
-
expect(subscription).to be_rejected
|
24
|
-
expect {
|
25
|
-
expect(subscription).to have_stream_from("#{ActivityNotification.config.notification_channel_prefix}_#{test_target.to_class_name}#{ActivityNotification.config.composite_key_delimiter}#{test_target.id}")
|
26
|
-
}.to raise_error(/Must be subscribed!/)
|
27
|
-
end
|
1
|
+
require 'channels/notification_channel_shared_examples'
|
2
|
+
|
3
|
+
# @See https://github.com/palkan/action-cable-testing
|
4
|
+
describe ActivityNotification::NotificationChannel, type: :channel do
|
5
|
+
let(:test_target) { create(:user) }
|
6
|
+
let(:target_type) { "User" }
|
7
|
+
let(:typed_target_param) { "user_id" }
|
8
|
+
let(:extra_params) { {} }
|
9
|
+
|
10
|
+
context "when target.notification_action_cable_with_devise? returns true" do
|
11
|
+
before do
|
12
|
+
@user_notification_action_cable_with_devise = User._notification_action_cable_with_devise
|
13
|
+
User._notification_action_cable_with_devise = true
|
28
14
|
end
|
29
15
|
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
User._notification_action_cable_with_devise = false
|
34
|
-
end
|
35
|
-
|
36
|
-
after do
|
37
|
-
User._notification_action_cable_with_devise = @user_notification_action_cable_with_devise
|
38
|
-
end
|
16
|
+
after do
|
17
|
+
User._notification_action_cable_with_devise = @user_notification_action_cable_with_devise
|
18
|
+
end
|
39
19
|
|
40
|
-
|
41
|
-
|
42
|
-
|
20
|
+
it "rejects subscription even if target_type and target_id parameters are passed" do
|
21
|
+
subscribe({ target_type: target_type, target_id: test_target.id })
|
22
|
+
expect(subscription).to be_rejected
|
23
|
+
expect {
|
43
24
|
expect(subscription).to have_stream_from("#{ActivityNotification.config.notification_channel_prefix}_#{test_target.to_class_name}#{ActivityNotification.config.composite_key_delimiter}#{test_target.id}")
|
44
|
-
|
45
|
-
|
25
|
+
}.to raise_error(/Must be subscribed!/)
|
26
|
+
end
|
27
|
+
end
|
46
28
|
|
47
|
-
|
29
|
+
context "when target.notification_action_cable_with_devise? returns false" do
|
30
|
+
before do
|
31
|
+
@user_notification_action_cable_with_devise = User._notification_action_cable_with_devise
|
32
|
+
User._notification_action_cable_with_devise = false
|
48
33
|
end
|
34
|
+
|
35
|
+
after do
|
36
|
+
User._notification_action_cable_with_devise = @user_notification_action_cable_with_devise
|
37
|
+
end
|
38
|
+
|
39
|
+
it "successfully subscribes with target_type and target_id parameters" do
|
40
|
+
subscribe({ target_type: target_type, target_id: test_target.id })
|
41
|
+
expect(subscription).to be_confirmed
|
42
|
+
expect(subscription).to have_stream_from("#{ActivityNotification.config.notification_channel_prefix}_#{test_target.to_class_name}#{ActivityNotification.config.composite_key_delimiter}#{test_target.id}")
|
43
|
+
expect(subscription).to have_stream_from("activity_notification_channel_User##{test_target.id}")
|
44
|
+
end
|
45
|
+
|
46
|
+
it_behaves_like :notification_channel
|
49
47
|
end
|
50
|
-
end
|
48
|
+
end
|
@@ -1,99 +1,97 @@
|
|
1
|
-
|
2
|
-
require 'channels/notification_channel_shared_examples'
|
1
|
+
require 'channels/notification_channel_shared_examples'
|
3
2
|
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
end
|
3
|
+
#TODO Make it more smart test method
|
4
|
+
module ActivityNotification
|
5
|
+
module Test
|
6
|
+
class NotificationWithDeviseChannel < ::ActivityNotification::NotificationWithDeviseChannel
|
7
|
+
@@custom_current_target = nil
|
8
|
+
|
9
|
+
def set_custom_current_target(custom_current_target)
|
10
|
+
@@custom_current_target = custom_current_target
|
11
|
+
end
|
12
|
+
|
13
|
+
def find_current_target(devise_type = nil)
|
14
|
+
super(devise_type)
|
15
|
+
rescue NoMethodError
|
16
|
+
devise_type = (devise_type || @target.notification_devise_resource.class.name).to_s
|
17
|
+
@@custom_current_target.is_a?(devise_type.to_model_class) ? @@custom_current_target : nil
|
20
18
|
end
|
21
19
|
end
|
22
20
|
end
|
21
|
+
end
|
23
22
|
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
#TODO Make it more smart test method
|
35
|
-
#include Devise::Test::IntegrationHelpers
|
36
|
-
def sign_in(current_target)
|
37
|
-
described_class.new(ActionCable::Channel::ConnectionStub.new, {}).set_custom_current_target(current_target)
|
38
|
-
end
|
23
|
+
# @See https://github.com/palkan/action-cable-testing
|
24
|
+
describe ActivityNotification::Test::NotificationWithDeviseChannel, type: :channel do
|
25
|
+
let(:test_user) { create(:confirmed_user) }
|
26
|
+
let(:unauthenticated_user) { create(:confirmed_user) }
|
27
|
+
let(:test_target) { create(:admin, user: test_user) }
|
28
|
+
let(:target_type) { "Admin" }
|
29
|
+
let(:typed_target_param) { "admin_id" }
|
30
|
+
let(:extra_params) { { devise_type: :users } }
|
31
|
+
let(:valid_session) {}
|
39
32
|
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
33
|
+
#TODO Make it more smart test method
|
34
|
+
#include Devise::Test::IntegrationHelpers
|
35
|
+
def sign_in(current_target)
|
36
|
+
described_class.new(ActionCable::Channel::ConnectionStub.new, {}).set_custom_current_target(current_target)
|
37
|
+
end
|
44
38
|
|
45
|
-
|
46
|
-
|
47
|
-
|
39
|
+
before do
|
40
|
+
@user_notification_action_cable_with_devise = User._notification_action_cable_with_devise
|
41
|
+
User._notification_action_cable_with_devise = true
|
42
|
+
end
|
48
43
|
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
44
|
+
after do
|
45
|
+
User._notification_action_cable_with_devise = @user_notification_action_cable_with_devise
|
46
|
+
end
|
47
|
+
|
48
|
+
context "signed in with devise as authenticated user" do
|
49
|
+
before do
|
50
|
+
sign_in test_user
|
55
51
|
end
|
52
|
+
|
53
|
+
it_behaves_like :notification_channel
|
54
|
+
end
|
56
55
|
|
57
|
-
|
58
|
-
|
56
|
+
context "signed in with devise as unauthenticated user" do
|
57
|
+
let(:target_params) { { target_type: target_type, devise_type: :users } }
|
59
58
|
|
60
|
-
|
61
|
-
|
62
|
-
|
59
|
+
before do
|
60
|
+
sign_in unauthenticated_user
|
61
|
+
end
|
63
62
|
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
end
|
63
|
+
it "rejects subscription" do
|
64
|
+
subscribe(target_params.merge({ typed_target_param => test_target }))
|
65
|
+
expect(subscription).to be_rejected
|
66
|
+
expect {
|
67
|
+
expect(subscription).to have_stream_from("#{ActivityNotification.config.notification_channel_prefix}_#{test_target.to_class_name}#{ActivityNotification.config.composite_key_delimiter}#{test_target.id}")
|
68
|
+
}.to raise_error(/Must be subscribed!/)
|
71
69
|
end
|
70
|
+
end
|
72
71
|
|
73
|
-
|
74
|
-
|
72
|
+
context "unsigned in with devise" do
|
73
|
+
let(:target_params) { { target_type: target_type, devise_type: :users } }
|
75
74
|
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
end
|
75
|
+
it "rejects subscription" do
|
76
|
+
subscribe(target_params.merge({ typed_target_param => test_target }))
|
77
|
+
expect(subscription).to be_rejected
|
78
|
+
expect {
|
79
|
+
expect(subscription).to have_stream_from("#{ActivityNotification.config.notification_channel_prefix}_#{test_target.to_class_name}#{ActivityNotification.config.composite_key_delimiter}#{test_target.id}")
|
80
|
+
}.to raise_error(/Must be subscribed!/)
|
83
81
|
end
|
82
|
+
end
|
84
83
|
|
85
|
-
|
86
|
-
|
84
|
+
context "without target_id and (typed_target)_id parameters for devise integrated channel with devise_type option" do
|
85
|
+
let(:target_params) { { target_type: target_type, devise_type: :users } }
|
87
86
|
|
88
|
-
|
89
|
-
|
90
|
-
|
87
|
+
before do
|
88
|
+
sign_in test_target.user
|
89
|
+
end
|
91
90
|
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
end
|
91
|
+
it "successfully subscribes" do
|
92
|
+
subscribe(target_params)
|
93
|
+
expect(subscription).to have_stream_from("#{ActivityNotification.config.notification_channel_prefix}_#{test_target.to_class_name}#{ActivityNotification.config.composite_key_delimiter}#{test_target.id}")
|
94
|
+
expect(subscription).to have_stream_from("activity_notification_channel_Admin##{test_target.id}")
|
97
95
|
end
|
98
96
|
end
|
99
97
|
end
|
@@ -34,7 +34,7 @@ shared_examples_for :common do
|
|
34
34
|
test_instance.extend(AdditionalMethods)
|
35
35
|
expect(ActivityNotification.resolve_value(test_instance, :custom_method)).to eq(1)
|
36
36
|
end
|
37
|
-
|
37
|
+
|
38
38
|
it "returns specified symbol with controller and additional arguments" do
|
39
39
|
module AdditionalMethods
|
40
40
|
def custom_method(controller, key)
|
@@ -45,6 +45,17 @@ shared_examples_for :common do
|
|
45
45
|
expect(ActivityNotification.resolve_value(test_instance, :custom_method, 'test1.key')).to eq(1)
|
46
46
|
expect(ActivityNotification.resolve_value(test_instance, :custom_method, 'test2.key')).to eq(0)
|
47
47
|
end
|
48
|
+
|
49
|
+
it "returns specified symbol with controller and additional arguments including hash as last argument" do
|
50
|
+
module AdditionalMethods
|
51
|
+
def custom_method(controller, key, options:)
|
52
|
+
controller == 'StubController' and key == 'test1.key' ? 1 : 0
|
53
|
+
end
|
54
|
+
end
|
55
|
+
test_instance.extend(AdditionalMethods)
|
56
|
+
expect(ActivityNotification.resolve_value(test_instance, :custom_method, 'test1.key', options: 1)).to eq(1)
|
57
|
+
expect(ActivityNotification.resolve_value(test_instance, :custom_method, 'test2.key', options: 1)).to eq(0)
|
58
|
+
end
|
48
59
|
end
|
49
60
|
|
50
61
|
context "with Proc" do
|
@@ -62,7 +73,7 @@ shared_examples_for :common do
|
|
62
73
|
test_proc = ->(controller, model){ controller == 'StubController' and model == test_instance ? 1 : 0 }
|
63
74
|
expect(ActivityNotification.resolve_value(test_instance, test_proc)).to eq(1)
|
64
75
|
end
|
65
|
-
|
76
|
+
|
66
77
|
it "returns specified lambda with controller, context(model) and additional arguments" do
|
67
78
|
test_proc = ->(controller, model, key){ controller == 'StubController' and model == test_instance and key == 'test1.key' ? 1 : 0 }
|
68
79
|
expect(ActivityNotification.resolve_value(test_instance, test_proc, 'test1.key')).to eq(1)
|
@@ -118,6 +129,17 @@ shared_examples_for :common do
|
|
118
129
|
expect(test_instance.resolve_value(:custom_method, 'test1.key')).to eq(1)
|
119
130
|
expect(test_instance.resolve_value(:custom_method, 'test2.key')).to eq(0)
|
120
131
|
end
|
132
|
+
|
133
|
+
it "returns specified symbol with additional arguments including hash as last argument" do
|
134
|
+
module AdditionalMethods
|
135
|
+
def custom_method(key, options:)
|
136
|
+
key == 'test1.key' ? 1 : 0
|
137
|
+
end
|
138
|
+
end
|
139
|
+
test_instance.extend(AdditionalMethods)
|
140
|
+
expect(test_instance.resolve_value(:custom_method, 'test1.key', options: 1)).to eq(1)
|
141
|
+
expect(test_instance.resolve_value(:custom_method, 'test2.key', options: 1)).to eq(0)
|
142
|
+
end
|
121
143
|
end
|
122
144
|
|
123
145
|
context "with Proc" do
|
@@ -188,4 +210,4 @@ shared_examples_for :common do
|
|
188
210
|
end
|
189
211
|
end
|
190
212
|
|
191
|
-
end
|
213
|
+
end
|
@@ -490,20 +490,18 @@ shared_examples_for :target do
|
|
490
490
|
end
|
491
491
|
end
|
492
492
|
|
493
|
-
|
494
|
-
|
495
|
-
|
496
|
-
|
497
|
-
|
498
|
-
expect(test_instance.notification_action_cable_channel_class_name).to eq(ActivityNotification::NotificationWithDeviseChannel.name)
|
499
|
-
end
|
493
|
+
describe "#notification_action_cable_channel_class_name" do
|
494
|
+
context "when custom_notification_action_cable_with_devise? returns true" do
|
495
|
+
it "returns ActivityNotification::NotificationWithDeviseChannel" do
|
496
|
+
described_class._notification_action_cable_with_devise = true
|
497
|
+
expect(test_instance.notification_action_cable_channel_class_name).to eq(ActivityNotification::NotificationWithDeviseChannel.name)
|
500
498
|
end
|
499
|
+
end
|
501
500
|
|
502
|
-
|
503
|
-
|
504
|
-
|
505
|
-
|
506
|
-
end
|
501
|
+
context "when custom_notification_action_cable_with_devise? returns false" do
|
502
|
+
it "returns ActivityNotification::NotificationChannel" do
|
503
|
+
described_class._notification_action_cable_with_devise = false
|
504
|
+
expect(test_instance.notification_action_cable_channel_class_name).to eq(ActivityNotification::NotificationChannel.name)
|
507
505
|
end
|
508
506
|
end
|
509
507
|
end
|
@@ -32,7 +32,7 @@ shared_examples_for :renderable do
|
|
32
32
|
expect(I18n.t("notification.#{target_type_key}.#{params_text_key}.text"))
|
33
33
|
.to eq(params_text_original)
|
34
34
|
expect(I18n.t("notification.#{target_type_key}.#{params_text_key}.text",
|
35
|
-
|
35
|
+
article_title: article_title))
|
36
36
|
.to eq(params_text_embedded)
|
37
37
|
end
|
38
38
|
|
@@ -40,7 +40,7 @@ shared_examples_for :renderable do
|
|
40
40
|
expect(I18n.t("notification.#{target_type_key}.#{group_text_key}.text"))
|
41
41
|
.to eq(group_text_original)
|
42
42
|
expect(I18n.t("notification.#{target_type_key}.#{group_text_key}.text",
|
43
|
-
{notifier_name: notifier_name, group_member_count: group_member_count, group_notification_count: group_notification_count}))
|
43
|
+
**{ notifier_name: notifier_name, group_member_count: group_member_count, group_notification_count: group_notification_count }))
|
44
44
|
.to eq(group_text_embedded)
|
45
45
|
end
|
46
46
|
|
@@ -50,10 +50,10 @@ shared_examples_for :renderable do
|
|
50
50
|
expect(I18n.t("notification.#{target_type_key}.#{plural_text_key}.text")[:other])
|
51
51
|
.to eq(plural_text_original_other)
|
52
52
|
expect(I18n.t("notification.#{target_type_key}.#{plural_text_key}.text",
|
53
|
-
{article_title: article_title, notifier_name: notifier_name, count: 1}))
|
53
|
+
**{ article_title: article_title, notifier_name: notifier_name, count: 1 }))
|
54
54
|
.to eq(plural_text_embedded_one)
|
55
55
|
expect(I18n.t("notification.#{target_type_key}.#{plural_text_key}.text",
|
56
|
-
{article_title: article_title, notifier_name: notifier_name, count: group_notification_count}))
|
56
|
+
**{ article_title: article_title, notifier_name: notifier_name, count: group_notification_count }))
|
57
57
|
.to eq(plural_text_embedded_other)
|
58
58
|
end
|
59
59
|
end
|
@@ -126,4 +126,4 @@ shared_examples_for :renderable do
|
|
126
126
|
# #layout_path
|
127
127
|
|
128
128
|
end
|
129
|
-
end
|
129
|
+
end
|
@@ -2,43 +2,23 @@ module ActivityNotification
|
|
2
2
|
module ControllerSpec
|
3
3
|
module RequestUtility
|
4
4
|
def get_with_compatibility action, params, session
|
5
|
-
|
6
|
-
get action, params, session
|
7
|
-
else
|
8
|
-
get action, params: params, session: session
|
9
|
-
end
|
5
|
+
get action, params: params, session: session
|
10
6
|
end
|
11
7
|
|
12
8
|
def post_with_compatibility action, params, session
|
13
|
-
|
14
|
-
post action, params, session
|
15
|
-
else
|
16
|
-
post action, params: params, session: session
|
17
|
-
end
|
9
|
+
post action, params: params, session: session
|
18
10
|
end
|
19
11
|
|
20
12
|
def put_with_compatibility action, params, session
|
21
|
-
|
22
|
-
put action, params, session
|
23
|
-
else
|
24
|
-
put action, params: params, session: session
|
25
|
-
end
|
13
|
+
put action, params: params, session: session
|
26
14
|
end
|
27
15
|
|
28
16
|
def delete_with_compatibility action, params, session
|
29
|
-
|
30
|
-
delete action, params, session
|
31
|
-
else
|
32
|
-
delete action, params: params, session: session
|
33
|
-
end
|
17
|
+
delete action, params: params, session: session
|
34
18
|
end
|
35
19
|
|
36
20
|
def xhr_with_compatibility method, action, params, session
|
37
|
-
|
38
|
-
xhr method, action, params, session
|
39
|
-
else
|
40
|
-
send method.to_s, action, xhr: true, params: params, session: session
|
41
|
-
end
|
21
|
+
send method.to_s, action, xhr: true, params: params, session: session
|
42
22
|
end
|
43
23
|
end
|
44
24
|
|
@@ -76,53 +56,37 @@ module ActivityNotification
|
|
76
56
|
def api_path
|
77
57
|
"/#{root_path}/#{target_type}/#{test_target.id}"
|
78
58
|
end
|
79
|
-
|
59
|
+
|
80
60
|
def schema_path
|
81
|
-
Rails.root.join('..', 'openapi.json')
|
61
|
+
Rails.root.join('..', 'openapi.json')
|
82
62
|
end
|
83
|
-
|
63
|
+
|
84
64
|
def write_schema_file(schema_json)
|
85
65
|
File.open(schema_path, "w") { |file| file.write(schema_json) }
|
86
66
|
end
|
87
|
-
|
67
|
+
|
88
68
|
def read_schema_file
|
89
69
|
JSON.parse(File.read(schema_path))
|
90
70
|
end
|
91
71
|
|
92
72
|
def committee_options
|
93
|
-
@committee_options ||= { schema: Committee::Drivers::load_from_file(schema_path), prefix: root_path, validate_success_only: true }
|
73
|
+
@committee_options ||= { schema: Committee::Drivers::load_from_file(schema_path), prefix: root_path, validate_success_only: true, parse_response_by_content_type: false }
|
94
74
|
end
|
95
75
|
|
96
76
|
def get_with_compatibility path, options = {}
|
97
|
-
|
98
|
-
get path, options[:params], options[:headers]
|
99
|
-
else
|
100
|
-
get path, options
|
101
|
-
end
|
77
|
+
get path, **options
|
102
78
|
end
|
103
79
|
|
104
80
|
def post_with_compatibility path, options = {}
|
105
|
-
|
106
|
-
post path, options[:params], options[:headers]
|
107
|
-
else
|
108
|
-
post path, options
|
109
|
-
end
|
81
|
+
post path, **options
|
110
82
|
end
|
111
83
|
|
112
84
|
def put_with_compatibility path, options = {}
|
113
|
-
|
114
|
-
put path, options[:params], options[:headers]
|
115
|
-
else
|
116
|
-
put path, options
|
117
|
-
end
|
85
|
+
put path, **options
|
118
86
|
end
|
119
87
|
|
120
88
|
def delete_with_compatibility path, options = {}
|
121
|
-
|
122
|
-
delete path, options[:params], options[:headers]
|
123
|
-
else
|
124
|
-
delete path, options
|
125
|
-
end
|
89
|
+
delete path, **options
|
126
90
|
end
|
127
91
|
|
128
92
|
def assert_all_schema_confirm(response, status)
|
@@ -133,4 +97,4 @@ module ActivityNotification
|
|
133
97
|
end
|
134
98
|
end
|
135
99
|
end
|
136
|
-
end
|
100
|
+
end
|