Class mozilla.components.service.pocket.stories.api.PocketJSONParserTest

13

tests

0

failures

0

ignored

0.420s

duration

100%

successful

Tests

Test Duration Result
GIVEN PocketJSONParser WHEN parsing valid stories recommendations THEN PocketApiStories are returned 0.030s passed
GIVEN a PocketJSONParser THEN its visibility is internal 0.030s passed
WHEN parsing stories recommendations for an empty string THEN null is returned 0.032s passed
WHEN parsing stories recommendations for an invalid JSON String THEN null is returned 0.031s passed
WHEN parsing stories recommendations with a null title value THEN those entries are dropped 0.031s passed
WHEN parsing stories recommendations with a null url THEN those entries are dropped 0.031s passed
WHEN parsing stories recommendations with missing categories THEN those entries are kept but with default values 0.037s passed
WHEN parsing stories recommendations with missing imageUrls THEN those entries are dropped 0.031s passed
WHEN parsing stories recommendations with missing publishers THEN those entries are kept but with default values 0.030s passed
WHEN parsing stories recommendations with missing timeToRead THEN those entries are kept but with default values 0.030s passed
WHEN parsing stories recommendations with missing titles THEN those entries are dropped 0.033s passed
WHEN parsing stories recommendations with missing urls THEN those entries are dropped 0.039s passed
WHEN parsing story recommendations with a null imageUrl THEN those entries are dropped 0.035s passed

Standard output

W/PackageParser: Unknown element under <manifest>: queries at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #19
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #155
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #163
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #171
W/PackageParser: Unknown element under <manifest>: queries at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #19
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #155
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #163
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #171
W/PackageParser: Unknown element under <manifest>: queries at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #19
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #155
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #163
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #171
W/PackageParser: Unknown element under <manifest>: queries at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #19
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #155
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #163
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #171
W [service-pocket] invalid JSON from the Pocket endpoint
W/PackageParser: Unknown element under <manifest>: queries at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #19
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #155
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #163
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #171
W/PackageParser: Unknown element under <manifest>: queries at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #19
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #155
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #163
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #171
W/PackageParser: Unknown element under <manifest>: queries at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #19
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #155
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #163
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #171
W/PackageParser: Unknown element under <manifest>: queries at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #19
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #155
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #163
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #171
W/PackageParser: Unknown element under <manifest>: queries at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #19
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #155
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #163
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #171
W/PackageParser: Unknown element under <manifest>: queries at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #19
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #155
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #163
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #171
W/PackageParser: Unknown element under <manifest>: queries at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #19
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #155
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #163
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #171
W/PackageParser: Unknown element under <manifest>: queries at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #19
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #155
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #163
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #171
W [service-pocket] invalid JSON from the Pocket endpoint
W/PackageParser: Unknown element under <manifest>: queries at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #19
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #155
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #163
W/PackageParser: No actions in intent filter at /builds/worker/checkouts/gecko/mobile/android/android-components/components/service/pocket/build/intermediates/apk_for_local_test/releaseUnitTest/packageReleaseUnitTestForUnitTest/apk-for-local-test.ap_ Binary XML file line #171

Standard error

org.json.JSONException: End of input at character 0 of 
	at org.json.JSONTokener.syntaxError(JSONTokener.java:469)
	at org.json.JSONTokener.nextValue(JSONTokener.java:101)
	at org.json.JSONObject.<init>(JSONObject.java:168)
	at org.json.JSONObject.<init>(JSONObject.java:185)
	at mozilla.components.service.pocket.stories.api.PocketJSONParser.jsonToPocketApiStories(PocketJSONParser.kt:31)
	at mozilla.components.service.pocket.stories.api.PocketJSONParserTest.WHEN parsing stories recommendations for an empty string THEN null is returned(PocketJSONParserTest.kt:168)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:569)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
	at org.robolectric.RobolectricTestRunner$HelperTestRunner$1.evaluate(RobolectricTestRunner.java:489)
	at org.robolectric.internal.SandboxTestRunner$2.lambda$evaluate$2(SandboxTestRunner.java:291)
	at org.robolectric.internal.bytecode.Sandbox.lambda$runOnMainThread$0(Sandbox.java:104)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:840)
org.json.JSONException: Expected ':' after !! at character 4 of {!!}}
	at org.json.JSONTokener.syntaxError(JSONTokener.java:469)
	at org.json.JSONTokener.readObject(JSONTokener.java:397)
	at org.json.JSONTokener.nextValue(JSONTokener.java:104)
	at org.json.JSONObject.<init>(JSONObject.java:168)
	at org.json.JSONObject.<init>(JSONObject.java:185)
	at mozilla.components.service.pocket.stories.api.PocketJSONParser.jsonToPocketApiStories(PocketJSONParser.kt:31)
	at mozilla.components.service.pocket.stories.api.PocketJSONParserTest.WHEN parsing stories recommendations for an invalid JSON String THEN null is returned(PocketJSONParserTest.kt:173)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:569)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
	at org.robolectric.RobolectricTestRunner$HelperTestRunner$1.evaluate(RobolectricTestRunner.java:489)
	at org.robolectric.internal.SandboxTestRunner$2.lambda$evaluate$2(SandboxTestRunner.java:291)
	at org.robolectric.internal.bytecode.Sandbox.lambda$runOnMainThread$0(Sandbox.java:104)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:840)