2013-02-18 8 views
5

Podczas używania Jasmine w projekcie Rails, aby zachować spójność zależności w moich specyfikacjach Jasmine, chcę pobrać jquery z cdn, jak to się dzieje na prawdziwej stronie. Staram się robić to tak jak w moim pliku Jasmine.yml:Jak dołączyć pliki javascript z CDN w Jasmine?

helpers: 
    - http://code.jquery.com/jquery-1.9.1.js 

Jednak to nie działa, jak podczas oglądania źródła localhost: 8888 uzyskać:

<script src="/__spec__/http://code.jquery.com/jquery-1.9.1.js" type="text/javascript"></script> 

Jak zrobić czy to poprawnie?

Odpowiedz

4

jako odpowiedzi https://github.com/pivotal/jasmine-gem/issues/135

napisałem pomocnika załadować javascripts zewnętrznych. To nie jest najlepsze rozwiązanie (wolałbym używać pliku konfiguracyjnego), ale działa dla mnie.

var head = document.getElementsByTagName('head')[0]; 
var jQueryScript = document.createElement('script'); 
jQueryScript.setAttribute('type', 'text/javascript'); 
jQueryScript.setAttribute('src', '//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js'); 
head.appendChild(jQueryScript); 
1

Odpowiedź @ emrox jest poprawna i działa na jaśmin 2.0.

Jednak w jaśminu 2.1.3 to nie. Wynika to z faktu, że po uruchomieniu testów (używam Chutzpah) "http:" nie jest wstępnie zawarty w referencji CDN. Jest w wersji 2.0 jaśminu.

Rozwiązaniem I wdrożone, który pracował udział następujący wiersz kodu:

jQueryScript.setAttribute ('src', 'http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js');

Mamy nadzieję, że pomoże to komuś, zanim zdecyduje się na obniżenie do wersji 2.0!

0

Wydanie 135 sprawiło, że można wyświetlić wpisy CDN w pliku jaśmin.yml. na przykład

src_files: 
    - http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js 
    - http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.2/jquery-ui.min.js 
    - lib/javascript/**/*.js 
Powiązane problemy