Add tests for XML color filter
diff --git a/LottieSample/screenshots/null_color_filter.png b/LottieSample/screenshots/null_color_filter.png
new file mode 100644
index 0000000..08aae7f
--- /dev/null
+++ b/LottieSample/screenshots/null_color_filter.png
Binary files differ
diff --git a/LottieSample/screenshots/yellow_color_filter.png b/LottieSample/screenshots/yellow_color_filter.png
new file mode 100644
index 0000000..64807cf
--- /dev/null
+++ b/LottieSample/screenshots/yellow_color_filter.png
Binary files differ
diff --git a/LottieSample/src/androidTest/java/com/airbnb/lottie/LottieTest.java b/LottieSample/src/androidTest/java/com/airbnb/lottie/LottieTest.java
index 5afeeef..42c01ff 100644
--- a/LottieSample/src/androidTest/java/com/airbnb/lottie/LottieTest.java
+++ b/LottieSample/src/androidTest/java/com/airbnb/lottie/LottieTest.java
@@ -5,6 +5,7 @@
import android.support.test.runner.AndroidJUnit4;
import com.airbnb.lottie.samples.MainActivity;
+import com.airbnb.lottie.samples.TestColorFilterActivity;
import org.junit.Rule;
import org.junit.Test;
@@ -18,11 +19,14 @@
@RunWith(AndroidJUnit4.class)
@LargeTest
public class LottieTest {
- @Rule public ActivityTestRule<MainActivity> activityRule = new ActivityTestRule<>(
+ @Rule public ActivityTestRule<MainActivity> mainActivityRule = new ActivityTestRule<>(
MainActivity.class);
+ @Rule public ActivityTestRule<TestColorFilterActivity> colorFilterActivityRule = new ActivityTestRule<>(
+ TestColorFilterActivity.class);
+
@Test public void testAll() {
- MainActivity activity = activityRule.getActivity();
+ MainActivity activity = mainActivityRule.getActivity();
TestRobot.testLinearAnimation(activity, "9squares-AlBoardman.json");
TestRobot.testLinearAnimation(activity, "EmptyState.json");
TestRobot.testLinearAnimation(activity, "HamburgerArrow.json");
@@ -73,5 +77,9 @@
TestRobot.testLinearAnimation(activity, "Tests/TrimPaths.json");
TestRobot.testChangingCompositions(activity, "TwitterHeart.json", "PinJump.json");
TestRobot.testSettingSameComposition(activity, "PinJump.json");
+
+ TestColorFilterActivity colorFilterActivity = colorFilterActivityRule.getActivity();
+ TestRobot.testAddYellowColorFilterInXml(colorFilterActivity);
+ TestRobot.testAddNullColorFilterInXml(colorFilterActivity);
}
}
diff --git a/LottieSample/src/androidTest/java/com/airbnb/lottie/TestRobot.java b/LottieSample/src/androidTest/java/com/airbnb/lottie/TestRobot.java
index 7b92edf..30445cc 100644
--- a/LottieSample/src/androidTest/java/com/airbnb/lottie/TestRobot.java
+++ b/LottieSample/src/androidTest/java/com/airbnb/lottie/TestRobot.java
@@ -1,8 +1,11 @@
package com.airbnb.lottie;
import android.support.annotation.Nullable;
+import android.view.View;
import com.airbnb.lottie.samples.MainActivity;
+import com.airbnb.lottie.samples.R;
+import com.airbnb.lottie.samples.TestColorFilterActivity;
import com.facebook.testing.screenshot.Screenshot;
import com.facebook.testing.screenshot.ViewHelpers;
@@ -99,4 +102,20 @@
// Do nothing.
}
}
+
+ static void testAddYellowColorFilterInXml(final TestColorFilterActivity activity) {
+ View view = activity.findViewById(R.id.yellow_color_filter);
+ Screenshot.snap(view)
+ .setGroup("test_color_filter")
+ .setName("yellow_color_filter")
+ .record();
+ }
+
+ static void testAddNullColorFilterInXml(final TestColorFilterActivity activity) {
+ View view = activity.findViewById(R.id.null_color_filter);
+ Screenshot.snap(view)
+ .setGroup("test_color_filter")
+ .setName("null_color_filter")
+ .record();
+ }
}
diff --git a/LottieSample/src/main/AndroidManifest.xml b/LottieSample/src/main/AndroidManifest.xml
index 622365d..e2c60b5 100644
--- a/LottieSample/src/main/AndroidManifest.xml
+++ b/LottieSample/src/main/AndroidManifest.xml
@@ -33,6 +33,9 @@
<activity
android:name=".QRScanActivity"
android:screenOrientation="portrait"/>
+ <activity
+ android:name=".TestColorFilterActivity"
+ android:screenOrientation="portrait"/>
</application>
</manifest>
\ No newline at end of file
diff --git a/LottieSample/src/main/java/com/airbnb/lottie/samples/TestColorFilterActivity.java b/LottieSample/src/main/java/com/airbnb/lottie/samples/TestColorFilterActivity.java
new file mode 100644
index 0000000..84ec8a2
--- /dev/null
+++ b/LottieSample/src/main/java/com/airbnb/lottie/samples/TestColorFilterActivity.java
@@ -0,0 +1,13 @@
+package com.airbnb.lottie.samples;
+
+import android.os.Bundle;
+import android.support.annotation.Nullable;
+import android.support.v7.app.AppCompatActivity;
+
+public class TestColorFilterActivity extends AppCompatActivity {
+
+ @Override protected void onCreate(@Nullable Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_test_color_filter);
+ }
+}
\ No newline at end of file
diff --git a/LottieSample/src/main/res/layout/activity_test_color_filter.xml b/LottieSample/src/main/res/layout/activity_test_color_filter.xml
new file mode 100644
index 0000000..ef5967d
--- /dev/null
+++ b/LottieSample/src/main/res/layout/activity_test_color_filter.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:orientation="vertical">
+
+ <com.airbnb.lottie.LottieAnimationView
+ android:id="@+id/yellow_color_filter"
+ android:layout_width="50dp"
+ android:layout_height="50dp"
+ android:background="#ffffff"
+ app:lottie_colorFilter="#ffff00"
+ app:lottie_fileName="HamburgerArrow.json"/>
+
+
+ <com.airbnb.lottie.LottieAnimationView
+ android:id="@+id/null_color_filter"
+ android:layout_width="50dp"
+ android:layout_height="50dp"
+ android:background="#ffffff"
+ app:lottie_colorFilter="@null"
+ app:lottie_fileName="HamburgerArrow.json"/>
+
+</LinearLayout>
\ No newline at end of file