Como faço para testar um serviço AngularJS com o Jasmine?

(Há uma questão relacionada aqui:Teste de jasmim não vê o módulo AngularJS)

Eu só quero testar um serviço sem bootstrapping Angular.

Eu olhei alguns exemplos e o tutorial, mas não vou a lugar nenhum.

Eu tenho apenas três arquivos:

myService.js: onde eu defino um serviço AngularJS

test_myService.js: onde defino um teste do Jasmine para o serviço.

specRunner.html: um arquivo HTML com a configuração normal do jasmine e onde eu importo os outros dois arquivos anteriores e o Jasmine, Angularjs e angular-mocks.js.

Este é o código do serviço (que funciona como esperado quando não estou testando):

var myModule = angular.module('myModule', []);

myModule.factory('myService', function(){

    var serviceImplementation   = {};
    serviceImplementation.one   = 1;
    serviceImplementation.two   = 2;
    serviceImplementation.three = 3;

    return serviceImplementation

});

Como estou tentando testar o serviço isoladamente, eu deveria ser capaz de acessá-lo e verificar seus métodos. Minha pergunta é: como posso injetar o serviço no meu teste sem inicializar o AngularJS?

Por exemplo, como posso testar o valor retornado para um método do serviço com o Jasmine assim:

describe('myService test', function(){
    describe('when I call myService.one', function(){
        it('returns 1', function(){
            myModule = angular.module('myModule');
                    //something is missing here..
            expect( myService.one ).toEqual(1);
        })

    })

});

questionAnswers(4)

yourAnswerToTheQuestion