public void ResolveSinglePlaceHolder_WholeValue() { var resolver = new PlaceholderResolver(GetConfig()); var thevalue = resolver.ResolveItem("ParameterizedValue", "FallBack Value"); Assert.AreEqual("NewValue", thevalue, "String should be NewValue"); }
public void TestBasicUrlComponents() { string basicUrl = "http://www.example.com/path"; Assert.AreEqual( "www.example.com/path", PlaceholderResolver.GetUrlComponent(basicUrl, "RMVSCM") ); Assert.AreEqual( "http", PlaceholderResolver.GetUrlComponent(basicUrl, "SCM") ); Assert.AreEqual( string.Empty, PlaceholderResolver.GetUrlComponent(basicUrl, "USERINFO") ); Assert.AreEqual( "www.example.com", PlaceholderResolver.GetUrlComponent(basicUrl, "HOST") ); Assert.AreEqual( "80", PlaceholderResolver.GetUrlComponent(basicUrl, "PORT") ); Assert.AreEqual( "/path", PlaceholderResolver.GetUrlComponent(basicUrl, "PATH") ); Assert.AreEqual( string.Empty, PlaceholderResolver.GetUrlComponent(basicUrl, "QUERY") ); }
public void PlaceholderTest() { IKeePassEntry entry = GetTestEntry(); Assert.AreEqual( $"this is a test string with scheme http and {entry.Title.ClearValue}", PlaceholderResolver.Resolve("this is a test string {C:comment here}with scheme {URL:SCM} and {TITLE}", entry) ); }
public void TestBadUrlComponents() { // Bad URL Assert.AreEqual( string.Empty, PlaceholderResolver.GetUrlComponent("foo//bar", "SCM") ); // Bad component Assert.IsNull(PlaceholderResolver.GetUrlComponent("http://example.com", "FOO")); }
public void BadPlaceholders() { IKeePassEntry entry = GetTestEntry(); Assert.AreEqual( "foo{username", PlaceholderResolver.Resolve("foo{username", entry) ); Assert.AreEqual( "foo{username{", PlaceholderResolver.Resolve("foo{username{", entry) ); Assert.AreEqual( "foo{BAR}", PlaceholderResolver.Resolve("foo{BAR}", entry) ); Assert.AreEqual( $"{{USERNAME{entry.UserName.ClearValue}}}", PlaceholderResolver.Resolve("{USERNAME{UsErnAME}}", entry) ); Assert.AreEqual( $"{entry.Password.ClearValue}}}{{{entry.Title.ClearValue}", PlaceholderResolver.Resolve("{pASsword}}{{TITLE}", entry) ); Assert.AreEqual( $"{{{{{{{{{entry.Password.ClearValue}{{}}{{}}}}}}}}}}}}}}}}{{{{}}{{", PlaceholderResolver.Resolve("{{{{{PASSWORD}{}{}}}}}}}}{{}{", entry) ); Assert.AreEqual( "{C}", PlaceholderResolver.Resolve("{C}", entry) ); Assert.AreEqual( string.Empty, PlaceholderResolver.Resolve("{C:}", entry) ); Assert.AreEqual( string.Empty, PlaceholderResolver.Resolve("{C::asdf:::}", entry) ); }
public void KeePassTestVectors() { string url = "http://*****:*****@keepass.info:81/path/example.php?q=e&s=t"; Assert.AreEqual( "user:[email protected]:81/path/example.php?q=e&s=t", PlaceholderResolver.GetUrlComponent(url, "RMVSCM") ); Assert.AreEqual( "http", PlaceholderResolver.GetUrlComponent(url, "SCM") ); Assert.AreEqual( "user:pw", PlaceholderResolver.GetUrlComponent(url, "USERINFO") ); Assert.AreEqual( "user", PlaceholderResolver.GetUrlComponent(url, "USERNAME") ); Assert.AreEqual( "pw", PlaceholderResolver.GetUrlComponent(url, "PASSWORD") ); Assert.AreEqual( "keepass.info", PlaceholderResolver.GetUrlComponent(url, "HOST") ); Assert.AreEqual( "81", PlaceholderResolver.GetUrlComponent(url, "PORT") ); Assert.AreEqual( "/path/example.php", PlaceholderResolver.GetUrlComponent(url, "PATH") ); Assert.AreEqual( "?q=e&s=t", PlaceholderResolver.GetUrlComponent(url, "QUERY") ); }
public void TestMoreComplexUrlComponents() { string complexUrl = "https://[email protected]:1337/path/path?query=flaf"; Assert.AreEqual( "[email protected]:1337/path/path?query=flaf", PlaceholderResolver.GetUrlComponent(complexUrl, "RMVSCM") ); Assert.AreEqual( "https", PlaceholderResolver.GetUrlComponent(complexUrl, "SCM") ); Assert.AreEqual( "sfuqua", PlaceholderResolver.GetUrlComponent(complexUrl, "USERINFO") ); Assert.AreEqual( "sfuqua", PlaceholderResolver.GetUrlComponent(complexUrl, "USERNAME") ); Assert.AreEqual( string.Empty, PlaceholderResolver.GetUrlComponent(complexUrl, "PASSWORD") ); Assert.AreEqual( "host.bar.baz", PlaceholderResolver.GetUrlComponent(complexUrl, "HOST") ); Assert.AreEqual( "1337", PlaceholderResolver.GetUrlComponent(complexUrl, "PORT") ); Assert.AreEqual( "/path/path", PlaceholderResolver.GetUrlComponent(complexUrl, "PATH") ); Assert.AreEqual( "?query=flaf", PlaceholderResolver.GetUrlComponent(complexUrl, "QUERY") ); }
public void TestComplexUrlComponents() { string complexUrl = "foo://*****:*****@host.bar.baz/path/path?query=flaf"; Assert.AreEqual( "sfuqua:[email protected]/path/path?query=flaf", PlaceholderResolver.GetUrlComponent(complexUrl, "RMVSCM") ); Assert.AreEqual( "foo", PlaceholderResolver.GetUrlComponent(complexUrl, "SCM") ); Assert.AreEqual( "sfuqua:blah", PlaceholderResolver.GetUrlComponent(complexUrl, "USERINFO") ); Assert.AreEqual( "sfuqua", PlaceholderResolver.GetUrlComponent(complexUrl, "USERNAME") ); Assert.AreEqual( "blah", PlaceholderResolver.GetUrlComponent(complexUrl, "PASSWORD") ); Assert.AreEqual( "host.bar.baz", PlaceholderResolver.GetUrlComponent(complexUrl, "HOST") ); Assert.AreEqual( "-1", PlaceholderResolver.GetUrlComponent(complexUrl, "PORT") ); Assert.AreEqual( "/path/path", PlaceholderResolver.GetUrlComponent(complexUrl, "PATH") ); Assert.AreEqual( "?query=flaf", PlaceholderResolver.GetUrlComponent(complexUrl, "QUERY") ); }
public void Test_ContainsPlaceHolder_PlaceholderInMiddle() { Assert.IsTrue(PlaceholderResolver.ContainsPlaceholder("some text" + PlaceholderResolver.START + "NAME" + PlaceholderResolver.END + "some more text")); }
public void Test_ContainsPlaceHolder_PlaceholderAtEnd() { Assert.IsTrue(PlaceholderResolver.ContainsPlaceholder("some text" + PlaceholderResolver.START + "NAME" + PlaceholderResolver.END)); }
public void Test_ContainsPlaceHolder_OnlyAPlaceholder() { Assert.IsTrue(PlaceholderResolver.ContainsPlaceholder(PlaceholderResolver.START + "NAME" + PlaceholderResolver.END)); }