void Verify_CanSelectAllDependencies_IsAuthorized(bool expectedCanSelect, bool isAuthorizedDeployFrom)
{
var mockSourceServer = new Mock<IEnvironmentModel>();
mockSourceServer.Setup(server => server.Connection.AppServerUri).Returns(new Uri("http://localhost"));
mockSourceServer.Setup(server => server.IsConnected).Returns(true);
mockSourceServer.Setup(server => server.IsAuthorizedDeployFrom).Returns(isAuthorizedDeployFrom);
mockSourceServer.Setup(server => server.IsAuthorizedDeployTo).Returns(true);
mockSourceServer.Setup(a => a.AuthorizationService).Returns(_authService.Object);
var mockDestinationServer = new Mock<IEnvironmentModel>();
mockDestinationServer.Setup(server => server.Connection.AppServerUri).Returns(new Uri("http://remote"));
mockDestinationServer.Setup(server => server.IsConnected).Returns(true);
mockDestinationServer.Setup(server => server.IsAuthorizedDeployFrom).Returns(true);
mockDestinationServer.Setup(server => server.IsAuthorizedDeployTo).Returns(true);
mockDestinationServer.Setup(a => a.AuthorizationService).Returns(_authService.Object);
Mock<IEnvironmentModel> destEnv;
Mock<IEnvironmentModel> destServer;
var deployViewModel = SetupDeployViewModel(out destEnv, out destServer);
deployViewModel.SelectedSourceServer = mockSourceServer.Object;
deployViewModel.SelectedDestinationServer = mockDestinationServer.Object;
Assert.AreEqual(expectedCanSelect, deployViewModel.CanSelectAllDependencies);
}