Tôi có một dịch vụ đơn giản đặt cookie theo góc cạnh, nhưng không có cách nào rõ ràng để kiểm tra xem chúng đã được đặt trong thử nghiệm đầu cuối hay chưa.Làm thế nào để bạn kiểm tra các cookie AngularJS trong một bài kiểm tra đầu cuối?
Mã để kiểm tra cũng đơn giản như
var splashApp = angular.module('splashApp', ['ngCookies']);
splashApp.controller('FooterController', function ($location, $cookies) {
$cookies.some_cookie = $location.absUrl();
});
Nhưng tôi không thể tìm thấy bất kỳ tài liệu về cách để kiểm tra. Đây là những gì tôi đã tìm thấy:
- How to access cookies in AngularJS?
- http://docs.angularjs.org/api/ngCookies $ cookie
- http://docs.angularjs.org/api/ngCookies $ cookieStore
Tôi cũng đã thử
angular.scenario.dsl('cookies', function() {
var chain = {};
chain.get = function(name) {
return this.addFutureAction('get cookies', function($window, $document, done) {
var injector = $window.angular.element($window.document.body).inheritedData('$injector');
var cookies = injector.get('$cookies');
done(null, cookies);
});
};
return function() {
return chain;
}
});
Nhưng điều này chỉ trả về.. cookie cho trình duyệt chính, không phải trang tôi muốn kiểm tra.
Bất kỳ ví dụ nào về cách thực hiện việc này?
Tôi cho rằng bạn đang làm điều gì đó với cookie, có thể thay đổi một lớp CSS, trong chương trình của bạn - bất kỳ thứ gì liên kết hiệu quả giá trị của cookie với một thứ gì đó bên ngoài. Hãy thử kiểm tra thay vào đó? – jclancy
Tôi không thực sự. Các cookie được lưu trữ tại một số thời điểm trong phiên, sau đó chúng được gửi (tự động) đến máy chủ cùng với một yêu cầu POST. Không có thay đổi giao diện người dùng nào vì cookie, thật không may. –
Bạn đã đọc cái này chưa? http://pastie.org/4758669 – jclancy