OSDN Git Service

Add thd Spec for a listener method
authordhrname <dhrname@users.sourceforge.jp>
Wed, 18 Feb 2015 13:14:37 +0000 (22:14 +0900)
committerdhrname <dhrname@users.sourceforge.jp>
Wed, 18 Feb 2015 13:14:37 +0000 (22:14 +0900)
org/w3c/dom/smil.js
tool/Spec/spec/SvgDomSpec.js

index 8a6c5b8..fb81d57 100644 (file)
@@ -414,6 +414,15 @@ base("$frame").mix ( {
                this.begin\r
              : "indefinite";\r
     }\r
+  } ).mix( {\r
+    /*イベントリスナー用の関数*/\r
+    listener: function(evt) {\r
+      var offset = this.begin;\r
+      if (offset > 0) {\r
+      } else {\r
+        this.removeLine(this.$begin);\r
+      }\r
+    }\r
   } );\r
 } );\r
 /*$presentvalue オブジェクト\r
index e9f706c..1a6c79d 100644 (file)
@@ -2489,6 +2489,50 @@ describe("SMIL Animation Spec", function() {
       end.string = null;\r
       expect(end.up().call()).toBeNull();\r
     } );\r
+\r
+    describe("A listener method in $end object", function() {\r
+      var obj,\r
+          begin = base("$frame").$begin;\r
+       beforeEach( function() {\r
+        end.string = "";\r
+        /*配列は初期化しておく*/\r
+        end.timelines.length = 0;\r
+        obj = end.up();\r
+        obj.$begin = begin.up();\r
+        obj.$activate = begin.$activate.up();\r
+        obj.addLine(obj.$begin);\r
+      } );\r
+      /*境界条件を調べておく (limit value analysis)*/\r
+      it("should be this for the value  (limit value analysis)", function() {\r
+        expect(obj.timelines[0]).toBe(obj.$begin);\r
+        expect(obj.timelines[0]).not.toBe(obj);\r
+        obj.listener();\r
+        expect(obj.timelines[0]).not.toBe(obj.$begin);\r
+\r
+        obj.addLine(obj.$begin);\r
+        obj.listener({\r
+          timeStamp: 12\r
+        } );\r
+        expect(obj.timelines[0]).not.toBe(obj.$begin);\r
+\r
+        obj.addLine(obj.$begin);\r
+        obj.mix( {\r
+          string: "event+100ms"\r
+        } ).parse();\r
+        obj.listener({\r
+          timeStamp: 12\r
+        } );\r
+        expect(obj.timelines[0]).toBe(obj.$begin);\r
+      } );\r
+      /*同値分割をして、有効同値クラスを調べておく (Equivalence partitioning, the following is the valid partion)*/\r
+      it("should be this for the value (the valid partion)", function() {\r
+      } );\r
+      /*無効同値クラスを調べておく (Equivalence partitioning, the following is the invalid partion)*/\r
+      it("should be this for the value (the invalid partion)", function() {\r
+        obj.listener({});\r
+        expect(obj.timelines[0]).not.toBe(obj.$begin);\r
+      } );\r
+    } )\r
   } );\r
   describe("A $activate object", function() {\r
     var act = base("$frame").$begin.$activate;\r