public void Test_GetTargetFolders_Throws_EnvInfo_null()
        {
            var projectInfo = new TerminalAppProjectInfo(
            _Name,
            _ArtifactsRepositoryName,
            _ArtifactsRepositoryDirName,
            _ArtifactsAreNotEnvirionmentSpecific,
            _TerminalAppName,
            _TerminalAppDirName,
            _TerminalAppExeName);

              Assert.Throws<ArgumentNullException>(() => projectInfo.GetTargetFolders(null));
        }
        public void Test_GetTargetFolders_RunsProperly_WhenAllIsWell()
        {
            string machine = Environment.MachineName;
              const string baseDirPath = "c:\\basedir";
              string terminalmachine = "terminalmachine";

              var envInfo =
            new EnvironmentInfo(
              "name",
              "templates",
              machine,
              "failover",
              new[] { "webmachine" },
              terminalmachine,
              "databasemachine",
              baseDirPath,
              "webbasedir",
              "c:\\scheduler",
              "c:\\terminal",
              false,
              _EnvironmentUsers,
              _ProjectToFailoverClusterGroupMappings);

              var projectInfo = new TerminalAppProjectInfo(
            _Name,
            _ArtifactsRepositoryName,
            _ArtifactsRepositoryDirName,
            _ArtifactsAreNotEnvirionmentSpecific,
            _TerminalAppName,
            _TerminalAppDirName,
            _TerminalAppExeName);

              List<string> targetFolders =
              projectInfo.GetTargetFolders(envInfo)
                .ToList();

              Assert.IsNotNull(targetFolders);
              Assert.AreEqual(1, targetFolders.Count);
              Assert.AreEqual("\\\\" + terminalmachine + "\\c$\\terminal\\" + _TerminalAppDirName, targetFolders[0]);
        }
        public void Test_GetTargetFolders_RunsProperly_WhenAllIsWell()
        {
            var envInfo = DeploymentDataGenerator.GetEnvironmentInfo();

              var projectInfo =
            new TerminalAppProjectInfo(
              _Name,
              _ArtifactsRepositoryName,
              _AllowedEnvironmentNames,
              _ArtifactsRepositoryDirName,
              _ArtifactsAreNotEnvirionmentSpecific,
              _TerminalAppName,
              _TerminalAppDirName,
              _TerminalAppExeName);

              string terminalServerNetworkPath =
            envInfo.GetTerminalServerNetworkPath(
              string.Format("{0}{1}\\1.0.0.0", envInfo.TerminalAppsBaseDirPath, projectInfo.TerminalAppDirName));

              _directoryAdapterFake.Setup(
            da => da.GetDirectories(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<SearchOption>()))
            .Returns(new[] { terminalServerNetworkPath });

              // act
              List<string> targetFolders =
            projectInfo.GetTargetFolders(_objectFactoryFake.Object, envInfo)
              .ToList();

              Assert.IsNotNull(targetFolders);
              Assert.AreEqual(1, targetFolders.Count);
              Assert.AreEqual(terminalServerNetworkPath, targetFolders[0]);
        }