diff --git a/Test Results - MainActivityTest.html b/Test Results - MainActivityTest.html
new file mode 100644
index 0000000..2fc5a54
--- /dev/null
+++ b/Test Results - MainActivityTest.html
@@ -0,0 +1,687 @@
+
+
+
+
+Test Results — MainActivityTest
+
+
+
+
+
+
+
+
+
+
+
+
+
+-
+
+
1.58 s
+pl.edu.amu.wmi.socialaggregator.MainActivityTest
+
+-
+
+
829 ms
+passedclickAddNewSocial_shouldOpenAddNewSocialActivity
+
+-
+
+
754 ms
+passedclickAddNewSocial_shouldOpenAddNewNewPostActivity
+
+-
+Connected to process 13465 on device 'Nexus_5X_API_29_x86 [emulator-5554]'.
Capturing and displaying logcat messages from application. This behavior can be disabled in the "Logcat output" section of the "Debugger" settings page.
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
I/chatty: uid=10133(pl.edu.amu.wmi.socialaggregator) identical 3 lines
I/IdlingResourceRegistry: All idling resources are idle.
+
+-
+W/ocialaggregato: Accessing hidden method Lsun/misc/Unsafe;->compareAndSwapObject(Ljava/lang/Object;JLjava/lang/Object;Ljava/lang/Object;)Z (greylist, linking, allowed)
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
I/ViewInteraction: Checking 'androidx.test.espresso.intent.Intents$2@2be333a' assertion on view is a root view.
+
+-
+W/ocialaggregato: Accessing hidden field Landroid/app/Activity;->mResultCode:I (greylist, reflection, allowed)
Accessing hidden field Landroid/app/Activity;->mResultData:Landroid/content/Intent; (greylist, reflection, allowed)
+
+-
+I/TestRunner: finished: clickAddNewSocial_shouldOpenAddNewSocialActivity(pl.edu.amu.wmi.socialaggregator.MainActivityTest)
I/MonitoringInstr: Activities that are still in CREATED to STOPPED: 2
Finishing activity: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@ba61ee9
I/MonitoringInstr: Unstopped activity count: 2
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@ba61ee9 in: PAUSED
D/EGL_emulation: eglMakeCurrent: 0xdf31a1e0: ver 2 0 (tinfo 0xdf30f7c0)
D/EGL_emulation: eglMakeCurrent: 0xdf31a1e0: ver 2 0 (tinfo 0xdf30f7c0)
+
+-
+I/MonitoringInstr: Unstopped activity count: 2
I/MonitoringInstr: Unstopped activity count: 2
I/MonitoringInstr: Unstopped activity count: 2
I/chatty: uid=10133(pl.edu.amu.wmi.socialaggregator) roidJUnitRunner identical 6 lines
I/MonitoringInstr: Unstopped activity count: 2
+
+-
+D/EGL_emulation: eglMakeCurrent: 0xdf31a1e0: ver 2 0 (tinfo 0xdf30f7c0)
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@ba61ee9 in: STOPPED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@ba61ee9 in: DESTROYED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@51fb022 in: STOPPED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@51fb022 in: DESTROYED
+
+-
+I/TestRunner: started: clickAddNewSocial_shouldOpenAddNewNewPostActivity(pl.edu.amu.wmi.socialaggregator.MainActivityTest)
+
+-
+W/ActivityTestRule: getActivityIntent() returned null using default: Intent(Intent.ACTION_MAIN)
W/ActivityThread: handleWindowVisibility: no activity for token android.os.BinderProxy@eb54878
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@10084b7 in: PRE_ON_CREATE
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@10084b7 in: CREATED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@10084b7 in: STARTED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@10084b7 in: RESUMED
D/EGL_emulation: eglMakeCurrent: 0xdf31a1e0: ver 2 0 (tinfo 0xdf30f7c0)
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/ViewInteraction: Performing 'single click' action on view with id: pl.edu.amu.wmi.socialaggregator:id/createPostButton
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/chatty: uid=10133(pl.edu.amu.wmi.socialaggregator) identical 2 lines
I/IdlingResourceRegistry: All idling resources are idle.
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@10084b7 in: PAUSED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba36b8
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba36b8
+
+-
+W/ActivityThread: handleWindowVisibility: no activity for token android.os.BinderProxy@c458c91
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@bf6dd82 in: PRE_ON_CREATE
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba36b8
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba36b8
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@bf6dd82 in: CREATED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba36b8
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba36b8
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@bf6dd82 in: STARTED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba36b8
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba36b8
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@bf6dd82 in: RESUMED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba36b8
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba36b8
D/EGL_emulation: eglMakeCurrent: 0xdf31a1e0: ver 2 0 (tinfo 0xdf30f7c0)
D/EGL_emulation: eglMakeCurrent: 0xdf31a1e0: ver 2 0 (tinfo 0xdf30f7c0)
D/EGL_emulation: eglMakeCurrent: 0xdf31a1e0: ver 2 0 (tinfo 0xdf30f7c0)
+
+-
+I/chatty: uid=10133(pl.edu.amu.wmi.socialaggregator) RenderThread identical 1 line
+
+-
+D/EGL_emulation: eglMakeCurrent: 0xdf31a1e0: ver 2 0 (tinfo 0xdf30f7c0)
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
+
+-
+D/EGL_emulation: eglMakeCurrent: 0xdf31a1e0: ver 2 0 (tinfo 0xdf30f7c0)
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
I/chatty: uid=10133(pl.edu.amu.wmi.socialaggregator) identical 2 lines
I/IdlingResourceRegistry: All idling resources are idle.
+
+-
+W/ocialaggregato: Accessing hidden method Lsun/misc/Unsafe;->compareAndSwapObject(Ljava/lang/Object;JLjava/lang/Object;Ljava/lang/Object;)Z (greylist, linking, allowed)
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/ViewInteraction: Checking 'androidx.test.espresso.intent.Intents$2@f11aef9' assertion on view is a root view.
I/TestRunner: finished: clickAddNewSocial_shouldOpenAddNewNewPostActivity(pl.edu.amu.wmi.socialaggregator.MainActivityTest)
I/MonitoringInstr: Activities that are still in CREATED to STOPPED: 2
I/MonitoringInstr: Finishing activity: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@bf6dd82
I/MonitoringInstr: Unstopped activity count: 2
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Test Results - Tests_in_'pl_edu_amu_wmi_socialaggregator'.html b/Test Results - Tests_in_'pl_edu_amu_wmi_socialaggregator'.html
new file mode 100644
index 0000000..bbfa19d
--- /dev/null
+++ b/Test Results - Tests_in_'pl_edu_amu_wmi_socialaggregator'.html
@@ -0,0 +1,1010 @@
+
+
+
+
+Test Results — Tests in 'pl.edu.amu.wmi.socialaggregator'
+
+
+
+
+
+
+
+
+
+
+
+
+
+-
+
+
3.80 s
+pl.edu.amu.wmi.socialaggregator.AddSocialActivityTest
+
+-
+
+
886 ms
+passedinitialState_noAddedSocials_oneAvailableSocial
+
+-
+
+
2.92 s
+passedclickingSocials_movesThemFormAvailableToAdded_etViceVersa
+
+-
+I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
+
+-
+E/THREAD_STATE: Thread[Instr: androidx.test.runner.AndroidJUnitRunner,5,main]
dalvik.system.VMStack.getThreadStackTrace(Native Method)
java.lang.Thread.getStackTrace(Thread.java:1565)
java.lang.Thread.getAllStackTraces(Thread.java:1615)
androidx.test.runner.MonitoringInstrumentation.getThreadState(MonitoringInstrumentation.java:680)
androidx.test.runner.MonitoringInstrumentation.dumpThreadStateToOutputs(MonitoringInstrumentation.java:675)
androidx.test.runner.MonitoringInstrumentation.waitForActivitiesToComplete(MonitoringInstrumentation.java:406)
androidx.test.runner.AndroidJUnitRunner$1.run(AndroidJUnitRunner.java:452)
androidx.test.internal.runner.listener.ActivityFinisherRunListener.testStarted(ActivityFinisherRunListener.java:48)
org.junit.runner.notification.SynchronizedRunListener.testStarted(SynchronizedRunListener.java:49)
org.junit.runner.notification.RunNotifier$3.notifyListener(RunNotifier.java:121)
org.junit.runner.notification.RunNotifier$SafeNotifier.run(RunNotifier.java:72)
org.junit.runner.notification.RunNotifier.fireTestStarted(RunNotifier.java:118)
org.junit.internal.runners.model.EachTestNotifier.fireTestStarted(EachTestNotifier.java:42)
org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:323)
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
org.junit.runners.ParentRunner.run(ParentRunner.java:363)
androidx.test.ext.junit.runners.AndroidJUnit4.run(AndroidJUnit4.java:104)
org.junit.runners.Suite.runChild(Suite.java:128)
org.junit.runners.Suite.runChild(Suite.java:27)
org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
org.junit.runners.ParentRunner.run(ParentRunner.java:363)
org.junit.runner.JUnitCore.run(JUnitCore.java:137)
org.junit.runner.JUnitCore.run(JUnitCore.java:115)
androidx.test.internal.runner.TestExecutor.execute(TestExecutor.java:56)
androidx.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:395)
android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1939)
Thread[FinalizerDaemon,5,system]
java.lang.Object.wait(Native Method)
java.lang.Object.wait(Object.java:407)
java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:188)
java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:209)
java.lang.Daemons$FinalizerDaemon.run(Daemons.java:206)
java.lang.Thread.run(Thread.java:760)
Thread[HeapTaskDaemon,5,system]
dalvik.system.VMRuntime.runHeapTasks(Native Method)
java.lang.Daemons$HeapTaskDaemon.run(Daemons.java:435)
java.lang.Thread.run(Thread.java:760)
Thread[FileObserver,5,main]
android.os.FileObserver$ObserverThread.observe(Native Method)
android.os.FileObserver$ObserverThread.run(FileObserver.java:85)
Thread[Thread-3,5,main]
java.lang.Thread.sleep(Native Method)
java.lang.Thread.sleep(Thread.java:370)
java.lang.Thread.sleep(Thread.java:312)
android.content.res.MiuiResourcesImpl$1.run(MiuiResourcesImpl.java:283)
Thread[ReferenceQueueDaemon,5,system]
java.lang.Object.wait(Native Method)
java.lang.Daemons$ReferenceQueueDaemon.run(Daemons.java:152)
java.lang.Thread.run(Thread.java:760)
Thread[InstrumentationConnectionThread,5,main]
android.os.MessageQueue.nativePollOnce(Native Method)
android.os.Message
+
+-
+W/MonitoringInstr: Still 1 activities active after waiting 2000 ms.
W/ActivityTestRule: getActivityIntent() returned null using default: Intent(Intent.ACTION_MAIN)
+
+-
+I/Timeline: Timeline: Activity_launch_request time:753986359 intent:Intent { act=android.intent.action.MAIN flg=0x10000000 cmp=pl.edu.amu.wmi.socialaggregator/.activity.AddSocialActivity }
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@8a5c6ab in: PRE_ON_CREATE
running callback: androidx.test.core.app.ActivityScenario$1@2eb59fc
+
+-
+V/ActivityScenario: Activity lifecycle changed event received but ignored because the intent does not match. startActivityIntent=Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=pl.edu.amu.wmi.socialaggregator/.activity.AddSocialActivity }, activity.getIntent()=Intent { act=android.intent.action.MAIN flg=0x10000000 cmp=pl.edu.amu.wmi.socialaggregator/.activity.AddSocialActivity }, activity=pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@8a5c6ab
+
+-
+D/LifecycleMonitor: callback completes: androidx.test.core.app.ActivityScenario$1@2eb59fc
+
+-
+V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@1eb9caa
BoostFramework() : mPerf = com.qualcomm.qti.Performance@89b09b
V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@1519c38
BoostFramework() : mPerf = com.qualcomm.qti.Performance@8a8c411
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@8a5c6ab in: CREATED
running callback: androidx.test.core.app.ActivityScenario$1@2eb59fc
+
+-
+V/ActivityScenario: Activity lifecycle changed event received but ignored because the intent does not match. startActivityIntent=Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=pl.edu.amu.wmi.socialaggregator/.activity.AddSocialActivity }, activity.getIntent()=Intent { act=android.intent.action.MAIN flg=0x10000000 cmp=pl.edu.amu.wmi.socialaggregator/.activity.AddSocialActivity }, activity=pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@8a5c6ab
+
+-
+D/LifecycleMonitor: callback completes: androidx.test.core.app.ActivityScenario$1@2eb59fc
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@8a5c6ab in: STARTED
running callback: androidx.test.core.app.ActivityScenario$1@2eb59fc
+
+-
+V/ActivityScenario: Activity lifecycle changed event received but ignored because the intent does not match. startActivityIntent=Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=pl.edu.amu.wmi.socialaggregator/.activity.AddSocialActivity }, activity.getIntent()=Intent { act=android.intent.action.MAIN flg=0x10000000 cmp=pl.edu.amu.wmi.socialaggregator/.activity.AddSocialActivity }, activity=pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@8a5c6ab
+
+-
+D/LifecycleMonitor: callback completes: androidx.test.core.app.ActivityScenario$1@2eb59fc
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@8a5c6ab in: RESUMED
running callback: androidx.test.core.app.ActivityScenario$1@2eb59fc
+
+-
+V/ActivityScenario: Activity lifecycle changed event received but ignored because the intent does not match. startActivityIntent=Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=pl.edu.amu.wmi.socialaggregator/.activity.AddSocialActivity }, activity.getIntent()=Intent { act=android.intent.action.MAIN flg=0x10000000 cmp=pl.edu.amu.wmi.socialaggregator/.activity.AddSocialActivity }, activity=pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@8a5c6ab
+
+-
+D/LifecycleMonitor: callback completes: androidx.test.core.app.ActivityScenario$1@2eb59fc
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@8d0c8e3 in: STOPPED
running callback: androidx.test.core.app.ActivityScenario$1@2eb59fc
+
+-
+V/ActivityScenario: Activity lifecycle changed event received but ignored because the intent does not match. startActivityIntent=Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=pl.edu.amu.wmi.socialaggregator/.activity.AddSocialActivity }, activity.getIntent()=Intent { act=android.intent.action.MAIN flg=0x14000000 cmp=pl.edu.amu.wmi.socialaggregator/.activity.AddSocialActivity }, activity=pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@8d0c8e3
+
+-
+D/LifecycleMonitor: callback completes: androidx.test.core.app.ActivityScenario$1@2eb59fc
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@8d0c8e3 in: DESTROYED
running callback: androidx.test.core.app.ActivityScenario$1@2eb59fc
+
+-
+V/ActivityScenario: Activity lifecycle changed event received but ignored because the intent does not match. startActivityIntent=Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=pl.edu.amu.wmi.socialaggregator/.activity.AddSocialActivity }, activity.getIntent()=Intent { act=android.intent.action.MAIN flg=0x14000000 cmp=pl.edu.amu.wmi.socialaggregator/.activity.AddSocialActivity }, activity=pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@8d0c8e3
+
+-
+D/LifecycleMonitor: callback completes: androidx.test.core.app.ActivityScenario$1@2eb59fc
D/EventInjectionStrategy: Creating injection strategy with input manager.
+
+-
+I/art: Do partial code cache collection, code=42KB, data=56KB
After code cache collection, code=42KB, data=56KB
Increasing code cache capacity to 256KB
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/ViewInteraction: Performing 'actionOnItemAtPosition performing ViewAction: Action on child on item at position: 0' action on view with id: pl.edu.amu.wmi.socialaggregator:id/addSocialRecyclerView
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
All idling resources are idle.
+
+-
+V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@2572e47
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/Toast: Show toast from OpPackageName:pl.edu.amu.wmi.socialaggregator, PackageName:pl.edu.amu.wmi.socialaggregator
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/ViewInteraction: Performing 'actionOnItemAtPosition performing ViewAction: Action on child on item at position: 0' action on view with id: pl.edu.amu.wmi.socialaggregator:id/availableSocialsRecyclerView
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@8a5c6ab in: PAUSED
D/LifecycleMonitor: running callback: androidx.test.core.app.ActivityScenario$1@2eb59fc
+
+-
+V/ActivityScenario: Activity lifecycle changed event received but ignored because the intent does not match. startActivityIntent=Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=pl.edu.amu.wmi.socialaggregator/.activity.AddSocialActivity }, activity.getIntent()=Intent { act=android.intent.action.MAIN flg=0x10000000 cmp=pl.edu.amu.wmi.socialaggregator/.activity.AddSocialActivity }, activity=pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@8a5c6ab
+
+-
+D/LifecycleMonitor: callback completes: androidx.test.core.app.ActivityScenario$1@2eb59fc
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@c5c95c2
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@c5c95c2
+
+
+
+
+
+-
+
+
2.04 s
+pl.edu.amu.wmi.socialaggregator.ExampleInstrumentedTest
+
+-
+
+
2.04 s
+passeduseAppContext
+
+-
+E/THREAD_STATE: Thread[Instr: androidx.test.runner.AndroidJUnitRunner,5,main]
dalvik.system.VMStack.getThreadStackTrace(Native Method)
java.lang.Thread.getStackTrace(Thread.java:1565)
java.lang.Thread.getAllStackTraces(Thread.java:1615)
androidx.test.runner.MonitoringInstrumentation.getThreadState(MonitoringInstrumentation.java:680)
androidx.test.runner.MonitoringInstrumentation.dumpThreadStateToOutputs(MonitoringInstrumentation.java:675)
androidx.test.runner.MonitoringInstrumentation.waitForActivitiesToComplete(MonitoringInstrumentation.java:406)
androidx.test.runner.AndroidJUnitRunner$1.run(AndroidJUnitRunner.java:452)
androidx.test.internal.runner.listener.ActivityFinisherRunListener.testFinished(ActivityFinisherRunListener.java:55)
org.junit.runner.notification.SynchronizedRunListener.testFinished(SynchronizedRunListener.java:56)
org.junit.runner.notification.RunNotifier$7.notifyListener(RunNotifier.java:190)
org.junit.runner.notification.RunNotifier$SafeNotifier.run(RunNotifier.java:72)
org.junit.runner.notification.RunNotifier.fireTestFinished(RunNotifier.java:187)
org.junit.internal.runners.model.EachTestNotifier.fireTestFinished(EachTestNotifier.java:38)
org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:331)
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
org.junit.runners.ParentRunner.run(ParentRunner.java:363)
androidx.test.ext.junit.runners.AndroidJUnit4.run(AndroidJUnit4.java:104)
org.junit.runners.Suite.runChild(Suite.java:128)
org.junit.runners.Suite.runChild(Suite.java:27)
org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
org.junit.runners.ParentRunner.run(ParentRunner.java:363)
org.junit.runner.JUnitCore.run(JUnitCore.java:137)
org.junit.runner.JUnitCore.run(JUnitCore.java:115)
androidx.test.internal.runner.TestExecutor.execute(TestExecutor.java:56)
androidx.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:395)
android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1939)
Thread[FinalizerDaemon,5,system]
java.lang.Object.wait(Native Method)
java.lang.Object.wait(Object.java:407)
java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:188)
java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:209)
java.lang.Daemons$FinalizerDaemon.run(Daemons.java:206)
java.lang.Thread.run(Thread.java:760)
Thread[HeapTaskDaemon,5,system]
dalvik.system.VMRuntime.runHeapTasks(Native Method)
java.lang.Daemons$HeapTaskDaemon.run(Daemons.java:435)
java.lang.Thread.run(Thread.java:760)
Thread[Espresso Key Event #0,5,main]
java.lang.Object.wait(Native Method)
java.lang.Thread.parkFor$(Thread.java:2160)
sun.misc.Unsafe.park(Unsafe.java:325)
java.util.concurrent.locks.LockSupport.park(LockSupport.java:161)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2035)
java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:413)
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1058)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1118)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
java.lang.Thread.run(
+
+-
+W/MonitoringInstr: Still 1 activities active after waiting 2000 ms.
+
+-
+I/TestRunner: started: useAppContext(pl.edu.amu.wmi.socialaggregator.ExampleInstrumentedTest)
I/MonitoringInstr: Activities that are still in CREATED to STOPPED: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
+
+-
+E/THREAD_STATE: Thread[Instr: androidx.test.runner.AndroidJUnitRunner,5,main]
dalvik.system.VMStack.getThreadStackTrace(Native Method)
java.lang.Thread.getStackTrace(Thread.java:1565)
java.lang.Thread.getAllStackTraces(Thread.java:1615)
androidx.test.runner.MonitoringInstrumentation.getThreadState(MonitoringInstrumentation.java:680)
androidx.test.runner.MonitoringInstrumentation.dumpThreadStateToOutputs(MonitoringInstrumentation.java:675)
androidx.test.runner.MonitoringInstrumentation.waitForActivitiesToComplete(MonitoringInstrumentation.java:406)
androidx.test.runner.AndroidJUnitRunner$1.run(AndroidJUnitRunner.java:452)
androidx.test.internal.runner.listener.ActivityFinisherRunListener.testStarted(ActivityFinisherRunListener.java:48)
org.junit.runner.notification.SynchronizedRunListener.testStarted(SynchronizedRunListener.java:49)
org.junit.runner.notification.RunNotifier$3.notifyListener(RunNotifier.java:121)
org.junit.runner.notification.RunNotifier$SafeNotifier.run(RunNotifier.java:72)
org.junit.runner.notification.RunNotifier.fireTestStarted(RunNotifier.java:118)
org.junit.internal.runners.model.EachTestNotifier.fireTestStarted(EachTestNotifier.java:42)
org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:323)
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
org.junit.runners.ParentRunner.run(ParentRunner.java:363)
androidx.test.ext.junit.runners.AndroidJUnit4.run(AndroidJUnit4.java:104)
org.junit.runners.Suite.runChild(Suite.java:128)
org.junit.runners.Suite.runChild(Suite.java:27)
org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
org.junit.runners.ParentRunner.run(ParentRunner.java:363)
org.junit.runner.JUnitCore.run(JUnitCore.java:137)
org.junit.runner.JUnitCore.run(JUnitCore.java:115)
androidx.test.internal.runner.TestExecutor.execute(TestExecutor.java:56)
androidx.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:395)
android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1939)
Thread[FinalizerDaemon,5,system]
java.lang.Object.wait(Native Method)
java.lang.Object.wait(Object.java:407)
java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:188)
java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:209)
java.lang.Daemons$FinalizerDaemon.run(Daemons.java:206)
java.lang.Thread.run(Thread.java:760)
Thread[HeapTaskDaemon,5,system]
dalvik.system.VMRuntime.runHeapTasks(Native Method)
java.lang.Daemons$HeapTaskDaemon.run(Daemons.java:435)
java.lang.Thread.run(Thread.java:760)
Thread[Espresso Key Event #0,5,main]
java.lang.Object.wait(Native Method)
java.lang.Thread.parkFor$(Thread.java:2160)
sun.misc.Unsafe.park(Unsafe.java:325)
java.util.concurrent.locks.LockSupport.park(LockSupport.java:161)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2035)
java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:413)
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1058)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1118)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
java.lang.Thread.run(Thre
+
+-
+W/MonitoringInstr: Still 1 activities active after waiting 2000 ms.
+
+-
+I/TestRunner: finished: useAppContext(pl.edu.amu.wmi.socialaggregator.ExampleInstrumentedTest)
I/MonitoringInstr: Activities that are still in CREATED to STOPPED: 1
I/MonitoringInstr: Unstopped activity count: 1
+
+
+
+
+
+-
+
+
5.26 s
+pl.edu.amu.wmi.socialaggregator.MainActivityTest
+
+-
+
+
2.69 s
+passedclickCreatePost_shouldOpenAddNewNewPostActivity
+
+-
+I/TestRunner: started: clickCreatePost_shouldOpenAddNewNewPostActivity(pl.edu.amu.wmi.socialaggregator.MainActivityTest)
I/MonitoringInstr: Activities that are still in CREATED to STOPPED: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
+
+-
+E/THREAD_STATE: Thread[Instr: androidx.test.runner.AndroidJUnitRunner,5,main]
dalvik.system.VMStack.getThreadStackTrace(Native Method)
java.lang.Thread.getStackTrace(Thread.java:1565)
java.lang.Thread.getAllStackTraces(Thread.java:1615)
androidx.test.runner.MonitoringInstrumentation.getThreadState(MonitoringInstrumentation.java:680)
androidx.test.runner.MonitoringInstrumentation.dumpThreadStateToOutputs(MonitoringInstrumentation.java:675)
androidx.test.runner.MonitoringInstrumentation.waitForActivitiesToComplete(MonitoringInstrumentation.java:406)
androidx.test.runner.AndroidJUnitRunner$1.run(AndroidJUnitRunner.java:452)
androidx.test.internal.runner.listener.ActivityFinisherRunListener.testStarted(ActivityFinisherRunListener.java:48)
org.junit.runner.notification.SynchronizedRunListener.testStarted(SynchronizedRunListener.java:49)
org.junit.runner.notification.RunNotifier$3.notifyListener(RunNotifier.java:121)
org.junit.runner.notification.RunNotifier$SafeNotifier.run(RunNotifier.java:72)
org.junit.runner.notification.RunNotifier.fireTestStarted(RunNotifier.java:118)
org.junit.internal.runners.model.EachTestNotifier.fireTestStarted(EachTestNotifier.java:42)
org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:323)
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
org.junit.runners.ParentRunner.run(ParentRunner.java:363)
androidx.test.ext.junit.runners.AndroidJUnit4.run(AndroidJUnit4.java:104)
org.junit.runners.Suite.runChild(Suite.java:128)
org.junit.runners.Suite.runChild(Suite.java:27)
org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
org.junit.runners.ParentRunner.run(ParentRunner.java:363)
org.junit.runner.JUnitCore.run(JUnitCore.java:137)
org.junit.runner.JUnitCore.run(JUnitCore.java:115)
androidx.test.internal.runner.TestExecutor.execute(TestExecutor.java:56)
androidx.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:395)
android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1939)
Thread[FinalizerDaemon,5,system]
java.lang.Object.wait(Native Method)
java.lang.Object.wait(Object.java:407)
java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:188)
java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:209)
java.lang.Daemons$FinalizerDaemon.run(Daemons.java:206)
java.lang.Thread.run(Thread.java:760)
Thread[HeapTaskDaemon,5,system]
dalvik.system.VMRuntime.runHeapTasks(Native Method)
java.lang.Daemons$HeapTaskDaemon.run(Daemons.java:435)
java.lang.Thread.run(Thread.java:760)
Thread[Espresso Key Event #0,5,main]
java.lang.Object.wait(Native Method)
java.lang.Thread.parkFor$(Thread.java:2160)
sun.misc.Unsafe.park(Unsafe.java:325)
java.util.concurrent.locks.LockSupport.park(LockSupport.java:161)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2035)
java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:413)
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1058)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1118)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
java.lang.Thread.run(Thre
+
+-
+W/MonitoringInstr: Still 1 activities active after waiting 2000 ms.
W/ActivityTestRule: getActivityIntent() returned null using default: Intent(Intent.ACTION_MAIN)
+
+-
+I/Timeline: Timeline: Activity_launch_request time:753995377 intent:Intent { act=android.intent.action.MAIN flg=0x10000000 cmp=pl.edu.amu.wmi.socialaggregator/.activity.MainActivity }
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@1276941 in: PRE_ON_CREATE
+
+-
+V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@c00a46c
BoostFramework() : mPerf = com.qualcomm.qti.Performance@5e71a35
V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@e7e2e7a
BoostFramework() : mPerf = com.qualcomm.qti.Performance@a3f262b
V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@4b9dfc9
BoostFramework() : mPerf = com.qualcomm.qti.Performance@3c9b6ce
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@1276941 in: CREATED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@1276941 in: STARTED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@1276941 in: RESUMED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@8a5c6ab in: STOPPED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@8a5c6ab in: DESTROYED
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/ViewInteraction: Performing 'single click' action on view with id: pl.edu.amu.wmi.socialaggregator:id/createPostButton
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/Timeline: Timeline: Activity_launch_request time:753995639 intent:Intent { cmp=pl.edu.amu.wmi.socialaggregator/.activity.NewPostActivity }
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@1276941 in: PAUSED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@287402d
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@287402d
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@c27d34f in: PRE_ON_CREATE
D/LifecycleMonitor: running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@287402d
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@287402d
+
+-
+V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@54a2e3f
V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@e67130c
V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@1e09cc5
BoostFramework() : mPerf = com.qualcomm.qti.Performance@1c4f61a
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@c27d34f in: CREATED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@287402d
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@287402d
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@c27d34f in: STARTED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@287402d
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@287402d
+
+-
+I/art: Do full code cache collection, code=112KB, data=123KB
After code cache collection, code=110KB, data=98KB
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@c27d34f in: RESUMED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@287402d
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@287402d
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@1276941 in: STOPPED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@287402d
D/LifecycleMonitor: callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@287402d
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/ViewInteraction: Checking 'androidx.test.espresso.intent.Intents$2@f8f77d8' assertion on view is a root view.
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@1276941 in: DESTROYED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@287402d
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@287402d
+
+-
+I/TestRunner: finished: clickCreatePost_shouldOpenAddNewNewPostActivity(pl.edu.amu.wmi.socialaggregator.MainActivityTest)
I/MonitoringInstr: Activities that are still in CREATED to STOPPED: 1
Finishing activity: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@c27d34f
+
+
+
+-
+
+
2.57 s
+passedclickAddNewSocial_shouldOpenAddNewSocialActivity
+
+-
+I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
+
+-
+E/THREAD_STATE: Thread[Instr: androidx.test.runner.AndroidJUnitRunner,5,main]
dalvik.system.VMStack.getThreadStackTrace(Native Method)
java.lang.Thread.getStackTrace(Thread.java:1565)
java.lang.Thread.getAllStackTraces(Thread.java:1615)
androidx.test.runner.MonitoringInstrumentation.getThreadState(MonitoringInstrumentation.java:680)
androidx.test.runner.MonitoringInstrumentation.dumpThreadStateToOutputs(MonitoringInstrumentation.java:675)
androidx.test.runner.MonitoringInstrumentation.waitForActivitiesToComplete(MonitoringInstrumentation.java:406)
androidx.test.runner.AndroidJUnitRunner$1.run(AndroidJUnitRunner.java:452)
androidx.test.internal.runner.listener.ActivityFinisherRunListener.testStarted(ActivityFinisherRunListener.java:48)
org.junit.runner.notification.SynchronizedRunListener.testStarted(SynchronizedRunListener.java:49)
org.junit.runner.notification.RunNotifier$3.notifyListener(RunNotifier.java:121)
org.junit.runner.notification.RunNotifier$SafeNotifier.run(RunNotifier.java:72)
org.junit.runner.notification.RunNotifier.fireTestStarted(RunNotifier.java:118)
org.junit.internal.runners.model.EachTestNotifier.fireTestStarted(EachTestNotifier.java:42)
org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:323)
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
org.junit.runners.ParentRunner.run(ParentRunner.java:363)
androidx.test.ext.junit.runners.AndroidJUnit4.run(AndroidJUnit4.java:104)
org.junit.runners.Suite.runChild(Suite.java:128)
org.junit.runners.Suite.runChild(Suite.java:27)
org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
org.junit.runners.ParentRunner.run(ParentRunner.java:363)
org.junit.runner.JUnitCore.run(JUnitCore.java:137)
org.junit.runner.JUnitCore.run(JUnitCore.java:115)
androidx.test.internal.runner.TestExecutor.execute(TestExecutor.java:56)
androidx.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:395)
android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1939)
Thread[FinalizerDaemon,5,system]
java.lang.Object.wait(Native Method)
java.lang.Object.wait(Object.java:407)
java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:188)
java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:209)
java.lang.Daemons$FinalizerDaemon.run(Daemons.java:206)
java.lang.Thread.run(Thread.java:760)
Thread[HeapTaskDaemon,5,system]
dalvik.system.VMRuntime.runHeapTasks(Native Method)
java.lang.Daemons$HeapTaskDaemon.run(Daemons.java:435)
java.lang.Thread.run(Thread.java:760)
Thread[Espresso Key Event #0,5,main]
java.lang.Object.wait(Native Method)
java.lang.Thread.parkFor$(Thread.java:2160)
sun.misc.Unsafe.park(Unsafe.java:325)
java.util.concurrent.locks.LockSupport.park(LockSupport.java:161)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2035)
java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:413)
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1058)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1118)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
java.lang.Thread.run(Thre
+
+-
+W/MonitoringInstr: Still 1 activities active after waiting 2000 ms.
W/ActivityTestRule: getActivityIntent() returned null using default: Intent(Intent.ACTION_MAIN)
+
+-
+I/Timeline: Timeline: Activity_launch_request time:754000089 intent:Intent { act=android.intent.action.MAIN flg=0x10000000 cmp=pl.edu.amu.wmi.socialaggregator/.activity.MainActivity }
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@9d84e8f in: PRE_ON_CREATE
+
+-
+V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@2c22b52
BoostFramework() : mPerf = com.qualcomm.qti.Performance@94b9e23
V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@e2c1d4c
BoostFramework() : mPerf = com.qualcomm.qti.Performance@e7dd195
V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@c705613
BoostFramework() : mPerf = com.qualcomm.qti.Performance@bc0a050
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@9d84e8f in: CREATED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@9d84e8f in: STARTED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@9d84e8f in: RESUMED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@c27d34f in: STOPPED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@c27d34f in: DESTROYED
+
+-
+I/art: Do partial code cache collection, code=120KB, data=117KB
After code cache collection, code=118KB, data=115KB
Increasing code cache capacity to 512KB
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/ViewInteraction: Performing 'single click' action on view with id: pl.edu.amu.wmi.socialaggregator:id/connectedSocialsButton
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/Timeline: Timeline: Activity_launch_request time:754000269 intent:Intent { cmp=pl.edu.amu.wmi.socialaggregator/.activity.AddSocialActivity }
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@9d84e8f in: PAUSED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba6d01
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba6d01
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@75fd832 in: PRE_ON_CREATE
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba6d01
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba6d01
+
+-
+V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@5c4aad
BoostFramework() : mPerf = com.qualcomm.qti.Performance@4dab1e2
V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@a1cc973
BoostFramework() : mPerf = com.qualcomm.qti.Performance@5950030
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@75fd832 in: CREATED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba6d01
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba6d01
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@75fd832 in: STARTED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba6d01
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba6d01
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@75fd832 in: RESUMED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba6d01
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba6d01
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@9d84e8f in: STOPPED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba6d01
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba6d01
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/ViewInteraction: Checking 'androidx.test.espresso.intent.Intents$2@fc689fd' assertion on view is a root view.
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@9d84e8f in: DESTROYED
D/LifecycleMonitor: running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba6d01
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@eba6d01
+
+
+
+
+
+-
+
+
8.38 s
+pl.edu.amu.wmi.socialaggregator.NewPostActivityTest
+
+-
+
+
5.01 s
+passedclickPublishPost_shouldIncreasePostCount
+
+-
+I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
+
+-
+E/THREAD_STATE: Thread[Instr: androidx.test.runner.AndroidJUnitRunner,5,main]
dalvik.system.VMStack.getThreadStackTrace(Native Method)
java.lang.Thread.getStackTrace(Thread.java:1565)
java.lang.Thread.getAllStackTraces(Thread.java:1615)
androidx.test.runner.MonitoringInstrumentation.getThreadState(MonitoringInstrumentation.java:680)
androidx.test.runner.MonitoringInstrumentation.dumpThreadStateToOutputs(MonitoringInstrumentation.java:675)
androidx.test.runner.MonitoringInstrumentation.waitForActivitiesToComplete(MonitoringInstrumentation.java:406)
androidx.test.runner.AndroidJUnitRunner$1.run(AndroidJUnitRunner.java:452)
androidx.test.internal.runner.listener.ActivityFinisherRunListener.testStarted(ActivityFinisherRunListener.java:48)
org.junit.runner.notification.SynchronizedRunListener.testStarted(SynchronizedRunListener.java:49)
org.junit.runner.notification.RunNotifier$3.notifyListener(RunNotifier.java:121)
org.junit.runner.notification.RunNotifier$SafeNotifier.run(RunNotifier.java:72)
org.junit.runner.notification.RunNotifier.fireTestStarted(RunNotifier.java:118)
org.junit.internal.runners.model.EachTestNotifier.fireTestStarted(EachTestNotifier.java:42)
org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:323)
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
org.junit.runners.ParentRunner.run(ParentRunner.java:363)
androidx.test.ext.junit.runners.AndroidJUnit4.run(AndroidJUnit4.java:104)
org.junit.runners.Suite.runChild(Suite.java:128)
org.junit.runners.Suite.runChild(Suite.java:27)
org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
org.junit.runners.ParentRunner.run(ParentRunner.java:363)
org.junit.runner.JUnitCore.run(JUnitCore.java:137)
org.junit.runner.JUnitCore.run(JUnitCore.java:115)
androidx.test.internal.runner.TestExecutor.execute(TestExecutor.java:56)
androidx.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:395)
android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1939)
Thread[FinalizerDaemon,5,system]
java.lang.Object.wait(Native Method)
java.lang.Object.wait(Object.java:407)
java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:188)
java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:209)
java.lang.Daemons$FinalizerDaemon.run(Daemons.java:206)
java.lang.Thread.run(Thread.java:760)
Thread[HeapTaskDaemon,5,system]
dalvik.system.VMRuntime.runHeapTasks(Native Method)
java.lang.Daemons$HeapTaskDaemon.run(Daemons.java:435)
java.lang.Thread.run(Thread.java:760)
Thread[Espresso Key Event #0,5,main]
java.lang.Object.wait(Native Method)
java.lang.Thread.parkFor$(Thread.java:2160)
sun.misc.Unsafe.park(Unsafe.java:325)
java.util.concurrent.locks.LockSupport.park(LockSupport.java:161)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2035)
java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:413)
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1058)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1118)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
java.lang.Thread.run(Thre
+
+-
+W/MonitoringInstr: Still 1 activities active after waiting 2000 ms.
W/ActivityTestRule: getActivityIntent() returned null using default: Intent(Intent.ACTION_MAIN)
+
+-
+I/Timeline: Timeline: Activity_launch_request time:754004696 intent:Intent { act=android.intent.action.MAIN flg=0x10000000 cmp=pl.edu.amu.wmi.socialaggregator/.activity.MainActivity }
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@297824a in: PRE_ON_CREATE
+
+-
+V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@f9ee269
BoostFramework() : mPerf = com.qualcomm.qti.Performance@5d894ee
V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@fd703ab
V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@2ecda08
V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@a8a159e
BoostFramework() : mPerf = com.qualcomm.qti.Performance@595887f
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@297824a in: CREATED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@297824a in: STARTED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@297824a in: RESUMED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@75fd832 in: STOPPED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@75fd832 in: DESTROYED
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/ViewInteraction: Performing 'single click' action on view with id: pl.edu.amu.wmi.socialaggregator:id/connectedSocialsButton
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/Timeline: Timeline: Activity_launch_request time:754004906 intent:Intent { cmp=pl.edu.amu.wmi.socialaggregator/.activity.AddSocialActivity }
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@297824a in: PAUSED
D/LifecycleMonitor: running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@906c4c9 in: PRE_ON_CREATE
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
+
+-
+V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@3910a00
V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@1cd7239
V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@e5d307e
BoostFramework() : mPerf = com.qualcomm.qti.Performance@1e839df
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@906c4c9 in: CREATED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@906c4c9 in: STARTED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@906c4c9 in: RESUMED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@297824a in: STOPPED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/ViewInteraction: Performing 'actionOnItemAtPosition performing ViewAction: Action on child on item at position: 0' action on view with id: pl.edu.amu.wmi.socialaggregator:id/addSocialRecyclerView
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/Toast: Show toast from OpPackageName:pl.edu.amu.wmi.socialaggregator, PackageName:pl.edu.amu.wmi.socialaggregator
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/ViewInteraction: Performing 'send keyCode: 4, metaState: 0 key event' action on view is a root view.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@906c4c9 in: PAUSED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@297824a in: RESTARTED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@297824a in: STARTED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@297824a in: RESUMED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@906c4c9 in: STOPPED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.AddSocialActivity@906c4c9 in: DESTROYED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/ViewInteraction: Performing 'single click' action on view with id: pl.edu.amu.wmi.socialaggregator:id/createPostButton
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/Timeline: Timeline: Activity_launch_request time:754005917 intent:Intent { cmp=pl.edu.amu.wmi.socialaggregator/.activity.NewPostActivity }
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@297824a in: PAUSED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@3890302 in: PRE_ON_CREATE
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
+
+-
+V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@94c30b2
BoostFramework() : mPerf = com.qualcomm.qti.Performance@7f32803
V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@750fd57
BoostFramework() : mPerf = com.qualcomm.qti.Performance@2f69044
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@3890302 in: CREATED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@3890302 in: STARTED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@3890302 in: RESUMED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@297824a in: STOPPED
D/LifecycleMonitor: running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/ViewInteraction: Performing 'close keyboard' action on view is a root view.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/ViewInteraction: Performing 'actionOnItemAtPosition performing ViewAction: Action on child on item at position: 0' action on view with id: pl.edu.amu.wmi.socialaggregator:id/availableSocials
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/ViewInteraction: Performing 'single click' action on view with id: pl.edu.amu.wmi.socialaggregator:id/publishPost
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@3890302 in: PAUSED
D/LifecycleMonitor: running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@297824a in: RESTARTED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@297824a in: STARTED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@297824a in: RESUMED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
D/LifecycleMonitor: callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
+
+-
+I/Toast: Show toast from OpPackageName:pl.edu.amu.wmi.socialaggregator, PackageName:pl.edu.amu.wmi.socialaggregator
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@3890302 in: STOPPED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@3890302 in: DESTROYED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/ViewInteraction: Checking 'MatchesViewAssertion{viewMatcher=has item at position 0: has descendant: with text: is "Facebook"}' assertion on view with id: pl.edu.amu.wmi.socialaggregator:id/previousPostsRecyclerView
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@297824a in: PAUSED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@ff52e64
+
+
+
+-
+
+
3.37 s
+passedclickPublishPost_shouldEndActivity
+
+-
+I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
I/MonitoringInstr: Unstopped activity count: 1
+
+-
+E/THREAD_STATE: Thread[AsyncTask #3,5,main]
java.lang.Object.wait(Native Method)
java.lang.Thread.parkFor$(Thread.java:2160)
sun.misc.Unsafe.park(Unsafe.java:325)
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:201)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2077)
java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:438)
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1057)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1118)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
java.lang.Thread.run(Thread.java:760)
Thread[FinalizerDaemon,5,system]
java.lang.Object.wait(Native Method)
java.lang.Object.wait(Object.java:407)
java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:188)
java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:209)
java.lang.Daemons$FinalizerDaemon.run(Daemons.java:206)
java.lang.Thread.run(Thread.java:760)
Thread[Instr: androidx.test.runner.AndroidJUnitRunner,5,main]
dalvik.system.VMStack.getThreadStackTrace(Native Method)
java.lang.Thread.getStackTrace(Thread.java:1565)
java.lang.Thread.getAllStackTraces(Thread.java:1615)
androidx.test.runner.MonitoringInstrumentation.getThreadState(MonitoringInstrumentation.java:680)
androidx.test.runner.MonitoringInstrumentation.dumpThreadStateToOutputs(MonitoringInstrumentation.java:675)
androidx.test.runner.MonitoringInstrumentation.waitForActivitiesToComplete(MonitoringInstrumentation.java:406)
androidx.test.runner.AndroidJUnitRunner$1.run(AndroidJUnitRunner.java:452)
androidx.test.internal.runner.listener.ActivityFinisherRunListener.testStarted(ActivityFinisherRunListener.java:48)
org.junit.runner.notification.SynchronizedRunListener.testStarted(SynchronizedRunListener.java:49)
org.junit.runner.notification.RunNotifier$3.notifyListener(RunNotifier.java:121)
org.junit.runner.notification.RunNotifier$SafeNotifier.run(RunNotifier.java:72)
org.junit.runner.notification.RunNotifier.fireTestStarted(RunNotifier.java:118)
org.junit.internal.runners.model.EachTestNotifier.fireTestStarted(EachTestNotifier.java:42)
org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:323)
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
org.junit.runners.ParentRunner.run(ParentRunner.java:363)
androidx.test.ext.junit.runners.AndroidJUnit4.run(AndroidJUnit4.java:104)
org.junit.runners.Suite.runChild(Suite.java:128)
org.junit.runners.Suite.runChild(Suite.java:27)
org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
org.junit.runners.ParentRunner.run(ParentRunner.java:363)
org.junit.runner.JUnitCore.run(JUnitCore.java:137)
org.junit.runner.JUnitCore.run(JUnitCore.java:115)
androidx.test.internal.runner.TestExecutor.execute(TestExecutor.java:56)
androidx.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:395)
android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1939)
Thread[HeapTaskDaemon,5,system]
dalvik.system.VMRuntime.runHeapTasks(Native Method)
java.lang.Daemons$HeapTaskDaemon.run(Daemons.java:435)
java.lang.Thread.run(Thr
+
+-
+W/MonitoringInstr: Still 1 activities active after waiting 2000 ms.
W/ActivityTestRule: getActivityIntent() returned null using default: Intent(Intent.ACTION_MAIN)
+
+-
+I/Timeline: Timeline: Activity_launch_request time:754011746 intent:Intent { act=android.intent.action.MAIN flg=0x10000000 cmp=pl.edu.amu.wmi.socialaggregator/.activity.MainActivity }
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@e0b5fad in: PRE_ON_CREATE
+
+-
+V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@ee49e48
BoostFramework() : mPerf = com.qualcomm.qti.Performance@34184e1
V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@3319bde
BoostFramework() : mPerf = com.qualcomm.qti.Performance@55131bf
V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@b76388d
BoostFramework() : mPerf = com.qualcomm.qti.Performance@9f3a42
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@e0b5fad in: CREATED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@e0b5fad in: STARTED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@e0b5fad in: RESUMED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@297824a in: STOPPED
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@297824a in: DESTROYED
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/ViewInteraction: Performing 'single click' action on view with id: pl.edu.amu.wmi.socialaggregator:id/createPostButton
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/Timeline: Timeline: Activity_launch_request time:754011977 intent:Intent { cmp=pl.edu.amu.wmi.socialaggregator/.activity.NewPostActivity }
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@e0b5fad in: PAUSED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@3261acc in: PRE_ON_CREATE
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
D/LifecycleMonitor: callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
+
+-
+V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@efda3ef
BoostFramework() : mPerf = com.qualcomm.qti.Performance@3cbcefc
V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@32a900b
BoostFramework() : mPerf = com.qualcomm.qti.Performance@484dee8
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@3261acc in: CREATED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@3261acc in: STARTED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@3261acc in: RESUMED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@e0b5fad in: STOPPED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/ViewInteraction: Performing 'close keyboard' action on view is a root view.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
I/ViewInteraction: Performing 'single click' action on view with id: pl.edu.amu.wmi.socialaggregator:id/publishPost
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@3261acc in: PAUSED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@e0b5fad in: RESTARTED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@e0b5fad in: STARTED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@e0b5fad in: RESUMED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
+
+-
+I/art: Do full code cache collection, code=252KB, data=238KB
I/art: After code cache collection, code=250KB, data=214KB
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@3261acc in: STOPPED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.NewPostActivity@3261acc in: DESTROYED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
+
+-
+I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
I/IdlingResourceRegistry: All idling resources are idle.
All idling resources are idle.
+
+-
+D/LifecycleMonitor: Lifecycle status change: pl.edu.amu.wmi.socialaggregator.activity.MainActivity@e0b5fad in: PAUSED
running callback: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
D/LifecycleMonitor: callback completes: androidx.test.rule.ActivityTestRule$LifecycleCallback@4e7e9a3
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index eb976f4..558768f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -76,4 +76,9 @@ dependencies {
implementation 'com.facebook.android:facebook-share:[5,6)'
implementation 'com.squareup.picasso:picasso:2.5.2'
+
+ implementation([
+ 'com.snapchat.kit.sdk:creative:1.1.4',
+ 'com.snapchat.kit.sdk:core:1.1.4'
+ ])
}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 53b7386..07a5330 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -2,6 +2,7 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/java/pl/edu/amu/wmi/socialaggregator/activity/MainActivity.kt b/app/src/main/java/pl/edu/amu/wmi/socialaggregator/activity/MainActivity.kt
index 29e4680..838e856 100644
--- a/app/src/main/java/pl/edu/amu/wmi/socialaggregator/activity/MainActivity.kt
+++ b/app/src/main/java/pl/edu/amu/wmi/socialaggregator/activity/MainActivity.kt
@@ -2,24 +2,16 @@ package pl.edu.amu.wmi.socialaggregator.activity
import android.content.Intent
import android.os.Bundle
-import android.util.Log
import androidx.appcompat.app.AppCompatActivity
import androidx.recyclerview.widget.LinearLayoutManager
-import com.facebook.CallbackManager
-import com.facebook.FacebookCallback
-import com.facebook.FacebookException
-import com.facebook.login.LoginResult
import com.jakewharton.rxbinding2.view.RxView
+import io.reactivex.Observable
import io.reactivex.disposables.CompositeDisposable
import kotlinx.android.synthetic.main.activity_main.*
import pl.edu.amu.wmi.socialaggregator.R
import pl.edu.amu.wmi.socialaggregator.utils.SocialPlatformsManager
import pl.edu.amu.wmi.socialaggregator.viewholders.PostSummaryRecycler
import pl.edu.amu.wmi.socialaggregator.viewholders.SocialWithButtonRecycler
-import com.facebook.AccessToken
-import com.facebook.login.LoginManager
-import com.facebook.share.widget.ShareDialog
-import io.reactivex.Observable
class MainActivity : AppCompatActivity() {
@@ -38,30 +30,6 @@ class MainActivity : AppCompatActivity() {
val intent = Intent(this, NewPostActivity::class.java)
startActivity(intent)
},
-// RxView.clicks(connectedSocialsButton)
-// .subscribe {
-// val accessToken = AccessToken.getCurrentAccessToken()
-// val isLoggedIn = accessToken != null && !accessToken.isExpired
-//
-// Log.i(TAG, isLoggedIn.toString())
-//
-// LoginManager.getInstance().logInWithReadPermissions(this, listOf("public_profile"))
-//
-//// val request = GraphRequest.newMeRequest(
-//// accessToken
-//// ) { `object`, response ->
-//// Log.v("LoginActivity", response.toString())
-////
-//// // Application code
-//// }
-//// val parameters = Bundle()
-//// parameters.putString("fields", "id,name,email,gender,birthday")
-//// request.parameters = parameters
-//// request.executeAsync()
-// ShareDialog(this).show()
-//// val intent = Intent(this, AddSocialActivity::class.java)
-//// startActivity(intent)
-// },
RxView.clicks(previousPostsButton)
.subscribe {
val intent = Intent(this, PostHistoryActivity::class.java)
@@ -72,7 +40,7 @@ class MainActivity : AppCompatActivity() {
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
SocialPlatformsManager.getAll()
- .forEach { it.onActivityResult(requestCode, resultCode, data)}
+ .forEach { it.onActivityResult(requestCode, resultCode, data) }
super.onActivityResult(requestCode, resultCode, data)
}
@@ -88,12 +56,13 @@ class MainActivity : AppCompatActivity() {
previousPostsRecyclerView.apply {
layoutManager = LinearLayoutManager(this@MainActivity)
adapter = PostSummaryRecycler(
- Observable.fromIterable(SocialPlatformsManager.getLoggedIn(this@MainActivity))
- .flatMap { social ->
- return@flatMap social.getPosts(this@MainActivity)
- .map { social to it }
- .toObservable()
- })
+ Observable.merge(SocialPlatformsManager.getLoggedIn(this@MainActivity)
+ .map { social ->
+ social.getPosts(this@MainActivity)
+ .map { social to it }
+ .toObservable()
+ })
+ )
}
}
diff --git a/app/src/main/java/pl/edu/amu/wmi/socialaggregator/activity/NewPostActivity.kt b/app/src/main/java/pl/edu/amu/wmi/socialaggregator/activity/NewPostActivity.kt
index a32fd3c..c5c85ca 100644
--- a/app/src/main/java/pl/edu/amu/wmi/socialaggregator/activity/NewPostActivity.kt
+++ b/app/src/main/java/pl/edu/amu/wmi/socialaggregator/activity/NewPostActivity.kt
@@ -2,12 +2,13 @@ package pl.edu.amu.wmi.socialaggregator.activity
import android.Manifest
import android.annotation.SuppressLint
+import android.content.Context
import android.content.Intent
import android.content.pm.PackageManager
import android.graphics.BitmapFactory
+import android.net.Uri
import android.os.Bundle
import android.provider.MediaStore
-import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import androidx.core.app.ActivityCompat
import androidx.core.content.ContextCompat
@@ -15,16 +16,25 @@ import androidx.recyclerview.widget.LinearLayoutManager
import com.google.android.material.snackbar.Snackbar
import com.jakewharton.rxbinding2.view.RxView
import io.reactivex.Observable
+import io.reactivex.functions.BiFunction
+import io.reactivex.schedulers.Schedulers
+import io.reactivex.subjects.PublishSubject
import kotlinx.android.synthetic.main.activity_new_post.*
import kotlinx.android.synthetic.main.content_new_post.*
import pl.edu.amu.wmi.socialaggregator.R
+import pl.edu.amu.wmi.socialaggregator.socialplatforms.SocialPlatform
import pl.edu.amu.wmi.socialaggregator.utils.SocialPlatformsManager
import pl.edu.amu.wmi.socialaggregator.viewholders.SocialWithToggleRecycler
+
class NewPostActivity : AppCompatActivity() {
var file: String? = null
+ val postedSubject = PublishSubject.create()
+
+ val resumedSubject = PublishSubject.create()
+
@SuppressLint("CheckResult")
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
@@ -47,16 +57,48 @@ class NewPostActivity : AppCompatActivity() {
RxView.clicks(publishPost)
.filter { file != null }
- .subscribe {
- availablesRecycler.chips.entries
- .filter { (_, chip) -> chip.isChecked }
- .forEach { (social, _) ->
+ .doOnNext {
+ val sdk = android.os.Build.VERSION.SDK_INT
+ if (sdk < android.os.Build.VERSION_CODES.HONEYCOMB) {
+ val clipboard =
+ getSystemService(Context.CLIPBOARD_SERVICE) as android.text.ClipboardManager
+ clipboard.text = postText.text?.toString() ?: ""
+ } else {
+ val clipboard =
+ getSystemService(Context.CLIPBOARD_SERVICE) as android.content.ClipboardManager
+ val clip = android.content.ClipData.newPlainText(
+ "text label",
+ postText.text?.toString() ?: ""
+ )
+ clipboard.primaryClip = clip
+ }
+ }
+ .observeOn(Schedulers.io())
+ .doOnNext {
+ resumedSubject.zipWith(
+ Observable.fromIterable(availablesRecycler.chips.entries
+ .filter { (_, chip) -> chip.isChecked }
+ .map { it.key }),
+ BiFunction { _, t2 -> t2 }
+ )
+ .doOnNext {
val bitmap = BitmapFactory.decodeFile(file!!)
- social.addPost(this, postText.text?.toString() ?: "test", listOf(bitmap))
- .blockingSubscribe()
- Toast.makeText(this, "Posted to ${social.getName()}!", Toast.LENGTH_SHORT)
- .show()
+ it.addPost(
+ postedSubject, this,
+ postText.text?.toString() ?: "",
+ listOf(bitmap),
+ listOf(file!!)
+ )
}
+ .take(availablesRecycler.chips.count { it.value.isChecked }.toLong())
+ .toList()
+ .subscribe { _ ->
+ finish()
+ }
+
+ }
+ .subscribe {
+ resumedSubject.onNext(Any())
}
RxView.clicks(imageView2)
@@ -86,18 +128,33 @@ class NewPostActivity : AppCompatActivity() {
}
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
+ SocialPlatformsManager.getAll()
+ .forEach { it.onActivityResult(requestCode, resultCode, data) }
super.onActivityResult(requestCode, resultCode, data)
if (requestCode == PICK_IMAGE_REQUEST_CODE) {
data?.data?.let { uri ->
- uri.pathSegments?.last()?.let {
- file = it
- }
+ file = getPath(uri)
imageView2.setImageURI(uri)
+
}
}
}
+ fun getPath(uri: Uri): String? {
+ val projection = arrayOf(MediaStore.Images.Media.DATA)
+ val cursor = contentResolver.query(uri, projection, null, null, null) ?: return null
+ val column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA)
+ cursor.moveToFirst()
+ val s = cursor.getString(column_index)
+ cursor.close()
+ return s
+ }
+
+ override fun onResume() {
+ super.onResume()
+ resumedSubject.onNext(Any())
+ }
private fun canAccessGallery() =
(ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE)
diff --git a/app/src/main/java/pl/edu/amu/wmi/socialaggregator/socialplatforms/Facebook.kt b/app/src/main/java/pl/edu/amu/wmi/socialaggregator/socialplatforms/Facebook.kt
index 3683861..d1f4b64 100644
--- a/app/src/main/java/pl/edu/amu/wmi/socialaggregator/socialplatforms/Facebook.kt
+++ b/app/src/main/java/pl/edu/amu/wmi/socialaggregator/socialplatforms/Facebook.kt
@@ -4,7 +4,6 @@ import android.app.Activity
import android.content.Context
import android.content.Intent
import android.graphics.Bitmap
-import android.icu.text.SimpleDateFormat
import android.os.Bundle
import android.util.Log
import android.view.View
@@ -12,11 +11,9 @@ import android.view.ViewGroup
import androidx.constraintlayout.widget.ConstraintLayout
import androidx.constraintlayout.widget.ConstraintSet
import com.facebook.*
+import com.facebook.login.LoginManager
import com.facebook.login.LoginResult
import com.facebook.login.widget.LoginButton
-import pl.edu.amu.wmi.socialaggregator.utils.Utils
-import pl.edu.amu.wmi.socialaggregator.viewholders.SocialWithButtonRecycler
-import com.facebook.login.LoginManager
import com.facebook.share.Sharer
import com.facebook.share.model.ShareMediaContent
import com.facebook.share.model.SharePhoto
@@ -28,7 +25,8 @@ import io.reactivex.subjects.PublishSubject
import org.json.JSONArray
import org.json.JSONObject
import pl.edu.amu.wmi.socialaggregator.R
-import java.lang.Exception
+import pl.edu.amu.wmi.socialaggregator.utils.Utils
+import pl.edu.amu.wmi.socialaggregator.viewholders.SocialWithButtonRecycler
class Facebook : SocialPlatform {
@@ -52,15 +50,21 @@ class Facebook : SocialPlatform {
return accessToken != null && !accessToken.isExpired
}
- override fun addPost(context: Context, text: String, images: List) : PublishSubject {
+ override fun addPost(
+ publishSubject: PublishSubject,
+ context: Context,
+ text: String,
+ images: List,
+ imagePaths: List
+ ) {
val content = ShareMediaContent.Builder().apply {
- images.forEach {addMedium(
- SharePhoto.Builder().setBitmap(it).build()
- )}
+ images.forEach {
+ addMedium(
+ SharePhoto.Builder().setBitmap(it).build()
+ )
+ }
}.build()
- val publishSubject = PublishSubject.create()
-
val shareDialog = ShareDialog(context as Activity)
shareDialog.registerCallback(callbackManager, object : FacebookCallback {
override fun onSuccess(result: Sharer.Result?) {
@@ -68,7 +72,7 @@ class Facebook : SocialPlatform {
}
override fun onCancel() {
- publishSubject.onError(Exception("Cancelled"))
+ publishSubject.onNext(Any())
}
override fun onError(error: FacebookException?) {
@@ -76,23 +80,26 @@ class Facebook : SocialPlatform {
}
})
shareDialog.show(content, ShareDialog.Mode.AUTOMATIC)
-
- return publishSubject
}
override fun getPosts(context: Context): Single> {
return Single.just(AccessToken.getCurrentAccessToken())
+ .observeOn(Schedulers.io())
.map { token ->
if (token.isExpired) {
return@map emptyList()
} else {
val request = GraphRequest.newGraphPathRequest(
AccessToken.getCurrentAccessToken(),
- "/me/posts") {
+ "/me/posts"
+ ) {
Log.i(getName(), it.toString())
}
val parameters = Bundle()
- parameters.putString("fields", "likes.summary(true),created_time,message,attachments{url,unshimmed_url,media,subattachments}")
+ parameters.putString(
+ "fields",
+ "likes.summary(true),created_time,message,attachments{url,unshimmed_url,media,subattachments}"
+ )
request.parameters = parameters
val res = request.executeAndWait()
@@ -100,14 +107,14 @@ class Facebook : SocialPlatform {
val size = data.length()
return@map (0 until size).map {
val obj = data[it] as JSONObject
- val msg = if(obj.has("message")) obj.getString("message") else ""
- val date = if(obj.has("created_time")) obj.getString("created_time") else ""
+ val msg = if (obj.has("message")) obj.getString("message") else ""
+ val date =
+ if (obj.has("created_time")) obj.getString("created_time") else ""
// SimpleDateFormat("YYYY-MM-DD\'T\'hh:mm:ssZ").parse(date)
Post(this, msg, date, getImages(obj))
}
}
}
- .subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
}
@@ -122,12 +129,15 @@ class Facebook : SocialPlatform {
.flatMap {
val urls = mutableListOf()
if (it.has("media")) {
- urls.add(it.getJSONObject("media")
- .getJSONObject("image")
- .getString("src"))
+ urls.add(
+ it.getJSONObject("media")
+ .getJSONObject("image")
+ .getString("src")
+ )
}
if (it.has("subattachments")) {
- val subattachments = it.getJSONObject("subattachments").getJSONArray("data")
+ val subattachments =
+ it.getJSONObject("subattachments").getJSONArray("data")
urls.addAll((0 until subattachments.length())
.map { subattachments[it] as JSONObject }
.map {
@@ -158,21 +168,35 @@ class Facebook : SocialPlatform {
parent.addView(button)
constraintSet.clone(parent as ConstraintLayout)
- constraintSet.connect(button.id, ConstraintSet.TOP,
- parent.id, ConstraintSet.TOP, 8.toPx(context))
- constraintSet.connect(button.id, ConstraintSet.END,
- parent.id, ConstraintSet.END)
- constraintSet.connect(button.id, ConstraintSet.BOTTOM,
- parent.id, ConstraintSet.BOTTOM, 8.toPx(context))
+ constraintSet.connect(
+ button.id, ConstraintSet.TOP,
+ parent.id, ConstraintSet.TOP, 8.toPx(context)
+ )
+ constraintSet.connect(
+ button.id, ConstraintSet.END,
+ parent.id, ConstraintSet.END
+ )
+ constraintSet.connect(
+ button.id, ConstraintSet.BOTTOM,
+ parent.id, ConstraintSet.BOTTOM, 8.toPx(context)
+ )
- constraintSet.connect(viewHolder.textView.id, ConstraintSet.BOTTOM,
- button.id, ConstraintSet.BOTTOM)
- constraintSet.connect(viewHolder.textView.id, ConstraintSet.END,
- button.id, ConstraintSet.START, 8.toPx(context))
- constraintSet.connect(viewHolder.textView.id, ConstraintSet.START,
- parent.id, ConstraintSet.START)
- constraintSet.connect(viewHolder.textView.id, ConstraintSet.TOP,
- button.id, ConstraintSet.TOP)
+ constraintSet.connect(
+ viewHolder.textView.id, ConstraintSet.BOTTOM,
+ button.id, ConstraintSet.BOTTOM
+ )
+ constraintSet.connect(
+ viewHolder.textView.id, ConstraintSet.END,
+ button.id, ConstraintSet.START, 8.toPx(context)
+ )
+ constraintSet.connect(
+ viewHolder.textView.id, ConstraintSet.START,
+ parent.id, ConstraintSet.START
+ )
+ constraintSet.connect(
+ viewHolder.textView.id, ConstraintSet.TOP,
+ button.id, ConstraintSet.TOP
+ )
constraintSet.setHorizontalBias(viewHolder.textView.id, 0.toFloat())
constraintSet.applyTo(parent)
@@ -180,8 +204,10 @@ class Facebook : SocialPlatform {
val callback = object : FacebookCallback {
override fun onSuccess(result: LoginResult?) {
Log.i(getName(), "SUCCESS!")
- LoginManager.getInstance().logInWithReadPermissions(context as Activity,
- listOf("email"))
+ LoginManager.getInstance().logInWithReadPermissions(
+ context as Activity,
+ listOf("email")
+ )
}
override fun onCancel() {
diff --git a/app/src/main/java/pl/edu/amu/wmi/socialaggregator/socialplatforms/FacebookMock.kt b/app/src/main/java/pl/edu/amu/wmi/socialaggregator/socialplatforms/FacebookMock.kt
deleted file mode 100644
index 6988a1c..0000000
--- a/app/src/main/java/pl/edu/amu/wmi/socialaggregator/socialplatforms/FacebookMock.kt
+++ /dev/null
@@ -1,84 +0,0 @@
-package pl.edu.amu.wmi.socialaggregator.socialplatforms
-
-import android.content.Context
-import android.graphics.Bitmap
-import android.util.Log
-import io.reactivex.Single
-import io.reactivex.subjects.PublishSubject
-import pl.edu.amu.wmi.socialaggregator.R
-import pl.edu.amu.wmi.socialaggregator.utils.InternalStorage
-import java.io.ByteArrayOutputStream
-import java.io.File
-import java.text.DateFormat
-import java.util.*
-
-abstract class FacebookMock : SocialPlatform {
-
- companion object {
- val TAG = FacebookMock::class.java.canonicalName
- }
-
- override fun getName(): String = "Facebook Mock"
-
- override fun getLogo(): Int = R.mipmap.ic_logo_facebook
-
- override fun login(context: Context) {
- val loginsDir = InternalStorage.getFileOrDir(context, "logins")
- loginsDir?.mkdir()
- if (loginsDir != null) {
- val loginFile = File(loginsDir, "facebook")
- loginFile.createNewFile()
- } else {
- Log.e(TAG, "Could not create logins directory")
- }
- }
-
- override fun logout(context: Context) {
- InternalStorage.getFileOrDir(context, "logins/facebook")?.delete()
- }
-
- override fun isLoggedIn(context: Context): Boolean {
- return InternalStorage.getFileOrDir(context, "logins/facebook")?.exists() ?: false
- }
-
- override fun addPost(context: Context, text: String, images: List): PublishSubject {
- val postsDir = InternalStorage.getFileOrDir(context, "posts/facebook")
- if (postsDir != null) {
- val postDir = File(postsDir, System.currentTimeMillis().toString())
- postDir.mkdirs()
-
- val textFile = File(postDir, "content")
- textFile.createNewFile()
- textFile.writeText(text)
-
- images.forEachIndexed { index, image ->
- val imageFile = File(postDir, "image$index")
- imageFile.createNewFile()
-
- ByteArrayOutputStream().use { stream ->
- image.compress(Bitmap.CompressFormat.JPEG, 100, stream)
- imageFile.writeBytes(stream.toByteArray())
- }
- }
-
- } else {
- Log.e(TAG, "Could not create posts directory")
- }
- return PublishSubject.create()
- }
-
- override fun getPosts(context: Context): Single> {
- val postsDir = InternalStorage.getFileOrDir(context, "posts/facebook")
- return Single.just(postsDir?.listFiles()?.flatMap {
- it.listFiles().map {
- val dt = Date(it.lastModified())
- Post(
- this,
- it.readText(),
- DateFormat.getDateTimeInstance().format(dt),
- emptyList()
- )
- }
- }?.toList() ?: emptyList())
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/pl/edu/amu/wmi/socialaggregator/socialplatforms/NotApplicableException.kt b/app/src/main/java/pl/edu/amu/wmi/socialaggregator/socialplatforms/NotApplicableException.kt
new file mode 100644
index 0000000..c4a0eb7
--- /dev/null
+++ b/app/src/main/java/pl/edu/amu/wmi/socialaggregator/socialplatforms/NotApplicableException.kt
@@ -0,0 +1,5 @@
+package pl.edu.amu.wmi.socialaggregator.socialplatforms
+
+import java.lang.Exception
+
+class NotApplicableException(val socialPlatform: SocialPlatform) : Exception()
\ No newline at end of file
diff --git a/app/src/main/java/pl/edu/amu/wmi/socialaggregator/socialplatforms/Snapchat.kt b/app/src/main/java/pl/edu/amu/wmi/socialaggregator/socialplatforms/Snapchat.kt
new file mode 100644
index 0000000..8d22a9c
--- /dev/null
+++ b/app/src/main/java/pl/edu/amu/wmi/socialaggregator/socialplatforms/Snapchat.kt
@@ -0,0 +1,79 @@
+package pl.edu.amu.wmi.socialaggregator.socialplatforms
+
+import android.content.Context
+import android.content.Intent
+import android.graphics.Bitmap
+import android.util.Log
+import com.snapchat.kit.sdk.SnapCreative
+import com.snapchat.kit.sdk.creative.api.SnapCreativeKitCompletionCallback
+import com.snapchat.kit.sdk.creative.api.SnapCreativeKitSendError
+import com.snapchat.kit.sdk.creative.exceptions.SnapMediaSizeException
+import com.snapchat.kit.sdk.creative.models.SnapPhotoContent
+import io.reactivex.Single
+import io.reactivex.subjects.PublishSubject
+import pl.edu.amu.wmi.socialaggregator.R
+import pl.edu.amu.wmi.socialaggregator.viewholders.SocialWithButtonRecycler
+import java.io.File
+import java.lang.Exception
+
+class Snapchat : SocialPlatform {
+ override fun getName(): String = "Snapchat"
+
+ override fun login(context: Context) {
+ }
+
+ override fun logout(context: Context) {
+ }
+
+ override fun isLoggedIn(context: Context): Boolean = true
+
+ override fun addPost(
+ publishSubject: PublishSubject,
+ context: Context,
+ text: String,
+ images: List,
+ imagePaths: List
+ ) {
+ val snapCreativeKitApi = SnapCreative.getApi(context)
+
+ val content = imagePaths.map {
+ val snapMediaFactory = SnapCreative.getMediaFactory(context)
+ val photoFile = try {
+ snapMediaFactory.getSnapPhotoFromFile(File(it))
+ } catch (e: SnapMediaSizeException) {
+ Log.e(getName(), e.toString())
+ null
+ }
+ SnapPhotoContent(photoFile!!)
+ }.first()
+
+ snapCreativeKitApi.sendWithCompletionHandler(
+ content,
+ object : SnapCreativeKitCompletionCallback {
+ override fun onSendSuccess() {
+ publishSubject.onNext(Any())
+ }
+
+ override fun onSendFailed(p0: SnapCreativeKitSendError?) {
+ publishSubject.onError(Exception("Snapchat error"))
+ }
+
+ })
+ }
+
+ override fun getPosts(context: Context): Single> {
+ return Single.just(emptyList())
+ }
+
+ override fun getLogo(): Int = R.drawable.ic_icon_snapchat
+
+ override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
+ super.onActivityResult(requestCode, resultCode, data)
+ }
+
+ override fun handleButtonView(context: Context): (SocialWithButtonRecycler.ViewHolder) -> Unit =
+ {
+ it.image.setImageResource(getLogo())
+ it.textView.text = getName()
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/pl/edu/amu/wmi/socialaggregator/socialplatforms/SocialPlatform.kt b/app/src/main/java/pl/edu/amu/wmi/socialaggregator/socialplatforms/SocialPlatform.kt
index 3214dbe..8ee41a7 100644
--- a/app/src/main/java/pl/edu/amu/wmi/socialaggregator/socialplatforms/SocialPlatform.kt
+++ b/app/src/main/java/pl/edu/amu/wmi/socialaggregator/socialplatforms/SocialPlatform.kt
@@ -13,7 +13,10 @@ interface SocialPlatform {
fun login(context: Context)
fun logout(context: Context)
fun isLoggedIn(context: Context): Boolean
- fun addPost(context: Context, text: String, images: List): PublishSubject
+ fun addPost(publishSubject: PublishSubject,
+ context: Context, text: String, images: List,
+ imagePaths: List)
+
fun getPosts(context: Context): Single>
fun getLogo(): Int
fun handleButtonView(context: Context): (SocialWithButtonRecycler.ViewHolder) -> Unit = {}
diff --git a/app/src/main/java/pl/edu/amu/wmi/socialaggregator/utils/SocialPlatformsManager.kt b/app/src/main/java/pl/edu/amu/wmi/socialaggregator/utils/SocialPlatformsManager.kt
index b7cf0e2..5a42626 100644
--- a/app/src/main/java/pl/edu/amu/wmi/socialaggregator/utils/SocialPlatformsManager.kt
+++ b/app/src/main/java/pl/edu/amu/wmi/socialaggregator/utils/SocialPlatformsManager.kt
@@ -2,13 +2,14 @@ package pl.edu.amu.wmi.socialaggregator.utils
import android.content.Context
import pl.edu.amu.wmi.socialaggregator.socialplatforms.Facebook
-import pl.edu.amu.wmi.socialaggregator.socialplatforms.FacebookMock
+import pl.edu.amu.wmi.socialaggregator.socialplatforms.Snapchat
import pl.edu.amu.wmi.socialaggregator.socialplatforms.SocialPlatform
object SocialPlatformsManager {
- private val IMPLEMENTED_PLATFORMS = listOf(
+ private val IMPLEMENTED_PLATFORMS = listOf(
// FacebookMock()
- Facebook()
+ Facebook(),
+ Snapchat()
)
fun getAll() = IMPLEMENTED_PLATFORMS
diff --git a/app/src/main/java/pl/edu/amu/wmi/socialaggregator/viewholders/PostDetailsRecycler.kt b/app/src/main/java/pl/edu/amu/wmi/socialaggregator/viewholders/PostDetailsRecycler.kt
index 3dedaf0..ce42649 100644
--- a/app/src/main/java/pl/edu/amu/wmi/socialaggregator/viewholders/PostDetailsRecycler.kt
+++ b/app/src/main/java/pl/edu/amu/wmi/socialaggregator/viewholders/PostDetailsRecycler.kt
@@ -1,5 +1,6 @@
package pl.edu.amu.wmi.socialaggregator.viewholders
+import android.annotation.SuppressLint
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
@@ -11,8 +12,11 @@ import androidx.recyclerview.widget.RecyclerView
import com.squareup.picasso.Picasso
import io.reactivex.Observable
import pl.edu.amu.wmi.socialaggregator.R
+import pl.edu.amu.wmi.socialaggregator.socialplatforms.NotApplicableException
import pl.edu.amu.wmi.socialaggregator.socialplatforms.Post
+import pl.edu.amu.wmi.socialaggregator.socialplatforms.SocialPlatform
+@SuppressLint("CheckResult")
class PostDetailsRecycler(
postsObservable: Observable>
) : RecyclerView.Adapter() {
@@ -20,10 +24,11 @@ class PostDetailsRecycler(
val posts = emptyList().toMutableList()
init {
- postsObservable.subscribe {
- posts.addAll(it)
- notifyDataSetChanged()
- }
+ postsObservable
+ .subscribe {
+ posts.addAll(it)
+ notifyDataSetChanged()
+ }
}
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
diff --git a/app/src/main/java/pl/edu/amu/wmi/socialaggregator/viewholders/PostSummaryRecycler.kt b/app/src/main/java/pl/edu/amu/wmi/socialaggregator/viewholders/PostSummaryRecycler.kt
index 66165a8..c16f0ad 100644
--- a/app/src/main/java/pl/edu/amu/wmi/socialaggregator/viewholders/PostSummaryRecycler.kt
+++ b/app/src/main/java/pl/edu/amu/wmi/socialaggregator/viewholders/PostSummaryRecycler.kt
@@ -1,5 +1,6 @@
package pl.edu.amu.wmi.socialaggregator.viewholders
+import android.annotation.SuppressLint
import android.view.LayoutInflater
import android.view.ViewGroup
import android.widget.ImageView
@@ -7,22 +8,27 @@ import android.widget.TextView
import androidx.constraintlayout.widget.ConstraintLayout
import androidx.recyclerview.widget.RecyclerView
import io.reactivex.Observable
+import io.reactivex.Single
import pl.edu.amu.wmi.socialaggregator.R
+import pl.edu.amu.wmi.socialaggregator.socialplatforms.NotApplicableException
import pl.edu.amu.wmi.socialaggregator.socialplatforms.Post
import pl.edu.amu.wmi.socialaggregator.socialplatforms.SocialPlatform
+@SuppressLint("CheckResult")
class PostSummaryRecycler(
- socialsObservable: Observable>>
+ socialsObservable: Observable?>>
) : RecyclerView.Adapter() {
- init {
- socialsObservable.subscribe {
- socials.add(it)
- notifyDataSetChanged()
- }
- }
+ private val socials = mutableListOf?>>()
- val socials = emptyList>>().toMutableList()
+ init {
+ socialsObservable
+ .doOnNext {
+ socials.add(it)
+ notifyDataSetChanged()
+ }
+ .subscribe()
+ }
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
val layout = LayoutInflater.from(parent.context)
@@ -41,9 +47,11 @@ class PostSummaryRecycler(
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
val (social, posts) = socials[position]
- val count = posts.size
+ val count = posts?.size
holder.socialName.text = social.getName()
- holder.postCount.text = count.toString() + if (count > 1) " posts" else " post"
+ holder.postCount.text = count?.let {
+ count.toString() + if (count > 1) " posts" else " post"
+ } ?: "Not applicable"
holder.imageView.setImageResource(social.getLogo())
}
diff --git a/app/src/main/res/drawable-hdpi/ic_icon_snapchat.png b/app/src/main/res/drawable-hdpi/ic_icon_snapchat.png
new file mode 100644
index 0000000..fce2549
Binary files /dev/null and b/app/src/main/res/drawable-hdpi/ic_icon_snapchat.png differ
diff --git a/app/src/main/res/drawable-mdpi/ic_icon_snapchat.png b/app/src/main/res/drawable-mdpi/ic_icon_snapchat.png
new file mode 100644
index 0000000..68ebedf
Binary files /dev/null and b/app/src/main/res/drawable-mdpi/ic_icon_snapchat.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_icon_snapchat.png b/app/src/main/res/drawable-xhdpi/ic_icon_snapchat.png
new file mode 100644
index 0000000..2a0157b
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_icon_snapchat.png differ
diff --git a/app/src/main/res/drawable-xxhdpi/ic_icon_snapchat.png b/app/src/main/res/drawable-xxhdpi/ic_icon_snapchat.png
new file mode 100644
index 0000000..b67b08a
Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/ic_icon_snapchat.png differ
diff --git a/app/src/main/res/drawable-xxxhdpi/ic_icon_snapchat.png b/app/src/main/res/drawable-xxxhdpi/ic_icon_snapchat.png
new file mode 100644
index 0000000..f7e3609
Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/ic_icon_snapchat.png differ
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 0ad99b7..cd531cb 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -6,4 +6,10 @@
2437098899888167
fb2437098899888167
+
+
+
+
+
+
diff --git a/app/src/main/res/xml/file_paths.xml b/app/src/main/res/xml/file_paths.xml
new file mode 100644
index 0000000..995db17
--- /dev/null
+++ b/app/src/main/res/xml/file_paths.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build.gradle b/build.gradle
index e882ab2..29dd1d1 100644
--- a/build.gradle
+++ b/build.gradle
@@ -19,7 +19,10 @@ allprojects {
repositories {
google()
jcenter()
-
+
+ maven {
+ url "https://storage.googleapis.com/snap-kit-build/maven"
+ }
}
}