[DataRow("https://locahost:1111/", "https://locahost:2222/", false)]    // different port
        public void IsSameServer(string uriString1, string uriString2, bool shouldMatch)
        {
            var uri1 = new Uri(uriString1);
            var uri2 = new Uri(uriString2);

            OpenInIdeStateValidator.IsCorrectServer(uri1, uri2)
            .Should().Be(shouldMatch);
        }
        public void CanHandleOpenInIDERequest_CorrectConnection_True()
        {
            var configProvider = SetupConfigurationProvider(CreateBindingConfiguration(RequestConfiguration));
            var logger         = new TestLogger();

            var testSubject = new OpenInIdeStateValidator(configProvider, logger);
            var result      = testSubject.CanHandleOpenInIDERequest(new Uri(RequestConfiguration.ServerUrl), RequestConfiguration.ProjectKey, RequestConfiguration.OrganizationKey);

            result.Should().BeTrue();
            logger.AssertNoOutputMessages();
        }
        private void VerifyValidationFailed(TestConfigurationSetup solutionTestConfigurationSetup, string failureReasonString)
        {
            var configProvider = solutionTestConfigurationSetup == null
                ? SetupConfigurationProvider(BindingConfiguration.Standalone)
                : SetupConfigurationProvider(CreateBindingConfiguration(solutionTestConfigurationSetup));

            var logger = new TestLogger();

            var testSubject = new OpenInIdeStateValidator(configProvider, logger);
            var result      = testSubject.CanHandleOpenInIDERequest(new Uri(RequestConfiguration.ServerUrl), RequestConfiguration.ProjectKey, RequestConfiguration.OrganizationKey);

            result.Should().BeFalse();
            logger.AssertPartialOutputStringExists(failureReasonString);
        }