-
Notifications
You must be signed in to change notification settings - Fork 71
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ユーザーが休会した時にメンターと管理者にサイト内通知とメール通知が行くようにした #5454
ユーザーが休会した時にメンターと管理者にサイト内通知とメール通知が行くようにした #5454
Conversation
d035c39
to
37ae72f
Compare
6a078b6
to
eb48cfa
Compare
1. 分離せずにNotificationFacade経由で呼び出すと同じ通知が複数回discordに飛ぶため
37ae72f
to
cc888f7
Compare
@@ -53,7 +53,7 @@ class CurrentUserTest < ApplicationSystemTestCase | |||
visit_with_auth '/current_user/edit', 'komagata' | |||
fill_in 'user[times_url]', with: 'https://example.com/channels/1234/5678/' | |||
click_button '更新する' | |||
assert_text '分報チャンネル URL は Discord のチャンネル URL を入力してください' | |||
assert_text '分報チャンネル URLはDiscordのチャンネルURLを入力してください' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
今回のissueとは関係がありませんが、テストを通すため修正しました
@yuma-matsui |
@keiz1213 |
fill_in 'hibernation[scheduled_return_on]', with: Time.current.next_month | ||
fill_in 'hibernation[reason]', with: 'テストのため' | ||
click_button '休会する' | ||
page.driver.browser.switch_to.alert.accept |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ダイアログの確認についてはCapybaraのaccept_confirm
メソッドを使った方が良さそうです。
accept_confirm do
click_button '休会する'
end
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
確かにこちらのほうがスッキリ書けてわかりやすいです!スッキリ書けるだけではなく他にも色々メリットがあるのですね💡勉強になります。こちら修正しました。
visit_with_auth notifications_path, 'komagata' | ||
find('#notifications.loaded', wait: 10) | ||
within first('.card-list-item') do | ||
assert_no_selector '.card-list-item-title__link-label', text: ' kimuraさんが休会しました。' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
text: ' kimuraさんが休会しました。'
こちら余計なspace
が含まれてしまっているかもです。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
全然気づきませんでした😅こちら修正しました。
visit_with_auth notifications_path, 'komagata' | ||
find('#notifications.loaded', wait: 10) | ||
within first('.card-list-item') do | ||
assert_no_selector '.card-list-item-title__link-label', text: ' kensyuさんが休会しました。' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
同上です。
fill_in 'hibernation[scheduled_return_on]', with: Time.current.next_month | ||
fill_in 'hibernation[reason]', with: 'テストのため' | ||
click_button '休会する' | ||
page.driver.browser.switch_to.alert.accept |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
同上です。
visit_with_auth notifications_path, 'komagata' | ||
find('#notifications.loaded', wait: 10) | ||
within first('.card-list-item') do | ||
assert_no_selector '.card-list-item-title__link-label', text: ' senpaiさんが休会しました。' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
同上です。
fill_in 'hibernation[scheduled_return_on]', with: Time.current.next_month | ||
fill_in 'hibernation[reason]', with: 'テストのため' | ||
click_button '休会する' | ||
page.driver.browser.switch_to.alert.accept |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
同上です。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@keiz1213
お疲れ様です。
いくつかコメントしました!
ご確認をお願いします。
@yuma-matsui |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
修正ありがとうございます!!
LGTMです🙆♂️
@komagata |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
確認させて頂きました。OKです〜🙆♂️
issue
概要
ユーザーが休会した時に管理者、メンターに
サイト内通知
とメール通知
が行われるようにしました。備考
サイト内通知
とメール通知
になります。DiscordNotifierの呼び出し方法について
実装済みのDiscord通知では同じ通知が複数回通知されてしまうため、DiscordNotifierの呼び出しをNotificationFacadeから独立させました。
Discordへの通知を確認するための準備
Discordへの通知を確認するために自身のDiscordアカウントで
をお願いいたします。
確認用のサーバーの作成とwebhookURLの取得方法
取得したwebhookURLをローカルのマシンの環境変数に設定をお願いします。
変更確認方法
feature/notification-of-hibernation
をローカルに取り込む。rails s
でサーバーを立ち上げるkomagata
、machida
、mentormentaro
、adminonly
、unadmentor
、でログインする通知
をクリックし、休会通知が来ていないことを確認する。(mentormentaro
の場合、hatsunoが休会しました。
という通知がありますが無視してください)kimura
でログインし、ヘッダーのユーザーメニューから休会手続きを行う。通知
をクリックし、kimuraの休会通知が来ていることを確認する。