- add repo
repositories {
mavenLocal()
maven {
url "http://dl.bintray.com/ooeyuna/rika"
}
jcenter()
mavenCentral()
}
- dependency
compile "ooeyuna.rika:tools:1.0"
For WebServer
Default ObjectMapper with module jsr310,jdk8,kotlin
version 2.8.7
Jackson.mapper.readValue<SomeObject>("")
Leader Selector, implement by zk(curator recipes)
version 2.10.0
val leader = ZkLeaderSelectorImpl("/leader_test", client, 500)
kotlin extension,use logback-classic
version 1.1.7
//at every kotlin class
log{
it.info("123")
}
log_debug("432") //check logger debug enabled
Test class must run with PowerMock
example:
@PrepareForTest(fullyQualifiedNames = arrayOf("ooeyuna.rika.*"))
@PowerMockIgnore("javax.management.*")
@RunWith(PowerMockRunner::class)
class TestForTestUtils {
...
}
mock object
val f = TestUtils.mockObject<ObForMock>()
TestUtils.whenDo(f.test()).thenReturn(345)
val r = ObForMock.test()
Assert.assertEquals(r, 345)
mock class
val f = TestUtils.mock<ForMock>()
TestUtils.whenDo(f.test()).thenReturn(345)
val r = f.test()
Assert.assertEquals(r, 345)
mock companion object
val f = TestUtils.mockComanionObject<ComObForMock.Companion>()
TestUtils.whenDo(f.test()).thenReturn(345)
val r = ComObForMock.test()
Assert.assertEquals(r, 345)
mock object final field
val oi = ForMockFinal::class.objectInstance!!
val v = TestUtils.mockFinalField<FinalField>(oi, "ff")
TestUtils.whenDo(v.test()).thenReturn(345)
val r = ForMockFinal.ff.test()
Assert.assertEquals(r, 345)
mock class final field
val oi = ForMockFinalClass()
val v = TestUtils.mockFinalField<FinalField>(oi, "ff")
TestUtils.whenDo(v.test()).thenReturn(345)
val r = oi.ff.test()
Assert.assertEquals(r, 345)
- Mockito.verify cannot work.(kotlin null-safety limit)