Exemplo n.º 1
0
        public void MitmEndpointsGetPhrases()
        {
            FilterPolicy filter = new FilterPolicy()
            {
                BlockedPhrases = new List <PhraseFilter>()
                {
                    new PhraseFilter()
                    {
                        Type   = BlockPhraseType.REGEX,
                        Phrase = "la[tp]ex",
                        Scope  = BlockPhraseScope.ANY // just block it -  Very bad term!
                    },
                    new PhraseFilter()
                    {
                        Type   = BlockPhraseType.REGEX,
                        Phrase = "^(?=.*search)(?!.*google\\.com).*\\/search.*[\\?&]q\\=",
                        Scope  = BlockPhraseScope.URL,
                    }
                },
                AllowedDomains = new List <DomainPolicy>()
                {
                    new DomainPolicy()
                    {
                        DomainBlocked = false,
                        DomainFormat  = ".google.com",
                        Type          = AllowDomainType.SUBDOMAINS
                    }
                }
            };

            var expectedJson =
                "[{\"Scope\":2,\"Type\":3,\"Phrase\":\"la[tp]ex\"},{\"Scope\":0,\"Type\":3,\"Phrase\":\"^(?=.*search)(?!.*google\\\\.com).*\\\\/search.*[\\\\?&]q\\\\=\"}]";

            //Console.WriteLine(filter.getPhrasesJson()); (Copy value from quick watch)
            Assert.IsTrue(filter.getPhrasesJson() == expectedJson);
        }