Skip to content

Commit f390907

Browse files
authored
Additional unit test for passing in a null or empty string datafile (#99)
1 parent 0f998e1 commit f390907

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed

android-sdk/src/androidTest/java/com/optimizely/ab/android/sdk/OptimizelyManagerTest.java

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626

2727
import com.optimizely.ab.android.shared.ServiceScheduler;
2828
import com.optimizely.ab.android.user_profile.AndroidUserProfile;
29+
import com.optimizely.ab.config.parser.ConfigParseException;
2930

3031
import org.junit.Before;
3132
import org.junit.Test;
@@ -98,6 +99,45 @@ public void initialize() {
9899
assertTrue(intent.getComponent().getShortClassName().contains("DataFileService"));
99100
}
100101

102+
@Test
103+
public void initializeWithEmptyDatafile() {
104+
Context context = mock(Context.class);
105+
Context appContext = mock(Context.class);
106+
when(context.getApplicationContext()).thenReturn(appContext);
107+
when(appContext.getPackageName()).thenReturn("com.optly");
108+
109+
String emptyString = "";
110+
111+
optimizelyManager.initialize(context, emptyString);
112+
verify(logger).error(eq("Unable to parse compiled data file"), any(ConfigParseException.class));
113+
}
114+
115+
@Test
116+
public void initializeWithMalformedDatafile() {
117+
Context context = mock(Context.class);
118+
Context appContext = mock(Context.class);
119+
when(context.getApplicationContext()).thenReturn(appContext);
120+
when(appContext.getPackageName()).thenReturn("com.optly");
121+
122+
String emptyString = "malformed data";
123+
124+
optimizelyManager.initialize(context, emptyString);
125+
verify(logger).error(eq("Unable to parse compiled data file"), any(ConfigParseException.class));
126+
}
127+
128+
@Test
129+
public void initializeWithNullDatafile() {
130+
Context context = mock(Context.class);
131+
Context appContext = mock(Context.class);
132+
when(context.getApplicationContext()).thenReturn(appContext);
133+
when(appContext.getPackageName()).thenReturn("com.optly");
134+
135+
String emptyString = null;
136+
137+
optimizelyManager.initialize(context, emptyString);
138+
verify(logger).error(eq("Unable to parse compiled data file"), any(ConfigParseException.class));
139+
}
140+
101141
@Test
102142
public void stop() {
103143
Context context = mock(Context.class);

0 commit comments

Comments
 (0)