fn create_connector()

in http-common/src/connector.rs [829:904]


    fn create_connector() {
        for (input, expected) in &[
            (
                "http://127.0.0.1",
                super::Connector::Tcp {
                    host: "127.0.0.1".into(),
                    port: 80,
                },
            ),
            (
                "http://127.0.0.1:8888",
                super::Connector::Tcp {
                    host: "127.0.0.1".into(),
                    port: 8888,
                },
            ),
            (
                "http://[::1]",
                super::Connector::Tcp {
                    host: "[::1]".into(),
                    port: 80,
                },
            ),
            (
                "http://[::1]:8888",
                super::Connector::Tcp {
                    host: "[::1]".into(),
                    port: 8888,
                },
            ),
            (
                "http://localhost",
                super::Connector::Tcp {
                    host: "localhost".into(),
                    port: 80,
                },
            ),
            (
                "http://localhost:8888",
                super::Connector::Tcp {
                    host: "localhost".into(),
                    port: 8888,
                },
            ),
            (
                concat!("unix://", env!("SOCKET_DIR"), "/keyd.sock"),
                super::Connector::Unix {
                    socket_path: std::path::Path::new(concat!(env!("SOCKET_DIR"), "/keyd.sock"))
                        .into(),
                },
            ),
        ] {
            let actual: super::Connector = input.parse().unwrap();
            assert_eq!(*expected, actual);

            let serialized_input = {
                let input: url::Url = input.parse().unwrap();
                serde_json::to_string(&input).unwrap()
            };
            let serialized_connector = serde_json::to_string(&actual).unwrap();
            assert_eq!(serialized_input, serialized_connector);

            let deserialized_connector: super::Connector =
                serde_json::from_str(&serialized_connector).unwrap();
            assert_eq!(*expected, deserialized_connector);
        }

        #[allow(clippy::single_element_loop)]
        for input in &[
            // unsupported scheme
            "ftp://127.0.0.1",
        ] {
            let input = input.parse().unwrap();
            let _ = super::Connector::new(&input).unwrap_err();
        }
    }