use of com.kickstarter.models.Reward in project android-oss by kickstarter.
the class RewardViewModelTest method testEstimatedDeliveryDateTextViewText.
@Test
public void testEstimatedDeliveryDateTextViewText() {
final RewardViewModel vm = new RewardViewModel(environment());
final Project project = ProjectFactory.project();
final Reward reward = RewardFactory.reward().toBuilder().estimatedDeliveryOn(null).build();
final TestSubscriber<DateTime> estimatedDeliveryDateTextViewTextTest = TestSubscriber.create();
vm.outputs.estimatedDeliveryDateTextViewText().subscribe(estimatedDeliveryDateTextViewTextTest);
vm.inputs.projectAndReward(project, reward);
// If reward has no estimated delivery, no value should be emitted.
estimatedDeliveryDateTextViewTextTest.assertNoValues();
// Reward with estimated delivery should emit.
final DateTime estimatedDelivery = DateTime.now();
vm.inputs.projectAndReward(project, reward.toBuilder().estimatedDeliveryOn(estimatedDelivery).build());
estimatedDeliveryDateTextViewTextTest.assertValue(estimatedDelivery);
}
use of com.kickstarter.models.Reward in project android-oss by kickstarter.
the class RewardViewModelTest method testGoToCheckoutWhenProjectIsSuccessful.
@Test
public void testGoToCheckoutWhenProjectIsSuccessful() {
final RewardViewModel vm = new RewardViewModel(environment());
final Project project = ProjectFactory.successfulProject();
final Reward reward = RewardFactory.reward();
final TestSubscriber<Pair<Project, Reward>> goToCheckoutTest = TestSubscriber.create();
vm.outputs.goToCheckout().subscribe(goToCheckoutTest);
vm.inputs.projectAndReward(project, reward);
goToCheckoutTest.assertNoValues();
vm.inputs.rewardClicked();
goToCheckoutTest.assertNoValues();
}
use of com.kickstarter.models.Reward in project android-oss by kickstarter.
the class RewardViewModelTest method testTitleTextViewText.
@Test
public void testTitleTextViewText() {
final RewardViewModel vm = new RewardViewModel(environment());
final Project project = ProjectFactory.project();
final TestSubscriber<Boolean> titleTextViewIsHidden = TestSubscriber.create();
vm.outputs.titleTextViewIsHidden().subscribe(titleTextViewIsHidden);
final TestSubscriber<String> titleTextViewTextTest = TestSubscriber.create();
vm.outputs.titleTextViewText().subscribe(titleTextViewTextTest);
// Reward with no title should be hidden.
final Reward rewardWithNoTitle = RewardFactory.reward().toBuilder().title(null).build();
vm.inputs.projectAndReward(project, rewardWithNoTitle);
titleTextViewIsHidden.assertValues(true);
titleTextViewTextTest.assertNoValues();
// Reward with title should be visible.
final String title = "Digital bundle";
final Reward rewardWithTitle = RewardFactory.reward().toBuilder().title(title).build();
vm.inputs.projectAndReward(project, rewardWithTitle);
titleTextViewIsHidden.assertValues(true, false);
titleTextViewTextTest.assertValue(title);
}
use of com.kickstarter.models.Reward in project android-oss by kickstarter.
the class ViewPledgeViewModelTest method testRewardsItemAreHidden.
@Test
public void testRewardsItemAreHidden() {
final Reward reward = RewardFactory.reward().toBuilder().rewardsItems(null).build();
final Backing backing = BackingFactory.backing().toBuilder().reward(reward).build();
final ViewPledgeViewModel vm = vm(backing);
final TestSubscriber<List<RewardsItem>> rewardsItemsTest = TestSubscriber.create();
vm.outputs.rewardsItems().subscribe(rewardsItemsTest);
final TestSubscriber<Boolean> rewardsItemsAreHiddenTest = TestSubscriber.create();
vm.outputs.rewardsItemsAreHidden().subscribe(rewardsItemsAreHiddenTest);
vm.intent(intent(backing));
rewardsItemsTest.assertValues(emptyList());
rewardsItemsAreHiddenTest.assertValues(true);
}
use of com.kickstarter.models.Reward in project android-oss by kickstarter.
the class ViewPledgeViewModelTest method testRewardsItemAreEmitted.
@Test
public void testRewardsItemAreEmitted() {
final Reward reward = RewardFactory.itemized();
final Backing backing = BackingFactory.backing().toBuilder().reward(reward).build();
final ViewPledgeViewModel vm = vm(backing);
final TestSubscriber<List<RewardsItem>> rewardsItemsTest = TestSubscriber.create();
vm.outputs.rewardsItems().subscribe(rewardsItemsTest);
final TestSubscriber<Boolean> rewardsItemsAreHiddenTest = TestSubscriber.create();
vm.outputs.rewardsItemsAreHidden().subscribe(rewardsItemsAreHiddenTest);
vm.intent(intent(backing));
rewardsItemsTest.assertValues(reward.rewardsItems());
rewardsItemsAreHiddenTest.assertValues(false);
}
Aggregations