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')
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