serviceSpec.js 5.31 KB
describe('Servicios de foca abm chofer', function() {

    var httpBackend;
    var servicio;

    beforeEach(function() {
        module('focaAbmChofer');
        inject(module(function($provide) {
            $provide.value('API_ENDPOINT', {
                URL: 'localhost'
            });
        }));
        inject(function($httpBackend, _focaAbmChoferService_) {
            servicio = _focaAbmChoferService_;
            httpBackend = $httpBackend;
        });
    });

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

        it('La función getChoferes lleva a la ruta correcta', function() {
            //arrange
            var returnFake = 'test';
            var result;
            httpBackend.expectGET('localhost/chofer').respond(returnFake);

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

            expect(result).toEqual(returnFake);
        });

        it('La función getChofer lleva a la ruta correcta', function() {
            //arrange
            var returnFake = 'test';
            var paramFake = 1;
            var result;
            httpBackend.expectGET('localhost/chofer/' + paramFake).respond(returnFake);

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

            expect(result).toEqual(returnFake);
        });

        it('La función getChoferPorTransportista lleva a la ruta correcta', function() {
            //arrange
            var returnFake = 'test';
            var paramFake = 1;
            var result;
            httpBackend.expectGET('localhost/chofer/transportista/' + paramFake)
                .respond(returnFake);

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

            expect(result).toEqual(returnFake);
        });

        it('La función getChoferPorDni lleva a la ruta correcta', function() {
            //arrange
            var returnFake = 'test';
            var paramFake = 1;
            var result;
            httpBackend.expectPOST('localhost/chofer/dni', { dni: paramFake })
                .respond(returnFake);

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

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

        it('La función guardarChofer llama a la ruta correcta', function() {
            //arrange
            var returnFake = 'test';
            var paramFake = 1;
            var result;
            httpBackend.expectPOST('localhost/chofer', { chofer: paramFake })
                .respond(returnFake);

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

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

        it('La función getTransportistas lleva a la ruta correcta', function() {
            //arrange
            var returnFake = 'test';
            var result;
            httpBackend.expectGET('localhost/transportista').respond(returnFake);

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

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

        it('La función getTransportistaPorId lleva a la ruta correcta', function() {
            //arrange
            var returnFake = 'test';
            var paramFake = 1;
            var result;
            httpBackend.expectGET('localhost/transportista/'+ paramFake).respond(returnFake);

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

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

        it('La función deleteChofer lleva a la ruta correcta', function() {
            //arrange
            var returnFake = 'test';
            var paramFake = 1;
            var result;
            httpBackend.expectDELETE('localhost/chofer/'+ paramFake).respond(returnFake);

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

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

        it('La función getTiposDocumento lleva a la ruta correcta', function() {
            //arrange
            var returnFake = 'test';
            var result;
            httpBackend.expectGET('localhost/tipo-documento').respond(returnFake);

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

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