Comments (9)
staticMockk("com.company.module1.ExtensionKt").use {
every { any<TestObject>().insert() } returns Completable.complete()
}
from mockk.
Note to use class name and not file name:
staticMockk("com.company.module1.FreeFunctionsKt").use {
every{ getValue() } returns 1
}
from mockk.
Thanks for the quick response, but does this also work for top level functions?
The function in the Example is not inside a class just in a File named: "FreeFunctions.kt"
from mockk.
That's why you need staticMockk
, Kotlin builds class FreeFunctionsKt with static methods out of such functions.
from mockk.
Okay thank you very much so far. Did get it working. Is it only possible to mock static functions inside the .use{} closure?
from mockk.
And one more question:
I have an extension Function on the Abstract class io.reactivex.Observable
fun Observable<TestObject>.insert(): Completable {
return this
.map {
it.insert()
}
.ignoreElements()
}
I can't mock this Extension, because its an abstract class. And I cannot create an Object of Observable like
staticMockk("com.company.module1.ExtensionKt").use {
every { Observable<TestObject>().insert() } returns Completable.complete()
}
Do you have any thoughts on that?
from mockk.
Something like that should be possible
from mockk.
I see, does any only mock this one extension Function of the Object and the rest behaves normally?
Using this Technique gives me undefined Behavior.
I got it compiling with:
staticMockk("com.company.module1.ExtensionsKt").use {
every {.any<Observable<TestObject>>().insert() } returns Completable.complete()
}
But this seems to interfere with my Observable chain.
from mockk.
Just in case you still have an issue please report it again with stack traces, examples and more details. Closing this one
from mockk.
Related Issues (20)
- MockKException: Failing to instantiate mocks for functions
- Issue with interface mock and reflection
- mockkStatic(System::class) causes java.lang.StackOverflowError with java 17 HOT 2
- Support building JVM / common without Android SDK HOT 1
- Test passes when compiled for JDK target 19, but fails when compiled for JDK target 21 HOT 2
- Does 1.13.8 version require jvm 11? HOT 1
- Support Kotlin 1.9.20's enums with mockkObject HOT 2
- `registerInstanceFactory` supplier is not used for value classes
- Spy Object Returns Unexpected Default Value Instead of Real Property
- Incompatibility between Kotlin 1.7.xx and mockk after updating to 1.13.8
- Provide better java interop HOT 1
- finalize function not generated or mocked
- Allow to copy an existing mock HOT 1
- lateinit property has not been initialized on some ancestor classes HOT 2
- Using the result of callOriginal() inside coAnswers throws a fatal exception when the original contains a call to delay
- KotlinReflectionInternalError with HttpResponse.BodyHandler HOT 4
- Cannot create mock of interface, but of implementing class (method type parameters involved) HOT 2
- Error msg missing type information when no answers found for an overloaded method HOT 2
- kotlinx.datetime.Instant relaxed mock yields null java.time.Instant value
- NoSuchElementException in verify() HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mockk.