amanda.hinchman-dominguez
10/30/2019, 6:58 PMRachel
10/30/2019, 7:09 PMarrow.core.extensions
are provided by arrow-meta artifact which is not being included in the configurationamanda.hinchman-dominguez
10/30/2019, 7:10 PMRachel
10/30/2019, 7:11 PM./modules/meta/arrow-meta/src/main/java/arrow/core/extensions/
amanda.hinchman-dominguez
10/30/2019, 7:16 PMRachel
10/31/2019, 12:25 AMamanda.hinchman-dominguez
10/31/2019, 12:27 AMRachel
10/31/2019, 12:29 AM@Test
fun `simple_case_function`() {
assertThis(CompilerTest(
config = {
listOf(addCompilerPlugins(ComprehensionsTest.compilerPlugin))
},
code = {
"""
| object Id
|
| @extension
| fun IdEq() : Eq<Id> = Id.eq().run {
| Id.eqv(Id)
| }
| val x = Id == Id
|
""".source
},
assert = {
compiles
}
))
assert(true)
}
amanda.hinchman-dominguez
10/31/2019, 12:29 AMRachel
10/31/2019, 12:29 AMamanda.hinchman-dominguez
10/31/2019, 12:29 AMRachel
10/31/2019, 12:30 AMamanda.hinchman-dominguez
10/31/2019, 1:36 AMRachel
10/31/2019, 12:47 PMval compilerPlugin = CompilerPlugin("Arrow Meta", listOf(Dependency("compiler-plugin")))
val arrowAnnotations = Dependency("arrow-annotations:0.10.3-SNAPSHOT")
assertThis(CompilerTest(
config = {
addCompilerPlugins(compilerPlugin) + addDependencies(arrowAnnotations)
},
code = {
"""
| import arrow.extension
|
| object Id
|
| @extension
| fun IdEq() : Eq<Id> = Id.eq().run {
| Id.eqv(Id)
| }
| val x = Id == Id
|
""".source
},
assert = {
compiles
}
))
master
, you'll get a way to avoid "0.10.3-SNAPSHOT" or any other specific versionamanda.hinchman-dominguez
10/31/2019, 2:27 PMRachel
10/31/2019, 3:50 PMgradle.properties
amanda.hinchman-dominguez
10/31/2019, 3:50 PMRachel
10/31/2019, 3:56 PMamanda.hinchman-dominguez
10/31/2019, 4:00 PMarrow
as a dependency so that my tests may recognize Eq
and so on?Rachel
10/31/2019, 4:15 PMEq
Eq
in Arrow./modules/core/arrow-core-data/src/main/kotlin/arrow/typeclasses/Eq.kt
arrow-core-data
arrow.typeclasses.Eq
amanda.hinchman-dominguez
10/31/2019, 6:21 PMRachel
10/31/2019, 6:36 PMarrow-core-data
before, sorry. The problem was the import: import arrow.core.extensions.*
amanda.hinchman-dominguez
10/31/2019, 6:39 PMRachel
10/31/2019, 6:43 PMarrow-annotations
dependency is not necessaryamanda.hinchman-dominguez
10/31/2019, 6:44 PMRachel
10/31/2019, 6:44 PMarrow-meta/compiler-plugin/src/test/kotlin/arrow/meta/plugins/higherkind/HigherkindTest.kt
amanda.hinchman-dominguez
10/31/2019, 6:45 PM@extension
!arrow-core-data
though, right?Rachel
10/31/2019, 6:46 PMarrow-meta/compiler-plugin/src/test/kotlin/arrow/meta/plugins/higherkind/HigherkindTest.kt
@extension
, let me check because the last version of arrow-annotations is publishedamanda.hinchman-dominguez
10/31/2019, 6:47 PMRachel
10/31/2019, 6:48 PM0.10.3-SNAPSHOT
use ${System.getProperty("CURRENT_VERSION")}
because if we write hardcoded versions it will be difficult to maintain the testsamanda.hinchman-dominguez
10/31/2019, 6:49 PMval arrowCoreData = Dependency("arrow-core-data: ${System.getProperty("CURRENT_VERSION")}")
?Rachel
10/31/2019, 7:03 PMval arrowCoreData = Dependency("arrow-core-data:${System.getProperty("CURRENT_VERSION")}")
artifactId:version