10000 [🔮] Optimizely X; pledge_cta_copy experiment support by eoji · Pull Request #731 · kickstarter/android-oss · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

[🔮] Optimizely X; pledge_cta_copy experiment support #731

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

Merged
merged 5 commits into from
Feb 12, 2020
Merged

Conversation

eoji
Copy link
Contributor
@eoji eoji commented Feb 3, 2020

Friendly request to review: #730 so that these tests can pass.

📲 What

Adding pledge_cta_copy experiment using Optmizely X.

🤔 Why

🔮

🛠 How

  • Updated config and strings (Note: go rewardless copy was deleted but I kept it since that code still exists in this codebase).
  • Optimizely X
    • Added Optimizely X library to build.gradle
    • Added OptimizelyExperiment class to support experiments and generic variants.
  • ExperimentsClientType
    • Added ExperimentsClientType interface to handle experiment clients.
    • Added ExperimentsClientType to Environment.
    • OptimizelyExperimentsClient is real implementation using Optimizely client.
      • Initializing Optimizely in ApplicationModule.
    • MockExperimentsClientType is test implementation.
      • Added MockExperimentsClientType to base Environment in KSRobolectricTestCase
    • Added ExperimentUtils.attributes.
  • pledge_cta_copy experiment
    • Added OptimizeExperiment.Key.PLEDGE_CTA_COPY
    • Added ExperimentUtils for Optimizely attributes.
    • ProjectViewUtils.pledgeActionButtonText can now also take in an OptimizelyExperiment.Variant.
  • bugs
    • Fixed bug in UnregisterService where FirebaseInstanceId token was not recycled. The thread was never started.
  • Tests
    • Tests for ExperimentUtils.
    • Updated tests in ProjectViewUtils and ProjectViewModelTest

👀 See

variant-2 control
screenshot-2020-01-31_113507 screenshot-2020-02-03_142930

📋 QA

View the project page with native checkout enabled.

Story 📖

NT-599

eoji added 3 commits February 3, 2020 11:22
… it since that code still exists).

Added Optimizely X library.
Added OptimizelyExperiment class to support experiments and generic variants.
Added ExperimentUtils for Optimizely attributes.
Added support for pledge_cta_copy experiment in ProjectViewModel.
ProjectViewUtils.pledgeActionButtonText can now also take in an Optimizely variant.
Added ExperimentsClientType interface to handle experiment clients. OptimizelyExperimentsClient is real implementation. MockExperimentsClientType is test implementation.
Added ExperimentsClientType to Environment.
Initializing Optimizely in ApplicationModule.
Fixed bug in UnregisterService where FirebaseInstanceId token was not recycled.
Copy link
Contributor
@justinswart justinswart left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Couldn't spot any red flags!

@justinswart
Copy link
Contributor
justinswart commented Feb 3, 2020

Couldn't spot any red flags!

Perhaps just that tests aren't passing? 😬

@eoji
Copy link
Contributor Author
eoji commented Feb 4, 2020

Marking this as blocked until the 2.2.0 RC is cut

@eoji eoji removed the blocked ✋ label Feb 12, 2020
@eoji eoji merged commit 36dd0be into master Feb 12, 2020
@eoji eoji deleted the optimizely branch February 12, 2020 21:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants
0