DroidKaigi / conference-app-2023

The Official Conference App for DroidKaigi 2023
Apache License 2.0
647 stars 206 forks source link

Position of animation for achieve rally is weird. #1256

Open upon0426 opened 1 year ago

upon0426 commented 1 year ago

Describe the bug Position of animation for achieve rally is weird.

Expected behavior Please make sure the component shows up in the center.

Screenshots Screenshot_20230916-134929

sanao1006 commented 1 year ago

I would like to work on this task!

upon0426 commented 1 year ago

Sure! Go ahead!

sanao1006 commented 1 year ago

How can I check the animation of Achivement? Do I run AchievementsScreenTest?

takahirom commented 1 year ago

Yeah, It's difficult. I was wondering if you could add a test to check.

sanao1006 commented 1 year ago

I would like to add a test if possible of course. By the way, when I run AchievementsScreenTest, I get the following error, is it just my environment?

java.lang.IllegalArgumentException: resource native/windows/x86_64/robolectric-nativeruntime.dll not found.
    at com.google.common.base.Preconditions.checkArgument(Preconditions.java:220)
    at com.google.common.io.Resources.getResource(Resources.java:194)
    at org.robolectric.nativeruntime.DefaultNativeRuntimeLoader.loadLibrary(DefaultNativeRuntimeLoader.java:154)
    at org.robolectric.nativeruntime.DefaultNativeRuntimeLoader.lambda$ensureLoaded$0(DefaultNativeRuntimeLoader.java:84)
    at org.robolectric.util.PerfStatsCollector.measure(PerfStatsCollector.java:86)
    at org.robolectric.nativeruntime.DefaultNativeRuntimeLoader.ensureLoaded(DefaultNativeRuntimeLoader.java:74)
    at org.robolectric.nativeruntime.DefaultNativeRuntimeLoader.injectAndLoad(DefaultNativeRuntimeLoader.java:54)
    at org.robolectric.shadows.ShadowNativeRenderNode.nCreate(ShadowNativeRenderNode.java:21)
    at android.graphics.RenderNode.nCreate(RenderNode.java)
    at android.graphics.RenderNode.__constructor__(RenderNode.java:227)
    at android.graphics.RenderNode.<init>(RenderNode.java)
    at android.graphics.RenderNode.create(RenderNode.java:243)
    at android.view.View.__constructor__(View.java:5373)
    at android.view.View.<init>(View.java)
    at android.view.ViewGroup.<init>(ViewGroup.java)
    at android.widget.FrameLayout.<init>(FrameLayout.java)
    at com.android.internal.policy.DecorView.<init>(DecorView.java)
    at com.android.internal.policy.PhoneWindow.generateDecor(PhoneWindow.java:2385)
    at com.android.internal.policy.PhoneWindow.installDecor(PhoneWindow.java:2727)
    at com.android.internal.policy.PhoneWindow.getDecorView(PhoneWindow.java:2144)
    at android.app.ActivityTransitionState.setEnterActivityOptions(ActivityTransitionState.java:171)
    at android.app.Activity.performCreate(Activity.java:8299)
    at android.app.Activity.performCreate(Activity.java:8269)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1384)
    at org.robolectric.android.internal.RoboMonitoringInstrumentation.callActivityOnCreate(RoboMonitoringInstrumentation.java:303)
    at org.robolectric.android.controller.ActivityController.lambda$create$0(ActivityController.java:138)
    at org.robolectric.shadows.ShadowPausedLooper.runPaused(ShadowPausedLooper.java:204)
    at org.robolectric.android.controller.ActivityController.create(ActivityController.java:136)
    at org.robolectric.android.controller.ActivityController.create(ActivityController.java:146)
    at org.robolectric.android.internal.RoboMonitoringInstrumentation.startActivitySyncInternal(RoboMonitoringInstrumentation.java:113)
    at org.robolectric.android.internal.LocalActivityInvoker.startActivity(LocalActivityInvoker.java:35)
    at org.robolectric.android.internal.LocalActivityInvoker.startActivity(LocalActivityInvoker.java:40)
    at androidx.test.core.app.ActivityScenario.launchInternal(ActivityScenario.java:362)
    at androidx.test.core.app.ActivityScenario.launch(ActivityScenario.java:235)
    at androidx.test.ext.junit.rules.ActivityScenarioRule.lambda$new$2(ActivityScenarioRule.java:95)
    at androidx.test.ext.junit.rules.ActivityScenarioRule$$ExternalSyntheticLambda0.get(D8$$SyntheticClass)
    at androidx.test.ext.junit.rules.ActivityScenarioRule.before(ActivityScenarioRule.java:110)
    at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:50)
    at androidx.compose.ui.test.junit4.AndroidComposeTestRule$apply$1$evaluate$1.invoke(AndroidComposeTestRule.android.kt:272)
    at androidx.compose.ui.test.junit4.AndroidComposeTestRule$apply$1$evaluate$1.invoke(AndroidComposeTestRule.android.kt:271)
    at androidx.compose.ui.test.AndroidComposeUiTestEnvironment$AndroidComposeUiTestImpl.withDisposableContent(ComposeUiTest.android.kt:491)
    at androidx.compose.ui.test.AndroidComposeUiTestEnvironment$runTest$1$1$1$1$1$1.invoke(ComposeUiTest.android.kt:323)
    at androidx.compose.ui.test.AndroidComposeUiTestEnvironment.withComposeIdlingResource(ComposeUiTest.android.kt:375)
    at androidx.compose.ui.test.AndroidComposeUiTestEnvironment.access$withComposeIdlingResource(ComposeUiTest.android.kt:228)
    at androidx.compose.ui.test.AndroidComposeUiTestEnvironment$runTest$1$1$1$1$1.invoke(ComposeUiTest.android.kt:322)
    at androidx.compose.ui.test.AndroidComposeUiTestEnvironment.withWindowRecomposer(ComposeUiTest.android.kt:349)
    at androidx.compose.ui.test.AndroidComposeUiTestEnvironment.access$withWindowRecomposer(ComposeUiTest.android.kt:228)
    at androidx.compose.ui.test.AndroidComposeUiTestEnvironment$runTest$1$1$1$1.invoke(ComposeUiTest.android.kt:321)
    at androidx.compose.ui.test.AndroidComposeUiTestEnvironment.withTestCoroutines(ComposeUiTest.android.kt:362)
    at androidx.compose.ui.test.AndroidComposeUiTestEnvironment.access$withTestCoroutines(ComposeUiTest.android.kt:228)
    at androidx.compose.ui.test.AndroidComposeUiTestEnvironment$runTest$1$1$1.invoke(ComposeUiTest.android.kt:320)
    at androidx.compose.ui.test.junit4.IdlingStrategy.withStrategy(IdlingStrategy.android.kt:52)
    at androidx.compose.ui.test.AndroidComposeUiTestEnvironment$runTest$1$1.invoke(ComposeUiTest.android.kt:319)
    at androidx.compose.ui.test.junit4.IdlingResourceRegistry.withRegistry(IdlingResourceRegistry.jvm.kt:157)
    at androidx.compose.ui.test.AndroidComposeUiTestEnvironment$runTest$1.invoke(ComposeUiTest.android.kt:318)
    at androidx.compose.ui.test.junit4.ComposeRootRegistry.withRegistry(ComposeRootRegistry.android.kt:146)
    at androidx.compose.ui.test.AndroidComposeUiTestEnvironment.runTest(ComposeUiTest.android.kt:317)
    at androidx.compose.ui.test.junit4.AndroidComposeTestRule$apply$1.evaluate(AndroidComposeTestRule.android.kt:271)
    at com.github.takahirom.roborazzi.RoborazziRule$runTest$evaluate$1.invoke(RoborazziRule.kt:150)
    at com.github.takahirom.roborazzi.RoborazziRule$runTest$evaluate$1.invoke(RoborazziRule.kt:148)
    at com.github.takahirom.roborazzi.RoborazziRule.runTest(RoborazziRule.kt:173)
    at com.github.takahirom.roborazzi.RoborazziRule.access$runTest(RoborazziRule.kt:27)
    at com.github.takahirom.roborazzi.RoborazziRule$apply$1.evaluate(RoborazziRule.kt:132)
    at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:61)
    at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:61)
    at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:61)
    at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:61)
    at dagger.hilt.android.internal.testing.MarkThatRulesRanRule$1.evaluate(MarkThatRulesRanRule.java:108)
    at org.junit.rules.RunRules.evaluate(RunRules.java:20)
    at org.junit.rules.RunRules.evaluate(RunRules.java:20)
    at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    at org.robolectric.RobolectricTestRunner$HelperTestRunner$1.evaluate(RobolectricTestRunner.java:589)
    at org.robolectric.internal.SandboxTestRunner$2.lambda$evaluate$2(SandboxTestRunner.java:290)
    at org.robolectric.internal.bytecode.Sandbox.lambda$runOnMainThread$0(Sandbox.java:99)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
    at java.base/java.lang.Thread.run(Thread.java:1589)
sanao1006 commented 1 year ago

PC is Windows 11 and Android Studio is Android Studio Giraffe | 2022.3.1

takahirom commented 1 year ago

You can use CI to check it, although it may be a hassle🙇

sanao1006 commented 1 year ago

I understand! Thanks for the reply!

sanao1006 commented 1 year ago

I am sorry, but this task is surely too difficult for me, so can I give it up?

takahirom commented 1 year ago

Thanks for telling me! Of course!