OSDN Git Service

Add basic tests for FavoriteApp*
authorutzcoz <utzcoz@outlook.com>
Sat, 22 Aug 2020 12:09:25 +0000 (20:09 +0800)
committerutzcoz <utzcoz@outlook.com>
Sat, 22 Aug 2020 12:10:24 +0000 (20:10 +0800)
Test: ./gradlew test

Signed-off-by: utzcoz <utzcoz@outlook.com>
app/src/test/java/com/farmerbb/taskbar/service/FavoriteAppTileServiceTest.java [new file with mode: 0644]

diff --git a/app/src/test/java/com/farmerbb/taskbar/service/FavoriteAppTileServiceTest.java b/app/src/test/java/com/farmerbb/taskbar/service/FavoriteAppTileServiceTest.java
new file mode 100644 (file)
index 0000000..8b51f92
--- /dev/null
@@ -0,0 +1,61 @@
+package com.farmerbb.taskbar.service;
+
+import android.content.SharedPreferences;
+
+import com.farmerbb.taskbar.util.U;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.robolectric.Robolectric;
+import org.robolectric.RobolectricTestRunner;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+
+@RunWith(RobolectricTestRunner.class)
+public class FavoriteAppTileServiceTest {
+    private FavoriteApp1 app1;
+    private SharedPreferences prefs;
+
+    @Before
+    public void setUp() {
+        app1 = Robolectric.setupService(FavoriteApp1.class);
+        prefs = U.getSharedPreferences(app1);
+    }
+
+    @Test
+    public void testFavoriteApp1TileNumber() {
+        assertEquals(1, app1.tileNumber());
+    }
+
+    @Test
+    public void testFavoriteApp2TileNumber() {
+        FavoriteApp2 app2 = Robolectric.setupService(FavoriteApp2.class);
+        assertEquals(2, app2.tileNumber());
+    }
+
+    @Test
+    public void testFavoriteApp3TileNumber() {
+        FavoriteApp3 app3 = Robolectric.setupService(FavoriteApp3.class);
+        assertEquals(3, app3.tileNumber());
+    }
+
+    @Test
+    public void testFavoriteApp4TileNumber() {
+        FavoriteApp4 app4 = Robolectric.setupService(FavoriteApp4.class);
+        assertEquals(4, app4.tileNumber());
+    }
+
+    @Test
+    public void testFavoriteApp5TileNumber() {
+        FavoriteApp5 app5 = Robolectric.setupService(FavoriteApp5.class);
+        assertEquals(5, app5.tileNumber());
+    }
+
+    @Test
+    public void testOnTileRemoved() {
+        app1.onTileRemoved();
+        assertFalse(prefs.getBoolean("qs_tile_" + app1.tileNumber() + "_" + "added", true));
+    }
+}