Example #1
0
        public void Forceport()
        {
            var url = "http://gadgetopia.com:8080";

            // Forcing to 80 should remove it
            UrlStemmer.Settings.ForcePort = 80;
            Assert.AreEqual("http://gadgetopia.com/", UrlStemmer.Stem(url));

            // Forcing to anything else should change it
            UrlStemmer.Settings.ForcePort = 1234;
            Assert.AreEqual("http://gadgetopia.com:1234/", UrlStemmer.Stem(url));

            // Forcing to something when original has no port, should add it
            url = "http://gadgetopia.com";
            UrlStemmer.Settings.ForcePort = 6789;
            Assert.AreEqual("http://gadgetopia.com:6789/", UrlStemmer.Stem(url));

            // Not forcing, should leave it alone
            url = "http://gadgetopia.com:8080";
            UrlStemmer.Settings.ForcePort = 0;
            Assert.AreEqual("http://gadgetopia.com:8080/", UrlStemmer.Stem(url));

            // Setting to -1 should remove it
            url = "http://gadgetopia.com:8080";
            UrlStemmer.Settings.ForcePort = -1;
            Assert.AreEqual("http://gadgetopia.com/", UrlStemmer.Stem(url));
        }
Example #2
0
        public void ClearQuerystring()
        {
            var url = "http://gadgetopia.com?a=b";

            UrlStemmer.Settings.ClearQuerystring = true;
            Assert.AreEqual("http://gadgetopia.com/", UrlStemmer.Stem(url));
        }
Example #3
0
        public void PassThrough()
        {
            // There should be no change here
            var url = "http://gadgetopia.com/";

            Assert.AreEqual(url, UrlStemmer.Stem(url));
        }
Example #4
0
        public void RemoveBookmark()
        {
            UrlStemmer.Settings.RemoveBookmarks = true;

            var url = "http://gadgetopia.com/#bookmark";

            Assert.AreEqual("http://gadgetopia.com/", UrlStemmer.Stem(url));
        }
Example #5
0
        public void ArgumentBlacklist()
        {
            UrlStemmer.Settings.ArgumentBlacklist.Add("a");

            var url = "http://gadgetopia.com/?a=b&c=d";

            Assert.AreEqual("http://gadgetopia.com/?c=d", UrlStemmer.Stem(url));
        }
Example #6
0
        public void ReorderQuerystringArgs()
        {
            UrlStemmer.Settings.ReorderQuerystringArguments = true;

            var url = "http://www.gadgetopia.com/foo?c=d&a=b";

            Assert.AreEqual("http://www.gadgetopia.com/foo?a=b&c=d", UrlStemmer.Stem(url));
        }
Example #7
0
        public void ForceScheme()
        {
            var url = "http://gadgetopia.com/";

            UrlStemmer.Settings.ForceScheme = "https";
            UrlStemmer.Settings.ForcePort   = -1; // Removes the port, since it would still be "80"
            Assert.AreEqual("https://gadgetopia.com/", UrlStemmer.Stem(url));
        }
Example #8
0
        public void ForceCase()
        {
            UrlStemmer.Settings.ForceLowerCase = true;

            var url = "http://gadgetopia.com/FOO";

            Assert.AreEqual("http://gadgetopia.com/foo", UrlStemmer.Stem(url));
        }
Example #9
0
        public void ForceHost()
        {
            UrlStemmer.Settings.ForceHost = "gadgetopia.com";

            var url = "http://www.gadgetopia.com/";

            Assert.AreEqual("http://gadgetopia.com/", UrlStemmer.Stem(url));
        }
Example #10
0
        public void RemoveSubdomain()
        {
            UrlStemmer.Settings.RemoveSubdomain = true;

            var urlWithSubdomain    = "http://www.gadgetopia.com/";
            var urlWithoutSubdomain = "http://gadgetopia.com/";
            var localUrl            = "http://gadgetopia/";

            Assert.AreEqual("http://gadgetopia.com/", UrlStemmer.Stem(urlWithSubdomain));
            Assert.AreEqual("http://gadgetopia.com/", UrlStemmer.Stem(urlWithoutSubdomain));
            Assert.AreEqual("http://gadgetopia/", UrlStemmer.Stem(localUrl));
        }
Example #11
0
        public void TrailingSlashs()
        {
            var urlWithoutSlash = "http://www.gadgetopia.com/foo";
            var urlWithSlash    = string.Concat(urlWithoutSlash, "/");

            UrlStemmer.Settings.TrailingSlashes = TrailingSlashes.AlwaysStrip;
            Assert.AreEqual(urlWithoutSlash, UrlStemmer.Stem(urlWithSlash));

            UrlStemmer.Settings.TrailingSlashes = TrailingSlashes.AlwaysAdd;
            Assert.AreEqual(urlWithSlash, UrlStemmer.Stem(urlWithoutSlash));

            UrlStemmer.Settings.TrailingSlashes = TrailingSlashes.Ignore;
            Assert.AreEqual(urlWithSlash, UrlStemmer.Stem(urlWithSlash));
            Assert.AreEqual(urlWithoutSlash, UrlStemmer.Stem(urlWithoutSlash));
        }
Example #12
0
        public void DefaultScheme()
        {
            var url = "gadgetopia.com";

            Assert.AreEqual("http://gadgetopia.com/", UrlStemmer.Stem(url));
        }
Example #13
0
        public void DefaultHost()
        {
            var url = "/my/path";

            Assert.AreEqual("http://example.com/my/path", UrlStemmer.Stem(url));
        }