Hola.
Si queremos verificar si se ha ejecuta cierta función de jquery con jasmine un ejemplo es el siguiente:
spyOn($.fn, "remove").and.callThrough();
En ese caso estoy creando un spyOn sobre la función remove de jquery. La expresión: .and.callThrough(); lo que esta diciendo es que por favor escuche, pero no me afecte el normal funcionamiento de la función.
Entonces, en el it, colocaríamos:
expect($.fn.remove).toHaveBeenCalled();
Sean felices! :) Y siéntanse libres de opinar ;)
A aquel que se ha "matado" encontrando la solución. Le doy las gracias mediante este blog. Y lo que aprendí de él, lo comparto con todos.
Busca lo que quieras
Mostrando entradas con la etiqueta jasmine. Mostrar todas las entradas
Mostrando entradas con la etiqueta jasmine. Mostrar todas las entradas
Haciendo test de un callback simple con jasmine
El mundo de los test es maravilloso. Es un requisito para un buen programador.
Sin embargo, las pruebas se vuelven complejas dependiendo del código que desarrollemos.
A continuación un ejemplo sencillo. Espero poder en otras oportunidades publicar tests más complejos.
Por ejemplo... supongamos que queremos hacer las pruebas a lo siguiente:
var control = {
myFunction: function(parametro1, parametro2, callbackSimple){
//despues de hacer muchas cosas
callbackSimple("argumento1", "argumento2");
},
init : function(){
myFunction("param1", "param2", function(){
//necesito que ingrese aquí la prueba con jasmine
//AQUÍ
console.log("muchas cosas en esta funcion");
});
}
}
Ahora... como hacemos para que entre la prueba donde dice AQUÍ.
Sería así:
it("Verificar que ingrese al callback basico", function () {
control.myFunction = jasmine.createSpy("myFunction").
and.callFake(function(argument1, argument2, callback){
callback("respuesta1", "respuesta2");
})
control.init();
});
Sean felices! :) Y siéntanse libres de opinar ;)
Sin embargo, las pruebas se vuelven complejas dependiendo del código que desarrollemos.
A continuación un ejemplo sencillo. Espero poder en otras oportunidades publicar tests más complejos.
Por ejemplo... supongamos que queremos hacer las pruebas a lo siguiente:
var control = {
myFunction: function(parametro1, parametro2, callbackSimple){
//despues de hacer muchas cosas
callbackSimple("argumento1", "argumento2");
},
init : function(){
myFunction("param1", "param2", function(){
//necesito que ingrese aquí la prueba con jasmine
//AQUÍ
console.log("muchas cosas en esta funcion");
});
}
}
Ahora... como hacemos para que entre la prueba donde dice AQUÍ.
Sería así:
it("Verificar que ingrese al callback basico", function () {
control.myFunction = jasmine.createSpy("myFunction").
and.callFake(function(argument1, argument2, callback){
callback("respuesta1", "respuesta2");
})
control.init();
});
Sean felices! :) Y siéntanse libres de opinar ;)
Suscribirse a:
Entradas (Atom)
Palabras Clave
.NET
(93)
AJAX
(2)
ajaxcontroltoolkit
(2)
Algoritmos
(1)
android
(1)
Angular
(1)
Arrays
(1)
AS2 o ActionScript 2.0
(1)
AS3 o ActionScript 3.0
(64)
ASP
(7)
ASP.NET
(3)
Azure
(1)
Azure DevOps
(2)
Backup
(2)
Batch
(4)
blogger
(1)
Browser Support
(2)
C#
(53)
Charts
(1)
Chorme extensions
(1)
Chrome
(3)
cmd
(18)
código postal
(1)
Colombia tips
(1)
command
(1)
Conexion remota
(1)
Controles Web .NET
(24)
Cookies
(1)
cordova
(1)
CSS
(14)
CSV
(5)
Cufon
(1)
DateTime
(2)
deployment
(2)
Desarrollo movil
(2)
Desarrollo web
(5)
Diseño
(4)
DNN o DotNetNuke
(5)
docker
(1)
Encuestas
(1)
Entity Framework
(1)
Error
(1)
Eval
(2)
Excel
(4)
Expresiones regulares
(2)
Facebook
(14)
fechas
(1)
Fiddler
(1)
FileUpload
(1)
Filezilla
(1)
Firefox
(2)
Flash
(9)
Fonts
(3)
FQL
(1)
frameworks
(2)
Futuro de la web
(1)
git
(1)
Google Code
(13)
Google Maps
(4)
hackintosh
(3)
hazard 10.6.2
(3)
herramientas para developers
(1)
highchart
(1)
Hilos
(2)
Hosting Windows
(18)
HTML
(38)
HTML5
(6)
IDE
(1)
IE
(2)
IE9
(1)
IIS
(13)
imagenes
(3)
jasmine
(2)
java
(1)
jqgrid
(2)
Jquery y Javascript
(90)
jquery-ui
(5)
jQueryMobile
(1)
JSON
(1)
knockout
(4)
library
(1)
Link Interesantes
(2)
List
(1)
Macro
(2)
Matemáticas
(2)
Membership
(6)
Memoria
(1)
Mis Experiencias
(3)
momentjs
(1)
ms-dos
(1)
MSN
(1)
MVC
(1)
MVC4
(3)
MySQL
(2)
node.js
(4)
Notepad++
(3)
Notificaciones
(1)
ObjectDataSource
(2)
Online
(2)
Opinión
(4)
OSX
(3)
Parallels Plesk Panel
(1)
petapoco
(1)
PhantomJS
(1)
PHP
(4)
Porqué este blog
(1)
Powershell
(1)
Razor
(3)
Redes
(2)
REGEX
(4)
REST
(1)
SDK Android
(1)
Seguridad
(1)
SelectParameters
(1)
Selenium
(2)
sencha
(3)
sencha cmd
(2)
SEO
(1)
SMTP
(2)
Software útil
(8)
Solución
(1)
Soporte
(1)
SQL
(15)
SQL Server
(58)
SQLite
(2)
Store Procedures
(20)
String
(5)
Testing Code
(2)
texto
(2)
tips de datos
(1)
tips de desarrollo
(1)
TutoFaceAS3
(4)
TutoProAS3
(4)
Tutoriales
(7)
Tweenlite effects
(3)
Últimas noticias
(1)
unit testing
(1)
usb
(1)
VBA
(1)
Video
(1)
virus
(1)
Web API
(2)
Web Browsers
(1)
Web Forms
(7)
web.config
(1)
Webmaster
(8)
Webmatrix
(1)
webrole
(1)
webservices
(1)
webstorm
(1)
Win Forms
(5)
Windows
(21)
Windows 7
(1)
Windows 8
(1)
XML
(2)
Youtube API
(2)