Hey guys, I'm trying to perform some assertions us...
# test
j
Hey guys, I'm trying to perform some assertions using argument captors but I'm stuck with an error. My unit test where the problem is happening is the following:
Copy code
class DataParserTest : Spek({

    val dataParser = DataParser()
    val dataParserMocked = mock<DataParser>()

    describe("::render") {

        context("when param is user") {

            it("does is param an user") {
                dataParserMocked.render(User())
                argumentCaptor<User>().apply {
                    verify(dataParserMocked, atLeastOnce()).render(capture())
                    firstValue shouldBeInstanceOf User::class
                }
            }
        }
    }
}
And the exception that I'm catching is:
Copy code
Expected java.lang.Object@528c868 to be an instance of class app.user.User
java.lang.AssertionError: Expected java.lang.Object@528c868 to be an instance of class app.user.User
	at org.junit.Assert.fail(Assert.java:88)
	at org.junit.Assert.assertTrue(Assert.java:41)
	at org.amshove.kluent.BasicKt.should be instance of(Basic.kt:21)
	at org.amshove.kluent.BasicKt.shouldBeInstanceOf(Basic.kt:22)
	at config.api.DataParserTest$1$1$2$2.invoke(DataParserTest.kt:79)
	at config.api.DataParserTest$1$1$2$2.invoke(DataParserTest.kt:29)
	at org.jetbrains.spek.engine.Scope$Test.execute(Scope.kt:106)
	at org.jetbrains.spek.engine.Scope$Test.execute(Scope.kt:83)
	at org.junit.platform.engine.support.hierarchical.Node.execute(Node.java:94)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$execute$1(HierarchicalTestExecutor.java:81)
	at org.junit.platform.engine.support.hierarchical.SingleTestExecutor.executeSafely(SingleTestExecutor.java:66)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:76)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$execute$1(HierarchicalTestExecutor.java:91)
	at org.junit.platform.engine.support.hierarchical.SingleTestExecutor.executeSafely(SingleTestExecutor.java:66)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:76)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$execute$1(HierarchicalTestExecutor.java:91)
	at org.junit.platform.engine.support.hierarchical.SingleTestExecutor.executeSafely(SingleTestExecutor.java:66)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:76)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$execute$1(HierarchicalTestExecutor.java:91)
	at org.junit.platform.engine.support.hierarchical.SingleTestExecutor.executeSafely(SingleTestExecutor.java:66)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:76)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$execute$1(HierarchicalTestExecutor.java:91)
	at org.junit.platform.engine.support.hierarchical.SingleTestExecutor.executeSafely(SingleTestExecutor.java:66)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:76)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:51)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:43)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:137)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:87)
	at org.jetbrains.spek.tooling.runner.junit.JUnitPlatformSpekRunner.run(JUnitPlatformSpekRunner.kt:107)
	at org.jetbrains.spek.tooling.MainKt.main(Main.kt:58)