diff --git a/Habitica/src/test/java/com/habitrpg/android/habitica/api/TagAPITests.java b/Habitica/src/test/java/com/habitrpg/android/habitica/api/TagAPITests.java index 498bedba6..d2abde3a8 100644 --- a/Habitica/src/test/java/com/habitrpg/android/habitica/api/TagAPITests.java +++ b/Habitica/src/test/java/com/habitrpg/android/habitica/api/TagAPITests.java @@ -1,8 +1,10 @@ package com.habitrpg.android.habitica.api; import com.habitrpg.android.habitica.BuildConfig; +import com.magicmicky.habitrpgwrapper.lib.models.HabitRPGUser; import com.magicmicky.habitrpgwrapper.lib.models.Tag; +import junit.framework.Assert; import org.junit.Test; import org.junit.runner.RunWith; import org.robolectric.RobolectricGradleTestRunner; @@ -10,6 +12,9 @@ import org.robolectric.annotation.Config; import android.os.Build; +import java.util.List; +import java.util.UUID; + import rx.observers.TestSubscriber; @Config(constants = BuildConfig.class, sdk = Build.VERSION_CODES.M) @@ -25,6 +30,48 @@ public class TagAPITests extends BaseAPITests { testSubscriber.assertNoErrors(); testSubscriber.assertCompleted(); testSubscriber.assertValueCount(1); + + } + + @Test + public void shouldUpdateTag() { + TestSubscriber testSubscriber = new TestSubscriber<>(); + TestSubscriber userSubscriber = new TestSubscriber<>(); + + Tag t = new Tag(); + String newname = "BAR"; + t.setId(String.valueOf(UUID.randomUUID())); + t.setName(newname); + + //Get the test user so we can obtain their tags + apiHelper.apiService.getUser().subscribe(userSubscriber); + userSubscriber.assertNoErrors(); + userSubscriber.assertCompleted(); + List users = userSubscriber.getOnNextEvents(); + + //Attempt to update their first tag + String testId = users.get(0).getTags().get(0).getId(); + apiHelper.apiService.updateTag(testId,t).subscribe(testSubscriber); + testSubscriber.assertNoErrors(); + testSubscriber.assertCompleted(); + Assert.assertEquals(newname,testSubscriber.getOnNextEvents().get(0).getName()); + + } + + @Test + public void shouldDeleteTag() { + TestSubscriber testSub = new TestSubscriber<>(); + TestSubscriber userSubscriber = new TestSubscriber<>(); + + apiHelper.apiService.getUser().subscribe(userSubscriber); + userSubscriber.assertNoErrors(); + userSubscriber.assertCompleted(); + List users = userSubscriber.getOnNextEvents(); + + String testId = users.get(0).getTags().get(0).getId(); + apiHelper.apiService.deleteTag(testId).subscribe(testSub); + testSub.assertNoErrors(); + testSub.assertCompleted(); } }