@@ -534,6 +534,81 @@ abstract class UtValueTestCaseChecker(
534534 additionalMockAlwaysClasses = additionalMockAlwaysClasses
535535 )
536536
537+ protected inline fun <reified R > checkMocksWithExceptions (
538+ method : KFunction1 <* , R >,
539+ branches : ExecutionsNumberMatcher ,
540+ vararg matchers : (Mocks , Result <R >) -> Boolean ,
541+ coverage : CoverageMatcher = Full ,
542+ mockStrategy : MockStrategyApi = NO_MOCKS ,
543+ additionalDependencies : Array <Class <* >> = emptyArray(),
544+ additionalMockAlwaysClasses : Set <ClassId > = emptySet()
545+ ) = internalCheck(
546+ method, mockStrategy, branches, matchers, coverage,
547+ arguments = ::withMocksAndExceptions,
548+ additionalDependencies = additionalDependencies,
549+ additionalMockAlwaysClasses = additionalMockAlwaysClasses
550+ )
551+
552+ protected inline fun <reified T , reified R > checkMocksWithExceptions (
553+ method : KFunction2 <* , T , R >,
554+ branches : ExecutionsNumberMatcher ,
555+ vararg matchers : (T , Mocks , Result <R >) -> Boolean ,
556+ coverage : CoverageMatcher = Full ,
557+ mockStrategy : MockStrategyApi = NO_MOCKS ,
558+ additionalDependencies : Array <Class <* >> = emptyArray(),
559+ additionalMockAlwaysClasses : Set <ClassId > = emptySet()
560+ ) = internalCheck(
561+ method, mockStrategy, branches, matchers, coverage, T ::class ,
562+ arguments = ::withMocksAndExceptions,
563+ additionalDependencies = additionalDependencies,
564+ additionalMockAlwaysClasses = additionalMockAlwaysClasses
565+ )
566+
567+ protected inline fun <reified T1 , reified T2 , reified R > checkMocksWithExceptions (
568+ method : KFunction3 <* , T1 , T2 , R >,
569+ branches : ExecutionsNumberMatcher ,
570+ vararg matchers : (T1 , T2 , Mocks , Result <R >) -> Boolean ,
571+ coverage : CoverageMatcher = Full ,
572+ mockStrategy : MockStrategyApi = NO_MOCKS ,
573+ additionalDependencies : Array <Class <* >> = emptyArray(),
574+ additionalMockAlwaysClasses : Set <ClassId > = emptySet()
575+ ) = internalCheck(
576+ method, mockStrategy, branches, matchers, coverage, T1 ::class , T2 ::class ,
577+ arguments = ::withMocksAndExceptions,
578+ additionalDependencies = additionalDependencies,
579+ additionalMockAlwaysClasses = additionalMockAlwaysClasses
580+ )
581+
582+ protected inline fun <reified T1 , reified T2 , reified T3 , reified R > checkMocksWithExceptions (
583+ method : KFunction4 <* , T1 , T2 , T3 , R >,
584+ branches : ExecutionsNumberMatcher ,
585+ vararg matchers : (T1 , T2 , T3 , Mocks , Result <R >) -> Boolean ,
586+ coverage : CoverageMatcher = Full ,
587+ mockStrategy : MockStrategyApi = NO_MOCKS ,
588+ additionalDependencies : Array <Class <* >> = emptyArray(),
589+ additionalMockAlwaysClasses : Set <ClassId > = emptySet()
590+ ) = internalCheck(
591+ method, mockStrategy, branches, matchers, coverage, T1 ::class , T2 ::class , T3 ::class ,
592+ arguments = ::withMocksAndExceptions,
593+ additionalDependencies = additionalDependencies,
594+ additionalMockAlwaysClasses = additionalMockAlwaysClasses
595+ )
596+
597+ protected inline fun <reified T1 , reified T2 , reified T3 , reified T4 , reified R > checkMocksWithExceptions (
598+ method : KFunction5 <* , T1 , T2 , T3 , T4 , R >,
599+ branches : ExecutionsNumberMatcher ,
600+ vararg matchers : (T1 , T2 , T3 , T4 , Mocks , Result <R >) -> Boolean ,
601+ coverage : CoverageMatcher = Full ,
602+ mockStrategy : MockStrategyApi = NO_MOCKS ,
603+ additionalDependencies : Array <Class <* >> = emptyArray(),
604+ additionalMockAlwaysClasses : Set <ClassId > = emptySet()
605+ ) = internalCheck(
606+ method, mockStrategy, branches, matchers, coverage, T1 ::class , T2 ::class , T3 ::class , T4 ::class ,
607+ arguments = ::withMocksAndExceptions,
608+ additionalDependencies = additionalDependencies,
609+ additionalMockAlwaysClasses = additionalMockAlwaysClasses
610+ )
611+
537612 // check paramsBefore, mocks and instrumentation and result value
538613 protected inline fun <reified R > checkMocksAndInstrumentation (
539614 method : KFunction1 <* , R >,
@@ -2236,6 +2311,9 @@ fun withMocks(ex: UtValueExecution<*>) = ex.paramsBefore + listOf(ex.mocks) + ex
22362311fun withMocksAndInstrumentation (ex : UtValueExecution <* >) =
22372312 ex.paramsBefore + listOf (ex.mocks) + listOf (ex.instrumentation) + ex.evaluatedResult
22382313
2314+ fun withMocksAndExceptions (ex : UtValueExecution <* >) =
2315+ ex.paramsBefore + listOf (ex.mocks) + ex.returnValue
2316+
22392317fun withMocksInstrumentationAndThis (ex : UtValueExecution <* >) =
22402318 listOf (ex.callerBefore) + ex.paramsBefore + listOf (ex.mocks) + listOf (ex.instrumentation) + ex.evaluatedResult
22412319
0 commit comments