Skip to content

Commit

Permalink
Merge pull request #68 from JacobKant/pull/issue_67
Browse files Browse the repository at this point in the history
Fix getInstrumentation() before super.onCreate runner, lazy obtain directory for test results (issue #67)
  • Loading branch information
viclovsky authored Mar 1, 2022
2 parents 0ef6017 + 0ab067c commit 35dcfcc
Show file tree
Hide file tree
Showing 4 changed files with 8 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import io.qameta.allure.kotlin.FileSystemResultsWriter
import io.qameta.allure.kotlin.util.PropertiesUtils
import java.io.File

object AllureAndroidLifecycle : AllureLifecycle(writer = FileSystemResultsWriter(obtainResultsDirectory()))
object AllureAndroidLifecycle : AllureLifecycle(writer = FileSystemResultsWriter(::obtainResultsDirectory))

/**
* Obtains results directory as a [File] reference.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -503,7 +503,7 @@ open class AllureLifecycle @JvmOverloads constructor(

private fun getDefaultWriter(): FileSystemResultsWriter {
val path = PropertiesUtils.resultsDirectoryPath
return FileSystemResultsWriter(File(path))
return FileSystemResultsWriter { File(path) }
}

private fun getDefaultNotifier(): LifecycleNotifier {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,10 @@ import java.io.IOException
import java.io.InputStream
import java.util.UUID

class FileSystemResultsWriter(private val outputDirectory: File) : AllureResultsWriter {
class FileSystemResultsWriter(private val outputDirectoryProvider: () -> File) : AllureResultsWriter {

private val outputDirectory by lazy { outputDirectoryProvider() }

private val mapper: Json = Json {
prettyPrint = true
useArrayPolymorphism = true
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,15 +14,14 @@ import java.util.*
class FileSystemResultsWriterTest {
@Test
fun shouldNotFailIfNoResultsDirectory(@TempDir folder: File) {
val resolve = folder.resolve("some-directory")
val writer = FileSystemResultsWriter(resolve)
val writer = FileSystemResultsWriter { folder.resolve("some-directory") }
val testResult = generateTestResult()
writer.write(testResult)
}

@Test
fun shouldWriteTestResult(@TempDir folder: File) {
val writer = FileSystemResultsWriter(folder)
val writer = FileSystemResultsWriter { folder }
val uuid = UUID.randomUUID().toString()
val testResult = generateTestResult(uuid)
writer.write(testResult)
Expand Down

0 comments on commit 35dcfcc

Please sign in to comment.