Skip to content

Commit 8f2eb66

Browse files
committed
Fix bug for resubscribers with newsletter
1 parent ff093e8 commit 8f2eb66

File tree

3 files changed

+8
-5
lines changed

3 files changed

+8
-5
lines changed

app/controllers/users/newsletter_subscriptions_controller.rb

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,8 @@ def new
2626

2727
def create
2828
create_user_params = params.require(:user).permit(:email)
29-
@user = User.find_or_initialize_by(email: create_user_params[:email]) do |u|
30-
u.subscribing = true
31-
end
32-
29+
@user = User.find_or_initialize_by(email: create_user_params[:email])
30+
@user.subscribing = true
3331
@newsletter_subscription = @user.newsletter_subscription || @user.build_newsletter_subscription
3432

3533
@user.save

spec/factories/users.rb

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,11 @@
2222
password_confirmation { nil }
2323
end
2424

25+
trait :subscriber do
26+
subscribing
27+
newsletter_subscription
28+
end
29+
2530
trait :subscribed do
2631
newsletter_subscription
2732
end

spec/requests/users/newsletter_subscriptions_spec.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@
9595
end
9696

9797
it "disallows for a subscribing with an already subscribed email" do
98-
user = FactoryBot.create(:user, :subscribed)
98+
user = FactoryBot.create(:user, :subscriber)
9999

100100
expect {
101101
post users_newsletter_subscriptions_path,

0 commit comments

Comments
 (0)