Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Screenshot output folder is not writable when attempting to generate automated screenshots #3192

Open
Tracked by #4167
teolemon opened this issue May 30, 2020 · 0 comments

Comments

@teolemon
Copy link
Member

Describe the bug
The LogCat has some issue with the screenshot output folder when attempting to generate automated screenshots

To Reproduce
Steps to reproduce the behavior:

  1. Run and wait
  2. See error
2020-05-30 13:58:39.414 31448-31472/openfoodfacts.github.scrachx.openfood.screenshots E/FileWritingScreenshotCallback: Failed to initialize directory: /storage/emulated/0/Pictures/offScreenshots/Israel
    java.io.IOException: Unable to create output dir: /storage/emulated/0/Pictures/offScreenshots/Israel
        at openfoodfacts.github.scrachx.openfood.test.FileWritingScreenshotCallback.createPathTo(FileWritingScreenshotCallback.java:95)
        at openfoodfacts.github.scrachx.openfood.test.FileWritingScreenshotCallback.initializeDirectory(FileWritingScreenshotCallback.java:82)
        at openfoodfacts.github.scrachx.openfood.test.FileWritingScreenshotCallback.getFilesDirectory(FileWritingScreenshotCallback.java:69)
        at openfoodfacts.github.scrachx.openfood.test.FileWritingScreenshotCallback.screenshotCaptured(FileWritingScreenshotCallback.java:32)
        at tools.fastlane.screengrab.FalconScreenshotStrategy.takeScreenshot(FalconScreenshotStrategy.java:24)
        at tools.fastlane.screengrab.Screengrab.screenshot(Screengrab.java:94)
        at openfoodfacts.github.scrachx.openfood.test.ScreenshotTaker.takeScreenshot(ScreenshotTaker.java:19)
        at openfoodfacts.github.scrachx.openfood.test.ScreenshotActivityTestRule.takeScreenshot(ScreenshotActivityTestRule.java:114)
        at openfoodfacts.github.scrachx.openfood.test.ScreenshotActivityTestRule.takeScreenshot(ScreenshotActivityTestRule.java:109)
        at openfoodfacts.github.scrachx.openfood.test.ScreenshotActivityTestRule.afterActivityLaunched(ScreenshotActivityTestRule.java:101)
        at androidx.test.rule.ActivityTestRule.launchActivity(ActivityTestRule.java:366)
        at openfoodfacts.github.scrachx.openfood.AbstractScreenshotTest.startScreenshotActivityTestRules(AbstractScreenshotTest.java:41)
        at openfoodfacts.github.scrachx.openfood.AbstractScreenshotTest.startForAllLocales(AbstractScreenshotTest.java:74)
        at openfoodfacts.github.scrachx.openfood.TakeScreenshotIncompleteProductsTest.testTakeScreenshot(TakeScreenshotIncompleteProductsTest.java:30)
        at java.lang.reflect.Method.invoke(Native Method)
        at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
        at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
        at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
        at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
        at androidx.test.rule.ActivityTestRule$ActivityStatement.evaluate(ActivityTestRule.java:531)
        at androidx.test.rule.GrantPermissionRule$RequestPermissionStatement.evaluate(GrantPermissionRule.java:134)
        at org.junit.rules.RunRules.evaluate(RunRules.java:20)
        at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
        at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
        at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
        at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
        at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
        at androidx.test.runner.AndroidJUnit4.run(AndroidJUnit4.java:104)
        at org.junit.runners.Suite.runChild(Suite.java:128)
        at org.junit.runners.Suite.runChild(Suite.java:27)
        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
        at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
        at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
2020-05-30 13:58:39.414 31448-31472/openfoodfacts.github.scrachx.openfood.screenshots E/FileWritingScreenshotCallback:     at androidx.test.internal.runner.TestExecutor.execute(TestExecutor.java:56)
        at androidx.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:392)
        at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:2196)
2020-05-30 13:58:39.418 31448-31472/openfoodfacts.github.scrachx.openfood.screenshots E/ScreenshotActivityTestRule: run on ui
    java.lang.RuntimeException: Unable to capture screenshot.
        at openfoodfacts.github.scrachx.openfood.test.FileWritingScreenshotCallback.screenshotCaptured(FileWritingScreenshotCallback.java:44)
        at tools.fastlane.screengrab.FalconScreenshotStrategy.takeScreenshot(FalconScreenshotStrategy.java:24)
        at tools.fastlane.screengrab.Screengrab.screenshot(Screengrab.java:94)
        at openfoodfacts.github.scrachx.openfood.test.ScreenshotTaker.takeScreenshot(ScreenshotTaker.java:19)
        at openfoodfacts.github.scrachx.openfood.test.ScreenshotActivityTestRule.takeScreenshot(ScreenshotActivityTestRule.java:114)
        at openfoodfacts.github.scrachx.openfood.test.ScreenshotActivityTestRule.takeScreenshot(ScreenshotActivityTestRule.java:109)
        at openfoodfacts.github.scrachx.openfood.test.ScreenshotActivityTestRule.afterActivityLaunched(ScreenshotActivityTestRule.java:101)
        at androidx.test.rule.ActivityTestRule.launchActivity(ActivityTestRule.java:366)
        at openfoodfacts.github.scrachx.openfood.AbstractScreenshotTest.startScreenshotActivityTestRules(AbstractScreenshotTest.java:41)
        at openfoodfacts.github.scrachx.openfood.AbstractScreenshotTest.startForAllLocales(AbstractScreenshotTest.java:74)
        at openfoodfacts.github.scrachx.openfood.TakeScreenshotIncompleteProductsTest.testTakeScreenshot(TakeScreenshotIncompleteProductsTest.java:30)
        at java.lang.reflect.Method.invoke(Native Method)
        at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
        at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
        at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
        at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
        at androidx.test.rule.ActivityTestRule$ActivityStatement.evaluate(ActivityTestRule.java:531)
        at androidx.test.rule.GrantPermissionRule$RequestPermissionStatement.evaluate(GrantPermissionRule.java:134)
        at org.junit.rules.RunRules.evaluate(RunRules.java:20)
        at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
        at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
        at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
        at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
        at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
        at androidx.test.runner.AndroidJUnit4.run(AndroidJUnit4.java:104)
        at org.junit.runners.Suite.runChild(Suite.java:128)
        at org.junit.runners.Suite.runChild(Suite.java:27)
        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
        at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
        at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
        at androidx.test.internal.runner.TestExecutor.execute(TestExecutor.java:56)
        at androidx.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:392)
        at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:2196)
     Caused by: java.io.IOException: Unable to get a screenshot storage directory
        at openfoodfacts.github.scrachx.openfood.test.FileWritingScreenshotCallback.getFilesDirectory(FileWritingScreenshotCallback.java:72)
2020-05-30 13:58:39.418 31448-31472/openfoodfacts.github.scrachx.openfood.screenshots E/ScreenshotActivityTestRule:     at openfoodfacts.github.scrachx.openfood.test.FileWritingScreenshotCallback.screenshotCaptured(FileWritingScreenshotCallback.java:32)
        	... 43 more

Expected behavior
Screenshot written to disk

@teolemon teolemon changed the title The LogCat has some issue with the screenshot output folder when attempting to generate automated screenshots Screenshot output folder is not writable when attempting to generate automated screenshots May 30, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant