| OLD | NEW |
| (Empty) |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #include "wtf/text/TextEncoding.h" | |
| 6 | |
| 7 #include "testing/gtest/include/gtest/gtest.h" | |
| 8 | |
| 9 namespace WTF { | |
| 10 | |
| 11 namespace { | |
| 12 | |
| 13 TEST(TextEncoding, NonByteBased) { | |
| 14 EXPECT_FALSE(TextEncoding("utf-8").isNonByteBasedEncoding()); | |
| 15 EXPECT_TRUE(TextEncoding("utf-16").isNonByteBasedEncoding()); | |
| 16 EXPECT_TRUE(TextEncoding("utf-16le").isNonByteBasedEncoding()); | |
| 17 EXPECT_TRUE(TextEncoding("utf-16be").isNonByteBasedEncoding()); | |
| 18 EXPECT_TRUE(TextEncoding("utf-32").isNonByteBasedEncoding()); | |
| 19 EXPECT_TRUE(TextEncoding("utf-32le").isNonByteBasedEncoding()); | |
| 20 EXPECT_TRUE(TextEncoding("utf-32be").isNonByteBasedEncoding()); | |
| 21 EXPECT_FALSE(TextEncoding("windows-1252").isNonByteBasedEncoding()); | |
| 22 EXPECT_FALSE(TextEncoding("gbk").isNonByteBasedEncoding()); | |
| 23 EXPECT_FALSE(TextEncoding("utf-7").isNonByteBasedEncoding()); | |
| 24 } | |
| 25 | |
| 26 TEST(TextEncoding, ClosestByteBased) { | |
| 27 EXPECT_STREQ("UTF-8", | |
| 28 TextEncoding("utf-8").closestByteBasedEquivalent().name()); | |
| 29 EXPECT_STREQ("UTF-8", | |
| 30 TextEncoding("utf-16").closestByteBasedEquivalent().name()); | |
| 31 EXPECT_STREQ("UTF-8", | |
| 32 TextEncoding("utf-16le").closestByteBasedEquivalent().name()); | |
| 33 EXPECT_STREQ("UTF-8", | |
| 34 TextEncoding("utf-16be").closestByteBasedEquivalent().name()); | |
| 35 EXPECT_STREQ("UTF-8", | |
| 36 TextEncoding("utf-32").closestByteBasedEquivalent().name()); | |
| 37 EXPECT_STREQ("UTF-8", | |
| 38 TextEncoding("utf-32le").closestByteBasedEquivalent().name()); | |
| 39 EXPECT_STREQ("UTF-8", | |
| 40 TextEncoding("utf-32be").closestByteBasedEquivalent().name()); | |
| 41 EXPECT_STREQ( | |
| 42 "windows-1252", | |
| 43 TextEncoding("windows-1252").closestByteBasedEquivalent().name()); | |
| 44 EXPECT_STREQ("GBK", TextEncoding("gbk").closestByteBasedEquivalent().name()); | |
| 45 EXPECT_EQ(nullptr, TextEncoding("utf-7").closestByteBasedEquivalent().name()); | |
| 46 } | |
| 47 | |
| 48 TEST(TextEncoding, EncodingForFormSubmission) { | |
| 49 EXPECT_STREQ("UTF-8", | |
| 50 TextEncoding("utf-8").encodingForFormSubmission().name()); | |
| 51 EXPECT_STREQ("UTF-8", | |
| 52 TextEncoding("utf-16").encodingForFormSubmission().name()); | |
| 53 EXPECT_STREQ("UTF-8", | |
| 54 TextEncoding("utf-16le").encodingForFormSubmission().name()); | |
| 55 EXPECT_STREQ("UTF-8", | |
| 56 TextEncoding("utf-16be").encodingForFormSubmission().name()); | |
| 57 EXPECT_STREQ("UTF-8", | |
| 58 TextEncoding("utf-32").encodingForFormSubmission().name()); | |
| 59 EXPECT_STREQ("UTF-8", | |
| 60 TextEncoding("utf-32le").encodingForFormSubmission().name()); | |
| 61 EXPECT_STREQ("UTF-8", | |
| 62 TextEncoding("utf-32be").encodingForFormSubmission().name()); | |
| 63 EXPECT_STREQ("windows-1252", | |
| 64 TextEncoding("windows-1252").encodingForFormSubmission().name()); | |
| 65 EXPECT_STREQ("GBK", TextEncoding("gbk").encodingForFormSubmission().name()); | |
| 66 EXPECT_STREQ("UTF-8", | |
| 67 TextEncoding("utf-7").encodingForFormSubmission().name()); | |
| 68 } | |
| 69 } | |
| 70 } | |
| OLD | NEW |