angularjs - cloak - Burlarse de un servicio angular en un transportador
ng-init (1)
Eche un vistazo a la prueba unitaria de addMockModule()
. Intenta agregar la instrucción addMockModule antes de llamar a browser.get()
Intento usar el AddMockModule de Protractor para insertar datos simulados en mi prueba de fin de dos extremos.
Se supone que mi prueba debe ir a un sitio web, buscar un botón por css-class y hacer clic en él. El clic del botón llama a la función dostuff () en MyService, que recupera datos del back-end.
Mi código hasta ahora:
describe(''should display validation error'', function () {
it(''should work'', function () {
browser.get(''http://my.url'');
browser.addMockModule(''MyService'', function () {
// Fake Service Implementation returning a promise
angular.module(''MyService'', [])
.value({
dostuff: function () {
return {
then: function (callback) {
var data = { "foo": "bar" };
return callback(data);
}
};
}
});
});
var button = element(by.css(''.btn-primary''));
button.click();
browser.sleep(5000);
});
});
La prueba es acceder al sitio web y hacer clic en el botón. El problema es que se muestran datos reales de la base de datos, no los datos simulados. Seguí varios hilos, como este: Cómo simular angular.module (''myModule'', []). Value () en Jasmine / Protractor
Sin embargo, parece que la función transportador.getInstance () está en desuso.
Alguien tiene esto funcionando?