serviceSpec.js 11.4 KB
describe('Servicios módulo crear nota de pedido', function() {

    beforeEach(function() {
        module('focaCrearNotaPedido');
    });

    describe('servicios crearNotaPedidoService', function() {

        var servicio, httpBackend;

        beforeEach(function() {

            inject(module(function($provide) {
                $provide.value('API_ENDPOINT', {
                    URL: 'localhost'
                });
            }));

            inject(function(_crearNotaPedidoService_, $httpBackend) {
                servicio = _crearNotaPedidoService_;
                httpBackend = $httpBackend;
            });
        });

        it('Existe el servicio crearNotaPedidoService', function() {
            //assert
            expect(typeof servicio).toEqual('object');
        });

        it('la función crearNotaPedido lleva la ruta correcta', function() {
            //arrange
            var responseFake = { data: 'test'};
            var result;
            var bodyFake = 1;
            httpBackend.expectPOST('localhost/nota-pedido', { notaPedido: bodyFake })
                .respond(responseFake);

            //act
            servicio.crearNotaPedido(bodyFake).then(function(data) {
                result = data.data;
            });
            httpBackend.flush();

            //assert
            expect(result).toEqual(responseFake);
        });

        it('la función obtenerNotaPedido lleva la ruta correcta', function() {
            //arrange
            var responseFake = { data: 'test'};
            var result;
            httpBackend.expectGET('localhost/nota-pedido').respond(responseFake);

            //act
            servicio.obtenerNotaPedido().then(function(data) {
                result = data.data;
            });
            httpBackend.flush();

            //assert
            expect(result).toEqual(responseFake);
        });

        it('la función setNotaPedido setea nota pedido', function() {
            //arrange
            var paramFake = 1;

            //act
            servicio.setNotaPedido(paramFake);

            //assert
            expect(servicio.notaPedido).toEqual(paramFake);
        });

        it('la función clearNotaPedido setea nota pedido undefined', function() {

            //act
            servicio.clearNotaPedido();

            //assert
            expect(servicio.notaPedido).toEqual(undefined);
        });

        it('la función clearNotaPedido setea nota pedido undefined', function() {
            //arrange
            var paramFake = 1;

            //act
            servicio.setNotaPedido(paramFake);
            var result = servicio.getNotaPedido();

            //assert
            expect(result).toEqual(paramFake);
        });

        it('la funcion getArticulosByIdNotaPedido llama a la ruta correcta', function() {

            //arrange
            var responseFake = { data: 'test'};
            var result;
            var paramFake = 1;
            httpBackend.expectGET('localhost/articulos/nota-pedido/' + paramFake)
                .respond(responseFake);

            //act
            servicio.getArticulosByIdNotaPedido(paramFake).then(function(data) {
                result = data.data;
            });
            httpBackend.flush();

            //assert
            expect(result).toEqual(responseFake);
        });

        it('la funcion crearArticulosParaNotaPedido llama a la ruta correcta', function() {

            //arrange
            var responseFake = { data: 'test'};
            var result;
            var paramFake = 1;
            httpBackend.expectPOST('localhost/articulos/nota-pedido',
                {articuloNotaPedido: paramFake}).respond(responseFake);

            //act
            servicio.crearArticulosParaNotaPedido(paramFake).then(function(data) {
                result = data.data;
            });
            httpBackend.flush();

            //assert
            expect(result).toEqual(responseFake);
        });

        it('la funcion getDomiciliosByIdNotaPedido llama a la ruta correcta', function() {

            //arrange
            var responseFake = { data: 'test'};
            var result;
            var paramFake = 1;
            httpBackend.expectGET('localhost/nota-pedido/' + paramFake + '/domicilios')
                .respond(responseFake);

            //act
            servicio.getDomiciliosByIdNotaPedido(paramFake).then(function(data) {
                result = data.data;
            });
            httpBackend.flush();

            //assert
            expect(result).toEqual(responseFake);
        });

        it('la funcion getDomiciliosByIdCliente llama a la ruta correcta', function() {

            //arrange
            var responseFake = { data: 'test'};
            var result;
            var paramFake = 1;
            httpBackend.expectGET('localhost/domicilio/tipo/2/cliente/' + paramFake )
                .respond(responseFake);

            //act
            servicio.getDomiciliosByIdCliente(paramFake).then(function(data) {
                result = data.data;
            });
            httpBackend.flush();

            //assert
            expect(result).toEqual(responseFake);
        });

        it('la funcion getPrecioCondicion llama a la ruta correcta', function() {

            //arrange
            var responseFake = { data: 'test'};
            var result;
            httpBackend.expectGET('localhost/precio-condicion').respond(responseFake);

            //act
            servicio.getPrecioCondicion().then(function(data) {
                result = data.data;
            });
            httpBackend.flush();

            //assert
            expect(result).toEqual(responseFake);
        });

        it('la funcion getPrecioCondicionById llama a la ruta correcta', function() {

            //arrange
            var responseFake = { data: 'test'};
            var result;
            var paramFake = 1;
            httpBackend.expectGET('localhost/precio-condicion/' + paramFake).respond(responseFake);

            //act
            servicio.getPrecioCondicionById(paramFake).then(function(data) {
                result = data.data;
            });
            httpBackend.flush();

            //assert
            expect(result).toEqual(responseFake);
        });

        it('la funcion getPlazoPagoByPrecioCondicion llama a la ruta correcta', function() {

            //arrange
            var responseFake = { data: 'test'};
            var result;
            var paramFake = 1;
            httpBackend.expectGET('localhost/plazo-pago/precio-condicion/' + paramFake)
                .respond(responseFake);

            //act
            servicio.getPlazoPagoByPrecioCondicion(paramFake).then(function(data) {
                result = data.data;
            });
            httpBackend.flush();

            //assert
            expect(result).toEqual(responseFake);
        });

        it('la funcion crearFlete llama a la ruta correcta', function() {

            //arrange
            var responseFake = { data: 'test'};
            var result;
            var paramFake = 1;
            httpBackend.expectPOST('localhost/flete',  { flete: paramFake })
                .respond(responseFake);

            //act
            servicio.crearFlete(paramFake).then(function(data) {
                result = data.data;
            });
            httpBackend.flush();

            //assert
            expect(result).toEqual(responseFake);
        });

        it('la funcion crearPlazosParaNotaPedido llama a la ruta correcta', function() {

            //arrange
            var responseFake = { data: 'test'};
            var result;
            var paramFake = 1;
            httpBackend.expectPOST('localhost/plazo-pago/nota-pedido',  { plazos: paramFake })
                .respond(responseFake);

            //act
            servicio.crearPlazosParaNotaPedido(paramFake).then(function(data) {
                result = data.data;
            });
            httpBackend.flush();

            //assert
            expect(result).toEqual(responseFake);
        });

        it('la funcion getCotizacionByIdMoneda llama a la ruta correcta', function() {

            //arrange
            var responseFake = { data: 'test'};
            var result;
            var paramFake = 1;
            httpBackend.expectGET('localhost/moneda/' + paramFake).respond(responseFake);

            //act
            servicio.getCotizacionByIdMoneda(paramFake).then(function(data) {
                result = data.data;
            });
            httpBackend.flush();

            //assert
            expect(result).toEqual(responseFake);
        });

        it('la funcion crearEstadoParaNotaPedido llama a la ruta correcta', function() {

            //arrange
            var responseFake = { data: 'test'};
            var result;
            var paramFake = 1;
            httpBackend.expectPOST('localhost/estado', { estado: paramFake })
                .respond(responseFake);

            //act
            servicio.crearEstadoParaNotaPedido(paramFake).then(function(data) {
                result = data.data;
            });
            httpBackend.flush();

            //assert
            expect(result).toEqual(responseFake);
        });

        it('la funcion getNumeroNotaPedido llama a la ruta correcta', function() {

            //arrange
            var responseFake = { data: 'test'};
            var result;
            httpBackend.expectGET('localhost/nota-pedido/numero-siguiente').respond(responseFake);

            //act
            servicio.getNumeroNotaPedido().then(function(data) {
                result = data.data;
            });
            httpBackend.flush();

            //assert
            expect(result).toEqual(responseFake);
        });

        it('la funcion crearPuntosDescarga llama a la ruta correcta', function() {

            //arrange
            var responseFake = { data: 'test'};
            var result;
            var paramFake = 1;
            httpBackend.expectPOST('localhost/puntos-descarga/nota-pedido',
                { puntosDescarga: paramFake }).respond(responseFake);

            //act
            servicio.crearPuntosDescarga(paramFake).then(function(data) {
                result = data.data;
            });
            httpBackend.flush();

            //assert
            expect(result).toEqual(responseFake);
        });

        it('la funcion getPuntosDescargaByClienDom llama a la ruta correcta', function() {

            //arrange
            var responseFake = { data: 'test'};
            var result;
            var paramFake = 1;
            var paramFake2 = 1;
            httpBackend.expectGET('localhost/punto-descarga/' + paramFake + '/' + paramFake2)
                .respond(responseFake);

            //act
            servicio.getPuntosDescargaByClienDom(paramFake, paramFake2).then(function(data) {
                result = data.data;
            });
            httpBackend.flush();

            //assert
            expect(result).toEqual(responseFake);
        });

        it('la funcion getVendedorById llama a la ruta correcta', function() {

            //arrange
            var responseFake = { data: 'test'};
            var result;
            var paramFake = 1;
            httpBackend.expectGET('localhost/vendedor-cobrador/' + paramFake)
                .respond(responseFake);

            //act
            servicio.getVendedorById(paramFake).then(function(data) {
                result = data.data;
            });
            httpBackend.flush();

            //assert
            expect(result).toEqual(responseFake);
        });

    });
});