@@ -530,6 +530,81 @@ abstract class UtValueTestCaseChecker(
530530 additionalMockAlwaysClasses = additionalMockAlwaysClasses
531531 )
532532
533+ protected inline fun <reified R > checkMocksWithExceptions (
534+ method : KFunction1 <* , R >,
535+ branches : ExecutionsNumberMatcher ,
536+ vararg matchers : (Mocks , Result <R >) -> Boolean ,
537+ coverage : CoverageMatcher = Full ,
538+ mockStrategy : MockStrategyApi = NO_MOCKS ,
539+ additionalDependencies : Array <Class <* >> = emptyArray(),
540+ additionalMockAlwaysClasses : Set <ClassId > = emptySet()
541+ ) = internalCheck(
542+ method, mockStrategy, branches, matchers, coverage,
543+ arguments = ::withMocksAndExceptions,
544+ additionalDependencies = additionalDependencies,
545+ additionalMockAlwaysClasses = additionalMockAlwaysClasses
546+ )
547+
548+ protected inline fun <reified T , reified R > checkMocksWithExceptions (
549+ method : KFunction2 <* , T , R >,
550+ branches : ExecutionsNumberMatcher ,
551+ vararg matchers : (T , Mocks , Result <R >) -> Boolean ,
552+ coverage : CoverageMatcher = Full ,
553+ mockStrategy : MockStrategyApi = NO_MOCKS ,
554+ additionalDependencies : Array <Class <* >> = emptyArray(),
555+ additionalMockAlwaysClasses : Set <ClassId > = emptySet()
556+ ) = internalCheck(
557+ method, mockStrategy, branches, matchers, coverage, T ::class ,
558+ arguments = ::withMocksAndExceptions,
559+ additionalDependencies = additionalDependencies,
560+ additionalMockAlwaysClasses = additionalMockAlwaysClasses
561+ )
562+
563+ protected inline fun <reified T1 , reified T2 , reified R > checkMocksWithExceptions (
564+ method : KFunction3 <* , T1 , T2 , R >,
565+ branches : ExecutionsNumberMatcher ,
566+ vararg matchers : (T1 , T2 , Mocks , Result <R >) -> Boolean ,
567+ coverage : CoverageMatcher = Full ,
568+ mockStrategy : MockStrategyApi = NO_MOCKS ,
569+ additionalDependencies : Array <Class <* >> = emptyArray(),
570+ additionalMockAlwaysClasses : Set <ClassId > = emptySet()
571+ ) = internalCheck(
572+ method, mockStrategy, branches, matchers, coverage, T1 ::class , T2 ::class ,
573+ arguments = ::withMocksAndExceptions,
574+ additionalDependencies = additionalDependencies,
575+ additionalMockAlwaysClasses = additionalMockAlwaysClasses
576+ )
577+
578+ protected inline fun <reified T1 , reified T2 , reified T3 , reified R > checkMocksWithExceptions (
579+ method : KFunction4 <* , T1 , T2 , T3 , R >,
580+ branches : ExecutionsNumberMatcher ,
581+ vararg matchers : (T1 , T2 , T3 , Mocks , Result <R >) -> Boolean ,
582+ coverage : CoverageMatcher = Full ,
583+ mockStrategy : MockStrategyApi = NO_MOCKS ,
584+ additionalDependencies : Array <Class <* >> = emptyArray(),
585+ additionalMockAlwaysClasses : Set <ClassId > = emptySet()
586+ ) = internalCheck(
587+ method, mockStrategy, branches, matchers, coverage, T1 ::class , T2 ::class , T3 ::class ,
588+ arguments = ::withMocksAndExceptions,
589+ additionalDependencies = additionalDependencies,
590+ additionalMockAlwaysClasses = additionalMockAlwaysClasses
591+ )
592+
593+ protected inline fun <reified T1 , reified T2 , reified T3 , reified T4 , reified R > checkMocksWithExceptions (
594+ method : KFunction5 <* , T1 , T2 , T3 , T4 , R >,
595+ branches : ExecutionsNumberMatcher ,
596+ vararg matchers : (T1 , T2 , T3 , T4 , Mocks , Result <R >) -> Boolean ,
597+ coverage : CoverageMatcher = Full ,
598+ mockStrategy : MockStrategyApi = NO_MOCKS ,
599+ additionalDependencies : Array <Class <* >> = emptyArray(),
600+ additionalMockAlwaysClasses : Set <ClassId > = emptySet()
601+ ) = internalCheck(
602+ method, mockStrategy, branches, matchers, coverage, T1 ::class , T2 ::class , T3 ::class , T4 ::class ,
603+ arguments = ::withMocksAndExceptions,
604+ additionalDependencies = additionalDependencies,
605+ additionalMockAlwaysClasses = additionalMockAlwaysClasses
606+ )
607+
533608 // check paramsBefore, mocks and instrumentation and result value
534609 protected inline fun <reified R > checkMocksAndInstrumentation (
535610 method : KFunction1 <* , R >,
@@ -2232,6 +2307,9 @@ fun withMocks(ex: UtValueExecution<*>) = ex.paramsBefore + listOf(ex.mocks) + ex
22322307fun withMocksAndInstrumentation (ex : UtValueExecution <* >) =
22332308 ex.paramsBefore + listOf (ex.mocks) + listOf (ex.instrumentation) + ex.evaluatedResult
22342309
2310+ fun withMocksAndExceptions (ex : UtValueExecution <* >) =
2311+ ex.paramsBefore + listOf (ex.mocks) + ex.returnValue
2312+
22352313fun withMocksInstrumentationAndThis (ex : UtValueExecution <* >) =
22362314 listOf (ex.callerBefore) + ex.paramsBefore + listOf (ex.mocks) + listOf (ex.instrumentation) + ex.evaluatedResult
22372315
0 commit comments