コード例 #1
0
        public void TestCollectInstallWithExternalClientConfig()
        {
            var externalModuleText = @"
full-build:
    install:
        - external
client:
    install:
        - external.client
";
            var moduleText         = @"
full-build:
    deps:
        - ext
    install:
        - current
        - module ext/client
";

            using (var tempDir = new TempDirectory())
                using (new DirectoryJumper(tempDir.Path))
                {
                    CreateModule("ext", externalModuleText);
                    CreateModule("cur", moduleText);
                    var result = new InstallCollector(Path.Combine(tempDir.Path, "cur")).Get();
                    Assert.AreEqual(new[] { @"cur\current", @"ext\external.client" }, result.InstallFiles.ToArray());
                }
        }
コード例 #2
0
        public void TestWithExternals()
        {
            var externalModuleText = @"
full-build:
    install:
        - external
        - nuget pExternal
";
            var moduleText         = @"
full-build:
    deps:
        - ext
    install:
        - current
        - module ext
        - nuget pCurrent";

            using (var tempDir = new TempDirectory())
            {
                using (new DirectoryJumper(tempDir.Path))
                {
                    CreateModule("ext", externalModuleText);
                    CreateModule("cur", moduleText);
                    var installData   = new InstallCollector(Path.Combine(tempDir.Path, "cur")).Get();
                    var installFiles  = installData.InstallFiles.ToArray();
                    var nugetPackages = installData.NuGetPackages.ToArray();
                    Assert.AreEqual(new[] { @"cur\current", @"ext\external" }, installFiles);
                    Assert.AreEqual(new[] { "pCurrent", "pExternal" }, nugetPackages);
                }
            }
        }
コード例 #3
0
        public void TestLongNestingsWithConfigsNexting()
        {
            var qText = @"
full-build:
    install:
sdk:
    install:
        - q.sdk
        - module ext/client
        - nuget q.sdk
";
            var externalModuleText = @"
full-build:
    install:
        - external
        - module q/sdk
        - nuget external
client:
    install:
        - external.client
        - nuget external.client
";
            var moduleText         = @"
full-build > client:
    deps:
        - ext
    install:
        - current
        - module ext
        - nuget current
client:
    install:
        - current.client
        - module ext/client
        - nuget client
";

            using (var tempDir = new TempDirectory())
                using (new DirectoryJumper(tempDir.Path))
                {
                    CreateModule("q", qText);
                    CreateModule("ext", externalModuleText);
                    CreateModule("cur", moduleText);
                    var installData = new InstallCollector(Path.Combine(tempDir.Path, "cur")).Get();
                    Assert.AreEqual(
                        new[] { @"cur\current", @"cur\current.client", @"ext\external", @"ext\external.client", @"q\q.sdk" },
                        installData.InstallFiles.ToArray());
                    Assert.AreEqual(
                        new[] { "current", "client", "external", "external.client", "q.sdk" },
                        installData.NuGetPackages.ToArray());
                }
        }
コード例 #4
0
        public void TestLongNestingsWithConfigs()
        {
            var qText = @"
full-build:
    install:
sdk:
    install:
        - q.sdk
        - module ext/client
";
            var externalModuleText = @"
full-build:
    install:
        - external
        - module q/sdk
client:
    install:
        - external.client
";
            var moduleText         = @"
full-build:
    deps:
        - ext
    install:
        - current
        - module ext
";

            using (var tempDir = new TempDirectory())
                using (new DirectoryJumper(tempDir.Path))
                {
                    CreateModule("q", qText);
                    CreateModule("ext", externalModuleText);
                    CreateModule("cur", moduleText);
                    var result = new InstallCollector(Path.Combine(tempDir.Path, "cur")).Get();
                    Assert.AreEqual(new[] { @"cur\current", @"ext\external", @"q\q.sdk", @"ext\external.client" },
                                    result.BuildFiles.ToArray());
                }
        }