| OLD | NEW | 
|---|
| (Empty) |  | 
|  | 1 /* | 
|  | 2  * This file is part of Adblock Plus <https://adblockplus.org/>, | 
|  | 3  * Copyright (C) 2006-present eyeo GmbH | 
|  | 4  * | 
|  | 5  * Adblock Plus is free software: you can redistribute it and/or modify | 
|  | 6  * it under the terms of the GNU General Public License version 3 as | 
|  | 7  * published by the Free Software Foundation. | 
|  | 8  * | 
|  | 9  * Adblock Plus is distributed in the hope that it will be useful, | 
|  | 10  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
|  | 11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
|  | 12  * GNU General Public License for more details. | 
|  | 13  * | 
|  | 14  * You should have received a copy of the GNU General Public License | 
|  | 15  * along with Adblock Plus.  If not, see <http://www.gnu.org/licenses/>. | 
|  | 16  */ | 
|  | 17 | 
|  | 18 #include <gtest/gtest.h> | 
|  | 19 #include "compiled/String.h" | 
|  | 20 #include "compiled/filter/Filter.h" | 
|  | 21 #include "compiled/filter/ElemHideBase.h" | 
|  | 22 | 
|  | 23 ABP_NS_USING | 
|  | 24 | 
|  | 25 TEST(TestFilter, testFromText) | 
|  | 26 { | 
|  | 27   OwnedString t(u"www.example.com#?#:-abp-properties(foo)"_str); | 
|  | 28   DependentString text(t); | 
|  | 29 | 
|  | 30   FilterPtr filter(Filter::FromText(text), false); | 
|  | 31   EXPECT_EQ(filter->GetText(), u"www.example.com#?#:-abp-properties(foo)"_str); | 
|  | 32 } | 
|  | 33 | 
|  | 34 TEST(TestFilter, testFilterConversionText) | 
|  | 35 { | 
|  | 36   { | 
|  | 37     OwnedString t(u"www.example.com##[-abp-properties='foo']"_str); | 
|  | 38     DependentString text(t); | 
|  | 39 | 
|  | 40     FilterPtr filter(Filter::FromText(text), false); | 
|  | 41     EXPECT_EQ(filter->GetText(), u"www.example.com#?#:-abp-properties(foo)"_str)
    ; | 
|  | 42   } | 
|  | 43   { | 
|  | 44     OwnedString t(u"example.com##foo[-abp-properties='something']bar"_str); | 
|  | 45     DependentString text(t); | 
|  | 46 | 
|  | 47     FilterPtr filter(Filter::FromText(text), false); | 
|  | 48     EXPECT_EQ(filter->GetText(), u"example.com#?#foo:-abp-properties(something)b
    ar"_str); | 
|  | 49   } | 
|  | 50   { | 
|  | 51     OwnedString t(u"foo.com##[-abp-properties='/margin: [3-4]{2}/']"_str); | 
|  | 52     DependentString text(t); | 
|  | 53 | 
|  | 54     FilterPtr filter(Filter::FromText(text), false); | 
|  | 55     EXPECT_EQ(filter->GetText(), u"foo.com#?#:-abp-properties(/margin: [3-4]{2}/
    )"_str); | 
|  | 56     ASSERT_TRUE(filter->As<ElemHideBase>()); | 
|  | 57     EXPECT_EQ(filter->As<ElemHideBase>()->GetSelector(), u":-abp-properties(/mar
    gin: [3-4]\\7B 2\\7D /)"_str); | 
|  | 58   } | 
|  | 59 } | 
|  | 60 | 
|  | 61 TEST(TestFilter, testFilterExceptionConversionText) | 
|  | 62 { | 
|  | 63   OwnedString t(u"www.example.com#@#[-abp-properties='foo']"_str); | 
|  | 64   DependentString text(t); | 
|  | 65 | 
|  | 66   FilterPtr filter(Filter::FromText(text), false); | 
|  | 67   EXPECT_EQ(filter->GetText(), u"www.example.com#@#:-abp-properties(foo)"_str); | 
|  | 68 } | 
|  | 69 | 
|  | 70 TEST(TestFilter, testFilterSyntaxErrorConversion) | 
|  | 71 { | 
|  | 72   { | 
|  | 73     OwnedString t(u"www.example.com#@#[-abp-properties='foo'bar'baz']"_str); | 
|  | 74     DependentString text(t); | 
|  | 75 | 
|  | 76     FilterPtr filter(Filter::FromText(text), false); | 
|  | 77     EXPECT_FALSE(filter); | 
|  | 78   } | 
|  | 79   { | 
|  | 80     OwnedString t(u"www.example.com#@#[-abp-properties='foo'bar']"_str); | 
|  | 81     DependentString text(t); | 
|  | 82 | 
|  | 83     FilterPtr filter(Filter::FromText(text), false); | 
|  | 84     EXPECT_FALSE(filter); | 
|  | 85   } | 
|  | 86 } | 
| OLD | NEW | 
|---|