Skip to content

Commit 73fb894

Browse files
committed
Track jetpack_required_view_instructions_button_tapped
1 parent d3ae6c9 commit 73fb894

File tree

3 files changed

+57
-40
lines changed

3 files changed

+57
-40
lines changed

WooCommerce/Classes/Analytics/WooAnalyticsStat.swift

Lines changed: 41 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -28,46 +28,47 @@ public enum WooAnalyticsStat: String {
2828

2929
// MARK: Authentication Events
3030
//
31-
case signedIn = "signed_in"
32-
case logout = "account_logout"
33-
case openedLogin = "login_accessed"
34-
case loginFailed = "login_failed_to_login"
35-
case loginAutoFillCredentialsFilled = "login_autofill_credentials_filled"
36-
case loginAutoFillCredentialsUpdated = "login_autofill_credentials_updated"
37-
case loginEmailFormViewed = "login_email_form_viewed"
38-
case loginJetpackRequiredScreenViewed = "login_jetpack_required_screen_viewed"
39-
case loginMagicLinkOpenEmailClientViewed = "login_magic_link_open_email_client_viewed"
40-
case loginMagicLinkRequestFormViewed = "login_magic_link_request_form_viewed"
41-
case loginMagicLinkExited = "login_magic_link_exited"
42-
case loginMagicLinkFailed = "login_magic_link_failed"
43-
case loginMagicLinkOpened = "login_magic_link_opened"
44-
case loginMagicLinkRequested = "login_magic_link_requested"
45-
case loginMagicLinkSucceeded = "login_magic_link_succeeded"
46-
case loginPasswordFormViewed = "login_password_form_viewed"
47-
case loginURLFormViewed = "login_url_form_viewed"
48-
case loginURLHelpScreenViewed = "login_url_help_screen_viewed"
49-
case loginUsernamePasswordFormViewed = "login_username_password_form_viewed"
50-
case loginTwoFactorFormViewed = "login_two_factor_form_viewed"
51-
case loginEpilogueViewed = "login_epilogue_viewed"
52-
case loginProloguePaged = "login_prologue_paged"
53-
case loginPrologueViewed = "login_prologue_viewed"
54-
case loginPrologueContinueTapped = "login_prologue_jetpack_login_button_tapped"
55-
case loginPrologueJetpackInstructions = "login_prologue_jetpack_configuration_instructions_link_tapped"
56-
case loginForgotPasswordClicked = "login_forgot_password_clicked"
57-
case loginSocialButtonClick = "login_social_button_click"
58-
case loginSocialButtonFailure = "login_social_button_failure"
59-
case loginSocialConnectSuccess = "login_social_connect_success"
60-
case loginSocialConnectFailure = "login_social_connect_failure"
61-
case loginSocialSuccess = "login_social_login_success"
62-
case loginSocialFailure = "login_social_login_failure"
63-
case loginSocial2faNeeded = "login_social_2fa_needed"
64-
case loginSocialAccountsNeedConnecting = "login_social_accounts_need_connecting"
65-
case loginSocialErrorUnknownUser = "login_social_error_unknown_user"
66-
case onePasswordFailed = "one_password_failed"
67-
case onePasswordLogin = "one_password_login"
68-
case onePasswordSignup = "one_password_signup"
69-
case twoFactorCodeRequested = "two_factor_code_requested"
70-
case twoFactorSentSMS = "two_factor_sent_sms"
31+
case signedIn = "signed_in"
32+
case logout = "account_logout"
33+
case openedLogin = "login_accessed"
34+
case loginFailed = "login_failed_to_login"
35+
case loginAutoFillCredentialsFilled = "login_autofill_credentials_filled"
36+
case loginAutoFillCredentialsUpdated = "login_autofill_credentials_updated"
37+
case loginEmailFormViewed = "login_email_form_viewed"
38+
case loginJetpackRequiredScreenViewed = "login_jetpack_required_screen_viewed"
39+
case loginJetpackRequiredViewInstructionsButtonTapped = "login_jetpack_required_view_instructions_button_tapped"
40+
case loginMagicLinkOpenEmailClientViewed = "login_magic_link_open_email_client_viewed"
41+
case loginMagicLinkRequestFormViewed = "login_magic_link_request_form_viewed"
42+
case loginMagicLinkExited = "login_magic_link_exited"
43+
case loginMagicLinkFailed = "login_magic_link_failed"
44+
case loginMagicLinkOpened = "login_magic_link_opened"
45+
case loginMagicLinkRequested = "login_magic_link_requested"
46+
case loginMagicLinkSucceeded = "login_magic_link_succeeded"
47+
case loginPasswordFormViewed = "login_password_form_viewed"
48+
case loginURLFormViewed = "login_url_form_viewed"
49+
case loginURLHelpScreenViewed = "login_url_help_screen_viewed"
50+
case loginUsernamePasswordFormViewed = "login_username_password_form_viewed"
51+
case loginTwoFactorFormViewed = "login_two_factor_form_viewed"
52+
case loginEpilogueViewed = "login_epilogue_viewed"
53+
case loginProloguePaged = "login_prologue_paged"
54+
case loginPrologueViewed = "login_prologue_viewed"
55+
case loginPrologueContinueTapped = "login_prologue_jetpack_login_button_tapped"
56+
case loginPrologueJetpackInstructions = "login_prologue_jetpack_configuration_instructions_link_tapped"
57+
case loginForgotPasswordClicked = "login_forgot_password_clicked"
58+
case loginSocialButtonClick = "login_social_button_click"
59+
case loginSocialButtonFailure = "login_social_button_failure"
60+
case loginSocialConnectSuccess = "login_social_connect_success"
61+
case loginSocialConnectFailure = "login_social_connect_failure"
62+
case loginSocialSuccess = "login_social_login_success"
63+
case loginSocialFailure = "login_social_login_failure"
64+
case loginSocial2faNeeded = "login_social_2fa_needed"
65+
case loginSocialAccountsNeedConnecting = "login_social_accounts_need_connecting"
66+
case loginSocialErrorUnknownUser = "login_social_error_unknown_user"
67+
case onePasswordFailed = "one_password_failed"
68+
case onePasswordLogin = "one_password_login"
69+
case onePasswordSignup = "one_password_signup"
70+
case twoFactorCodeRequested = "two_factor_code_requested"
71+
case twoFactorSentSMS = "two_factor_sent_sms"
7172

7273
// MARK: Dashboard View Events
7374
//

WooCommerce/Classes/Authentication/Navigation Exceptions/JetpackErrorViewModel.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,8 @@ struct JetpackErrorViewModel: ULErrorViewModel {
4848
let safariViewController = SFSafariViewController(url: url)
4949
safariViewController.modalPresentationStyle = .pageSheet
5050
viewController?.present(safariViewController, animated: true)
51+
52+
analytics.track(.loginJetpackRequiredViewInstructionsButtonTapped)
5153
}
5254

5355
func didTapSecondaryButton(in viewController: UIViewController?) {

WooCommerce/WooCommerceTests/Authentication/JetpackErrorViewModelTests.swift

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,20 @@ final class JetpackErrorViewModelTests: XCTestCase {
8888
let firstEvent = try XCTUnwrap(analyticsProvider.receivedEvents.first)
8989
XCTAssertEqual(firstEvent, "login_jetpack_required_screen_viewed")
9090
}
91+
92+
func test_viewModel_logs_an_event_when_see_instructions_button_is_tapped() throws {
93+
// Given
94+
let viewModel = JetpackErrorViewModel(siteURL: Expectations.url, analytics: analytics)
95+
96+
assertEmpty(analyticsProvider.receivedEvents)
97+
98+
// When
99+
viewModel.didTapPrimaryButton(in: nil)
100+
101+
// Then
102+
let firstEvent = try XCTUnwrap(analyticsProvider.receivedEvents.first)
103+
XCTAssertEqual(firstEvent, "login_jetpack_required_view_instructions_button_tapped")
104+
}
91105
}
92106

93107

0 commit comments

Comments
 (0)