From 7f1e2e48467f80cc083d24b44f088620e4e7bcb6 Mon Sep 17 00:00:00 2001 From: Igor Minar Date: Mon, 6 Jun 2011 08:50:35 -0700 Subject: new batch of docs --- .../dev_guide.services.testing_services.ngdoc | 70 ++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 docs/content/guide/dev_guide.services.testing_services.ngdoc (limited to 'docs/content/guide/dev_guide.services.testing_services.ngdoc') diff --git a/docs/content/guide/dev_guide.services.testing_services.ngdoc b/docs/content/guide/dev_guide.services.testing_services.ngdoc new file mode 100644 index 00000000..65e1ab6d --- /dev/null +++ b/docs/content/guide/dev_guide.services.testing_services.ngdoc @@ -0,0 +1,70 @@ +@workInProgress +@ngdoc overview +@name Developer Guide: Angular Services: Testing Angular Services +@description + + +Following is a unit test for the service in the example in {@link +dev_guide.services.registering_services Registering Angular Services}. The unit test example uses +Jasmine spy (mock) instead of a real browser alert. + + +
+var mock, notify;
+
+
+beforeEach(function() {
+mock = {alert: jasmine.createSpy()};
+notify = angular.service('notify')(mock);
+});
+
+
+it('should not alert first two notifications', function() {
+notify('one');
+notify('two');
+expect(mock.alert).not.toHaveBeenCalled();
+});
+
+
+it('should alert all after third notification', function() {
+notify('one');
+notify('two');
+notify('three');
+expect(mock.alert).toHaveBeenCalledWith("one\ntwo\nthree");
+});
+
+
+it('should clear messages after alert', function() {
+notify('one');
+notify('two');
+notify('third');
+notify('more');
+notify('two');
+notify('third');
+expect(mock.alert.callCount).toEqual(2);
+expect(mock.alert.mostRecentCall.args).toEqual(["more\ntwo\nthird"]);
+});
+
+ + + + +## Related Topics + + +* {@link dev_guide.services.understanding_services Understanding Angular Services} +* {@link dev_guide.services.creating_services Creating Angular Services} +* {@link dev_guide.services.registering_services Registering Angular Services} +* {@link dev_guide.services.managing_dependencies Managing Service Dependencies} +* {@link dev_guide.services.injecting_controllers Injecting Services Into Conrollers} + + +## Related API + + +* {@link api/angular.service Angular Service API} + + + + + -- cgit v1.2.3