我正在尝试为我创建的电容器插件添加一些Android本机单元测试。
问题在于该方法希望获取一个PluginCall对象作为参数。在iOS中,它非常简单。例如:
func test()
{
let data = "madness? THIS. IS. DATA!!!!! ~Leonidas I, King of Data, around 480 BCE"
let plugin = Plugin()
let call = CAPPluginCall(callbackId: "test", options: [
"data": data
], success: { (result, call) in
let resultValue = result?.data["data"] as? Data
XCTAssert(resultValue != nil)
}, error: { (err) in
XCTFail("Error shouldn't have been called")
})
plugin.doSomethingCool(call!)
}
真的很简单。
尝试为android做同样的事情,效果不佳。
要实例化一个新的PluginCall对象,我必须向构造函数传递一个MessageHandler对象,并且要实例化MessageHandler对象,我必须传递一个Bridge对象,要实例化一个桥对象,我必须传递一个编译器没有提供的PluginManager对象。甚至承认。显然是不可能完成的任务。
当然,我总是可以只用实际数据替换PluginCall参数,但是我想对我的插件进行全面的测试,而不是忽略它的大部分,以便我可以对其进行测试。尝试在线搜索此问题没有得到任何结果,即使官方文档也没有说明任何问题,因此我转向SO。有人以前做过这样的事情,可以指出正确的方向吗?
TL; DR
如何为电容器插件创建Android本机测试?
谢谢:)