public void AddPackage()
        {
            BasicPackage package = new BasicPackage("mypackageNew1")
            {
                Description     = "mydescription",
                Url             = "http://myurl.test/",
                IsMaster        = true,
                SelectedVersion = new PackageVersion("2.4")
            };

            package.Versions.Add(new PackageVersion("1.0"));
            package.Versions.Add(new PackageVersion("2.3"));
            package.Versions.Add(new PackageVersion("2.4"));
            package.Dependencies.Add(new Dependency("mypackage2.myfeature1"));
            package.Dependencies.Add(new Dependency("mypackage2.myfeature2"));
            package.Dependencies.Add(new Dependency("mypackage3.myfeature1"));
            package.Features.Add(new Feature("myfeature1"));
            package.Features.Add(new Feature("myfeature2"));

            string             pkgdir = IO.Path.Combine("Testdata", "newpackagefiles");
            string             repdir = IO.Path.Combine("Testdata", "packagerepository");
            IPackageRepository rep    = new DirectoryPackageRepository("myrep", repdir);

            rep.AddPackage(package, pkgdir);
            rep.Refresh();

            Assert.IsTrue(IO.Directory.Exists(IO.Path.Combine(repdir, "mypackageNew1")), "Package dir does not exist.");
            Assert.IsTrue(IO.File.Exists(IO.Path.Combine(repdir, "mypackageNew1", "mytemplate.cshtml")), "Package files do not exist.");
            Assert.IsTrue(IO.File.Exists(IO.Path.Combine(repdir, "mypackageNew1", "package.wpdef")), "Package definition file does not exist.");
            Assert.IsNotNull(rep.GetPackage("mypackageNew1"), "New package not found in repository.");
        }
        public void Refresh()
        {
            BasicPackage       package = new BasicPackage("mypackageNew1");
            string             pkgdir  = IO.Path.Combine("Testdata", "newpackagefiles");
            string             repdir  = IO.Path.Combine("Testdata", "packagerepository");
            IPackageRepository rep     = new DirectoryPackageRepository("myrep", repdir);

            Assert.IsNull(rep.GetPackage("mypackageNew1"));
            rep.AddPackage(package, pkgdir);
            rep.Refresh();
            Assert.IsNotNull(rep.GetPackage("mypackageNew1"));
        }