Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(394)

Side by Side Diff: Source/core/dom/DOMImplementationTest.cpp

Issue 122743002: MIME type predicates and case-insensitive matching. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Disambiguate char/UChar comparison Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2013, Opera Software ASA. All rights reserved. 2 * Copyright (c) 2013, Opera Software ASA. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 23 matching lines...) Expand all
34 #include <gtest/gtest.h> 34 #include <gtest/gtest.h>
35 35
36 using namespace WebCore; 36 using namespace WebCore;
37 37
38 namespace { 38 namespace {
39 39
40 TEST(DOMImplementationTest, TextMIMEType) 40 TEST(DOMImplementationTest, TextMIMEType)
41 { 41 {
42 EXPECT_TRUE(DOMImplementation::isTextMIMEType("text/plain")); 42 EXPECT_TRUE(DOMImplementation::isTextMIMEType("text/plain"));
43 EXPECT_TRUE(DOMImplementation::isTextMIMEType("text/javascript")); 43 EXPECT_TRUE(DOMImplementation::isTextMIMEType("text/javascript"));
44 EXPECT_TRUE(DOMImplementation::isTextMIMEType("TEXT/JavaScript"));
44 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/json")); 45 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/json"));
46 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/jSON"));
47 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/json;foo=2"));
48 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/json "));
45 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/+json")); 49 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/+json"));
46 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/x-javascript-like +json;a=2;c=4")); 50 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/x-javascript-like +json;a=2;c=4"));
47 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/javascript")); 51 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/javascript"));
52 EXPECT_TRUE(DOMImplementation::isTextMIMEType("Application/Javascript"));
48 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/x-custom+json;b=3 ")); 53 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/x-custom+json;b=3 "));
49 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/x-custom+json")); 54 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/x-custom+json"));
50 // Outside of RFC-2045 grammar, but robustly accept/allow. 55 // Outside of RFC-2045 grammar, but robustly accept/allow.
51 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/x-what+json;")); 56 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/x-what+json;"));
52 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/json;")); 57 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/json;"));
53 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/json ")); 58 EXPECT_TRUE(DOMImplementation::isTextMIMEType("application/json "));
54 59
55 EXPECT_FALSE(DOMImplementation::isTextMIMEType("application/x-custom;a=a+jso n")); 60 EXPECT_FALSE(DOMImplementation::isTextMIMEType("application/x-custom;a=a+jso n"));
56 EXPECT_FALSE(DOMImplementation::isTextMIMEType("application/x-custom;a=a+jso n ;")); 61 EXPECT_FALSE(DOMImplementation::isTextMIMEType("application/x-custom;a=a+jso n ;"));
57 EXPECT_FALSE(DOMImplementation::isTextMIMEType("application/x-custom+jsonsou p")); 62 EXPECT_FALSE(DOMImplementation::isTextMIMEType("application/x-custom+jsonsou p"));
58 EXPECT_FALSE(DOMImplementation::isTextMIMEType("application/x-custom+jsonsou p ")); 63 EXPECT_FALSE(DOMImplementation::isTextMIMEType("application/x-custom+jsonsou p "));
59 EXPECT_FALSE(DOMImplementation::isTextMIMEType("text/html")); 64 EXPECT_FALSE(DOMImplementation::isTextMIMEType("text/html"));
60 EXPECT_FALSE(DOMImplementation::isTextMIMEType("text/xml")); 65 EXPECT_FALSE(DOMImplementation::isTextMIMEType("text/xml"));
61 EXPECT_FALSE(DOMImplementation::isTextMIMEType("text/xsl")); 66 EXPECT_FALSE(DOMImplementation::isTextMIMEType("text/xsl"));
62 } 67 }
63 68
69 TEST(DOMImplementationTest, TextXMLType)
70 {
71 EXPECT_TRUE(DOMImplementation::isXMLMIMEType("text/xml"));
72 EXPECT_TRUE(DOMImplementation::isXMLMIMEType("Text/xml"));
73 EXPECT_TRUE(DOMImplementation::isXMLMIMEType("tEXt/XML"));
74 EXPECT_TRUE(DOMImplementation::isXMLMIMEType("application/xml"));
75 EXPECT_TRUE(DOMImplementation::isXMLMIMEType("application/XML"));
76 EXPECT_TRUE(DOMImplementation::isXMLMIMEType("application/x-tra+xML"));
77 EXPECT_TRUE(DOMImplementation::isXMLMIMEType("application/xslt+xml"));
78 EXPECT_TRUE(DOMImplementation::isXMLMIMEType("application/rdf+Xml"));
79 EXPECT_TRUE(DOMImplementation::isXMLMIMEType("image/svg+xml"));
80 EXPECT_TRUE(DOMImplementation::isXMLMIMEType("text/xsl"));
81 EXPECT_TRUE(DOMImplementation::isXMLMIMEType("text/XSL"));
82
83 EXPECT_FALSE(DOMImplementation::isXMLMIMEType("application/x-custom;a=a+xml" ));
84 EXPECT_FALSE(DOMImplementation::isXMLMIMEType("application/x-custom;a=a+xml ;"));
85 EXPECT_FALSE(DOMImplementation::isXMLMIMEType("application/x-custom+xml2"));
86 EXPECT_FALSE(DOMImplementation::isXMLMIMEType("application/x-custom+xml2 ") );
87 EXPECT_FALSE(DOMImplementation::isXMLMIMEType("application/x-custom+exml"));
88 EXPECT_FALSE(DOMImplementation::isXMLMIMEType("text/html"));
89 EXPECT_FALSE(DOMImplementation::isXMLMIMEType("application/xml;"));
90 EXPECT_FALSE(DOMImplementation::isXMLMIMEType("application/xml "));
91 EXPECT_FALSE(DOMImplementation::isXMLMIMEType("application/x-what+xml;"));
92 EXPECT_FALSE(DOMImplementation::isXMLMIMEType("application/x-tra+xML;a=2"));
64 } 93 }
94
95 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698