Пример #1
0
        public void Test_DeconstructFrom()
        {
            var item = FakeSoulseekUriBuilder.DeconstructFrom(FakeSoulseekUriBuilder.BuildFrom("user", CreateFile("afile.txt")));

            Assert.AreEqual(item.SoulseekUsername, "user");
            Assert.AreEqual(item.SoulseekFilename, "afile.txt");

            item = FakeSoulseekUriBuilder.DeconstructFrom(FakeSoulseekUriBuilder.BuildFrom("a user", CreateFile("afile.txt")));
            Assert.AreEqual(item.SoulseekUsername, "a user");
            Assert.AreEqual(item.SoulseekFilename, "afile.txt");

            item = FakeSoulseekUriBuilder.DeconstructFrom(FakeSoulseekUriBuilder.BuildFrom("a user", CreateFile("a file.txt")));
            Assert.AreEqual(item.SoulseekUsername, "a user");
            Assert.AreEqual(item.SoulseekFilename, "a file.txt");

            item = FakeSoulseekUriBuilder.DeconstructFrom(FakeSoulseekUriBuilder.BuildFrom("a user", CreateFile("c:\\a file.txt")));
            Assert.AreEqual(item.SoulseekUsername, "a user");
            Assert.AreEqual(item.SoulseekFilename, "c:\\a file.txt");

            item = FakeSoulseekUriBuilder.DeconstructFrom(FakeSoulseekUriBuilder.BuildFrom("joe@schmoe", CreateFile("/media/nas/movies/the matrix.avi")));
            Assert.AreEqual(item.SoulseekUsername, "joe@schmoe");
            Assert.AreEqual(item.SoulseekFilename, "/media/nas/movies/the matrix.avi");

            item = FakeSoulseekUriBuilder.DeconstructFrom(FakeSoulseekUriBuilder.BuildFrom("Some > user", CreateFile(@"D:\Data Drive\This has Spaces\And CAPS\downloads\file.exe")));
            Assert.AreEqual(item.SoulseekUsername, "Some > user");
            Assert.AreEqual(item.SoulseekFilename, @"D:\Data Drive\This has Spaces\And CAPS\downloads\file.exe");
        }
Пример #2
0
        public void Test_BuildFrom()
        {
            var item = FakeSoulseekUriBuilder.BuildFrom("user", CreateFile("afile.txt"));

            Assert.AreEqual(item, new Uri("slsk://user@soulseek/afile.txt"));

            item = FakeSoulseekUriBuilder.BuildFrom("a user", CreateFile("afile.txt"));
            Assert.AreEqual(item, new Uri($"slsk://{HttpUtility.UrlEncode("a user")}@soulseek/afile.txt"));

            item = FakeSoulseekUriBuilder.BuildFrom("a user", CreateFile("a file.txt"));
            Assert.AreEqual(item, new Uri($"slsk://{HttpUtility.UrlEncode("a user")}@soulseek/{HttpUtility.UrlEncode("a file.txt")}"));

            item = FakeSoulseekUriBuilder.BuildFrom("a user", CreateFile("c:\\a file.txt"));
            Assert.AreEqual(item, new Uri($"slsk://{HttpUtility.UrlEncode("a user")}@soulseek/{HttpUtility.UrlEncode("c:\\a file.txt")}"));

            item = FakeSoulseekUriBuilder.BuildFrom("joe@schmoe", CreateFile("/media/nas/who/cares.txt"));
            Assert.AreEqual(item, new Uri($"slsk://{HttpUtility.UrlEncode("joe@schmoe")}@soulseek/{HttpUtility.UrlEncode("/media/nas/who/cares.txt")}"));

            item = FakeSoulseekUriBuilder.BuildFrom("Some > user", CreateFile(@"D:\Data Drive\This has Spaces\And CAPS\downloads\file.exe"));
            Assert.AreEqual(item, new Uri($"slsk://{HttpUtility.UrlEncode("Some > user")}@soulseek/{HttpUtility.UrlEncode(@"D:\Data Drive\This has Spaces\And CAPS\downloads\file.exe")}"));
        }