From 9918693037dce8aa4bb6f08741b6812923486c18 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 19 Jun 2024 11:26:03 +0200 Subject: Merging upstream version 1.76.0+dfsg1. Signed-off-by: Daniel Baumann --- vendor/gix-credentials/tests/protocol/context.rs | 175 ----------------------- 1 file changed, 175 deletions(-) delete mode 100644 vendor/gix-credentials/tests/protocol/context.rs (limited to 'vendor/gix-credentials/tests/protocol/context.rs') diff --git a/vendor/gix-credentials/tests/protocol/context.rs b/vendor/gix-credentials/tests/protocol/context.rs deleted file mode 100644 index 3cfd850a3..000000000 --- a/vendor/gix-credentials/tests/protocol/context.rs +++ /dev/null @@ -1,175 +0,0 @@ -mod destructure_url_in_place { - use gix_credentials::protocol::Context; - - fn url_ctx(url: &str) -> Context { - Context { - url: Some(url.into()), - ..Default::default() - } - } - - fn assert_eq_parts( - url: &str, - proto: &str, - user: impl Into>, - host: &str, - path: impl Into>, - use_http_path: bool, - ) { - let mut ctx = url_ctx(url); - ctx.destructure_url_in_place(use_http_path).expect("splitting works"); - assert_eq!(ctx.protocol.expect("set proto"), proto); - match user.into() { - Some(expected) => assert_eq!(ctx.username.expect("set user"), expected), - None => assert!(ctx.username.is_none()), - } - assert_eq!(ctx.host.expect("set host"), host); - match path.into() { - Some(expected) => assert_eq!(ctx.path.expect("set path"), expected), - None => assert!(ctx.path.is_none()), - } - } - - #[test] - fn parts_are_verbatim_with_non_http_url() { - // path is always used for non-http - assert_eq_parts("ssh://user@host:21/path", "ssh", "user", "host:21", "path", false); - assert_eq_parts("ssh://host.org/path", "ssh", None, "host.org", "path", true); - } - #[test] - fn http_and_https_ignore_the_path_by_default() { - assert_eq_parts( - "http://user@example.com/path", - "http", - Some("user"), - "example.com", - None, - false, - ); - assert_eq_parts( - "https://github.com/byron/gitoxide", - "https", - None, - "github.com", - None, - false, - ); - assert_eq_parts( - "https://github.com/byron/gitoxide/", - "https", - None, - "github.com", - "byron/gitoxide", - true, - ); - } -} - -mod to_prompt { - use gix_credentials::protocol::Context; - - #[test] - fn no_scheme_means_no_url() { - assert_eq!(Context::default().to_prompt("Username"), "Username: "); - } - - #[test] - fn any_scheme_means_url_is_included() { - assert_eq!( - Context { - protocol: Some("https".into()), - host: Some("host".into()), - ..Default::default() - } - .to_prompt("Password"), - "Password for https://host: " - ); - } -} - -mod to_url { - use gix_credentials::protocol::Context; - - #[test] - fn no_protocol_is_nothing() { - assert_eq!(Context::default().to_url(), None); - } - #[test] - fn protocol_alone_is_enough() { - assert_eq!( - Context { - protocol: Some("https".into()), - ..Default::default() - } - .to_url() - .unwrap(), - "https://" - ); - } - #[test] - fn username_is_appended() { - assert_eq!( - Context { - protocol: Some("https".into()), - username: Some("user".into()), - ..Default::default() - } - .to_url() - .unwrap(), - "https://user@" - ); - } - #[test] - fn host_is_appended() { - assert_eq!( - Context { - protocol: Some("https".into()), - host: Some("host".into()), - ..Default::default() - } - .to_url() - .unwrap(), - "https://host" - ); - } - #[test] - fn path_is_appended_with_leading_slash_placed_as_needed() { - assert_eq!( - Context { - protocol: Some("file".into()), - path: Some("dir/git".into()), - ..Default::default() - } - .to_url() - .unwrap(), - "file:///dir/git" - ); - assert_eq!( - Context { - protocol: Some("file".into()), - path: Some("/dir/git".into()), - ..Default::default() - } - .to_url() - .unwrap(), - "file:///dir/git" - ); - } - - #[test] - fn all_fields_with_port_but_password_is_never_shown() { - assert_eq!( - Context { - protocol: Some("https".into()), - username: Some("user".into()), - password: Some("secret".into()), - host: Some("example.com:8080".into()), - path: Some("Byron/gitoxide".into()), - ..Default::default() - } - .to_url() - .unwrap(), - "https://user@example.com:8080/Byron/gitoxide" - ); - } -} -- cgit v1.2.3