2015-05-07 6 views
7

Szukałem wszędzie, próbowałem powtórzenia węzła, ale z kątomierzem, ale nie będzie działać z selenem.Jak zdobyć testy do nagrywania urządzeń z AngularJs jak vcr w Rails?

Próbowałem również vcr.js i sepii.

W jaki sposób mogę skonfigurować swoje testy, aby wykonywać początkowe połączenia, ale przechowywać je jako kasety takie jak magnetowid.

Pozdrawiam.

+0

Znalazłeś coś? Byłoby to pomocne dla tego, co próbuję zrobić. –

+0

Do tej pory używam kątnicy-makiety, ale wymaga to wklejenia odpowiedzi od inspektora. nie jest tak gładki, jakbym chciał. –

Odpowiedz

0

Przygotowywałem sepię do użycia z kątomierzem. To działa teraz, oto co zrobiłem:

Zakładam, że już skonfigurowałeś grunt-connect, aby uruchomić testy kątomierza.

Następnie trzeba poczekać na Zdarzenie słuchać od connect konfiguracji: grunt.event.once('connect.test.listening', function)

I to gdzie można skonfigurować sepia.

grunt.event.once('connect.test.listening', function(host, port) { 
    /** 
    * Configure sepia here 
    */ 

    var sepia = require('sepia').withSepiaServer(); 

    // Use your custom configuration 
    sepia.configure({ 
     verbose: true, 
     debug: true, 
     includeHeaderNames: false, 
     includeCookieNames: false 
    }); 

    // I have some path/body content to filter configured in the vrc configuration 
    var bodyFilters = grunt.config('vcr.filters.body') || []; 
    var pathFilters = grunt.config('vcr.filters.path') || []; 
    var regexPath = function(string) { 
     var escapedString = string.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, '\\$&'); 
     return new RegExp(escapedString); 
    }; 

    // Filter path 
    _.map(pathFilters, function(filter) { 
     sepia.filter({ 
     url: regexPath(filter.path), 
     urlFilter: function(url) { 
      return url.replace(filter.pattern, filter.replacement); 
     } 
     }); 
    }); 

    // Filter body content 
    _.map(bodyFilters, function(filter) { 
     sepia.filter({ 
     url: regexPath(filter.path), 
     bodyFilter: function(body) { 
      return body.replace(filter.pattern, filter.replacement); 
     } 
     }); 
    }); 
    }); 
}); 
Powiązane problemy