public void Test_Retrieve_SpecifyStatus()
        {
            // Copy the nuget.exe file into the current test directory so the retriever can skip downloading it
            new FileCopier(
                OriginalDirectory,
                CurrentDirectory
                ).Copy(
                "lib/nuget.exe"
                );

            new FileNodeManager().EnsureNodes();

            new MockNugetPackageCreator().Create("TestPackage", new Version("1.0.0"), "beta");
            new MockNugetPackageCreator().Create("TestPackage", new Version("1.0.1"), "alpha");

            var retriever = new InstallerNugetPackageRetriever()
            {
                NugetSourcePath = PathConverter.ToAbsolute("pkg"),
                NugetPath       = Path.Combine(OriginalDirectory, "lib/nuget.exe") // This shouldn't be required but leave it in just to ensure the test never tries to download the file from the web
            };

            retriever.Retrieve("TestPackage", new Version(0, 0, 0, 0), "beta");

            var expectedDir = PathConverter.ToAbsolute("lib/TestPackage.1.0.0-beta");

            Assert.IsTrue(Directory.Exists(expectedDir), "The expected lib directory wasn't found.");
        }
Esempio n. 2
0
 public Installer(string packageName, string feedPath, string destination)
 {
     Retriever   = new InstallerNugetPackageRetriever(destination);
     Unpacker    = new InstallUnpacker();
     FileFinder  = new FileFinder();
     Importer    = new Importer();
     EventRaiser = new ScriptEventRaiser();
     Nodes       = new FileNodeManager();
 }
Esempio n. 3
0
 public Installer()
 {
     Retriever   = new InstallerNugetPackageRetriever();
     Unpacker    = new InstallUnpacker();
     FileFinder  = new FileFinder();
     Importer    = new Importer();
     EventRaiser = new ScriptEventRaiser();
     Nodes       = new FileNodeManager();
 }
Esempio n. 4
0
 public Installer(string sourcePath, string destination)
 {
     // TODO: Check if sourcePath parameter is needed
     Retriever   = new InstallerNugetPackageRetriever(destination);
     Unpacker    = new InstallUnpacker();
     FileFinder  = new FileFinder();
     Importer    = new Importer();
     EventRaiser = new ScriptEventRaiser();
     Nodes       = new FileNodeManager();
 }
Esempio n. 5
0
        public static void Main(string[] args)
        {
            ParseArguments(args);

            if (IsHelp)
            {
                Help();
            }
            else
            {
                Console.WriteLine("");
                Console.WriteLine("Setting up csAnt...");
                Console.WriteLine("");


                Console.WriteLine("PackageName:" + PackageName);
                Console.WriteLine("");
                Console.WriteLine("Version:" + (Version == new Version(0, 0, 0, 0) ? "[Latest]" : Version.ToString()));
                Console.WriteLine("");
                Console.WriteLine("Destination path:");
                Console.WriteLine("  " + DestinationPath);
                Console.WriteLine("");

                var nugetRetriever = new InstallerNugetPackageRetriever(
                    NugetSourcePath,
                    DestinationPath
                    );

                if (!String.IsNullOrEmpty(NugetPath))
                {
                    nugetRetriever.NugetPath = NugetPath;
                }

                var unpacker = new InstallUnpacker();

                if (Update)
                {
                    var updater = new Updater(
                        nugetRetriever,
                        unpacker
                        );

                    updater.PackageName = PackageName;
                    updater.Version     = Version;
                    updater.Status      = Status;

                    updater.Clear       = Clear;
                    updater.Import      = Import;
                    updater.ImportPath  = ImportPath;
                    updater.Clone       = Clone;
                    updater.CloneSource = CloneSource;

                    updater.Update();
                }
                else
                {
                    var installer = new Installer(
                        nugetRetriever,
                        unpacker
                        );

                    installer.PackageName = PackageName;
                    installer.Version     = Version;
                    installer.Status      = Status;

                    installer.Clear       = Clear;
                    installer.Import      = Import;
                    installer.ImportPath  = ImportPath;
                    installer.Clone       = Clone;
                    installer.CloneSource = CloneSource;

                    installer.Install();
                }

                if (ShowIntro)
                {
                    OutputIntro();
                }
            }
        }