Fixed TTS-1878 by 1 TCs for webkit based browser
authorCui, Jieqiong <jieqiongx.cui@intel.com>
Wed, 14 Aug 2013 09:24:25 +0000 (17:24 +0800)
committerwanmingx.lin <wanmingx.lin@intel.com>
Thu, 15 Aug 2013 07:10:45 +0000 (15:10 +0800)
Signed-off-by: Cui, Jieqiong <jieqiongx.cui@intel.com>
tct-xmlhttprequest-w3c-tests/xmlhttprequest/xhr2_XMLHttpRequest_send_Blob.html

index 316a5d1d3553694c47a9c4671996efb15e0684a2..9de49fc363e9d32a6817e30192f3c4e3c61f43bd 100644 (file)
@@ -1,32 +1,33 @@
 <!DOCTYPE html>
 <!--
-Copyright (c) 2012 Intel Corporation.
+Copyright (c) 2013 Intel Corporation.
 
-Redistribution and use in source and binary forms, with or without modification, 
+Redistribution and use in source and binary forms, with or without modification,
 are permitted provided that the following conditions are met:
 
-* Redistributions of works must retain the original copyright notice, this list 
+* Redistributions of works must retain the original copyright notice, this list
   of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the original copyright notice, 
-  this list of conditions and the following disclaimer in the documentation 
+* Redistributions in binary form must reproduce the original copyright notice,
+  this list of conditions and the following disclaimer in the documentation
   and/or other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors 
-  may be used to endorse or promote products derived from this work without 
+* Neither the name of Intel Corporation nor the names of its contributors
+  may be used to endorse or promote products derived from this work without
   specific prior written permission.
 
-THIS SOFTWARE IS PROVIDED BY INTEL CORPORATION "AS IS" 
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
-ARE DISCLAIMED. IN NO EVENT SHALL INTEL CORPORATION BE LIABLE FOR ANY DIRECT, 
-INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
-BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
-OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 
-EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.  
-  
+THIS SOFTWARE IS PROVIDED BY INTEL CORPORATION "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL INTEL CORPORATION BE LIABLE FOR ANY DIRECT,
+INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
 Authors:
         Liu, Shilong <shilongx.liu@intel.com>
+        Cui, Jieqiong <jieqiongx.cui@intel.com>
 
 -->
 
@@ -48,30 +49,40 @@ Authors:
         var client = new XMLHttpRequest();
         try {
             client.open("GET", "support/test.xml");
-            var bb = BlobBuilder();
+            var bb = getBlobBuilder();
+            if (bb == undefined) {
+                t.step(function () {
+                    assert_true(false, "BlobBuilder support");
+                });
+                t.done();
+            }
             var blob = bb.getBlob("text/xml");// the blob  
             client.send(blob);
             t.step(function () {
                 assert_true(true, "send blob data normally");
             });
             t.done();
-        } catch (ex) { 
+        } catch (ex) {
             t.step(function () {
                 assert_true(false, "throw an exception " + ex.name);
             });
             t.done();
         }
-        function BlobBuilder() {
-               if (window.WebKitBlobBuilder) {
-                   blobbuilder = new WebKitBlobBuilder();
-               } else if (window.MozBlobBuilder) {
-                   blobbuilder = new MozBlobBuilder();
-               } else {
-                   blobbuilder = new MSBlobBuilder();
-               }
-               return blobbuilder;
+        function getBlobBuilder() {
+            var blobbuilder;
+            if (window.BlobBuilder) {
+                blobbuilder = new BlobBuilder();
+            } else if (window.WebKitBlobBuilder) {
+                blobbuilder = new WebKitBlobBuilder();
+            } else if (window.MozBlobBuilder) {
+                blobbuilder = new MozBlobBuilder();
+            } else if (window.MSBlobBuilder){
+                blobbuilder = new MSBlobBuilder();
+            } else {
+                blobbuilder = undefined;
+            }
+                return blobbuilder;
         }
-        
     </script>
   </body>
 </html>