From 1bdcf72e456c74256b14f98b26e969b9de637614 Mon Sep 17 00:00:00 2001 From: Misko Hevery Date: Thu, 13 May 2010 16:40:41 -0700 Subject: put formatters back. --- test/widgetsSpec.js | 64 ++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 46 insertions(+), 18 deletions(-) (limited to 'test/widgetsSpec.js') diff --git a/test/widgetsSpec.js b/test/widgetsSpec.js index ecea6223..17120682 100644 --- a/test/widgetsSpec.js +++ b/test/widgetsSpec.js @@ -56,14 +56,6 @@ describe("widget", function(){ expect(scope.$get('list')).toEqual(['1', '2', '3']); }); - it("should format booleans", function(){ - compile('', function(){ - scope.name = false; - }); - expect(scope.name).toEqual(false); - expect(scope.$element[0].checked).toEqual(false); - }); - it("should come up blank if null", function(){ compile('', function(){ scope.age = null; @@ -123,6 +115,52 @@ describe("widget", function(){ }); + describe("checkbox", function(){ + it("should format booleans", function(){ + compile('', function(){ + scope.name = false; + }); + expect(scope.name).toEqual(false); + expect(scope.$element[0].checked).toEqual(false); + }); + + it('should support type="checkbox"', function(){ + compile(''); + expect(scope.checkbox).toEqual(true); + click(element); + expect(scope.checkbox).toEqual(false); + expect(scope.action).toEqual(true); + click(element); + expect(scope.checkbox).toEqual(true); + }); + + it("should use ng-format", function(){ + angularFormatter('testFormat', { + parse: function(value){ + return value ? "Worked" : "Failed"; + }, + + format: function(value) { + if (value == undefined) return value; + return value == "Worked"; + } + + }); + compile(''); + expect(scope.state).toEqual("Worked"); + expect(scope.$element[0].checked).toEqual(true); + + click(scope.$element); + expect(scope.state).toEqual("Failed"); + expect(scope.$element[0].checked).toEqual(false); + + scope.state = "Worked"; + scope.$eval(); + expect(scope.state).toEqual("Worked"); + expect(scope.$element[0].checked).toEqual(true); + }); + }); + describe("ng-validate", function(){ it("should process ng-validate", function(){ compile(''); @@ -212,16 +250,6 @@ describe("widget", function(){ expect(scope.$get('clicked')).toEqual(true); }); - it('should support type="checkbox"', function(){ - compile(''); - expect(scope.checkbox).toEqual(true); - click(element); - expect(scope.checkbox).toEqual(false); - expect(scope.action).toEqual(true); - click(element); - expect(scope.checkbox).toEqual(true); - }); - describe('radio', function(){ it('should support type="radio"', function(){ -- cgit v1.2.3