public void load_a_package_info_from_a_manifest_file_when_given_the_folder()
        {
            // the reader is rooted at the folder location of the main app
            var package = reader.LoadFromFolder("../../../TestPackage1".ToFullPath());

            var assemblyLoader = new AssemblyLoader(new BottlingDiagnostics(new LoggingSession()));

            assemblyLoader.AssemblyFileLoader = file => Assembly.Load(Path.GetFileNameWithoutExtension(file));
            assemblyLoader.LoadAssembliesFromPackage(package);

            var loadedAssemblies = assemblyLoader.Assemblies.ToArray();

            loadedAssemblies.ShouldHaveCount(1);
            loadedAssemblies[0].GetName().Name.ShouldEqual("TestPackage1");
        }
Esempio n. 2
0
        public IEnumerable <IPackageInfo> Load(IPackageLog log)
        {
            var exploder = BottleExploder.GetPackageExploder(log);
            var reader   = new BottleManifestReader(new FileSystem(), GetContentFolderForPackage);

            return(FubuMvcPackageFacility.GetPackageDirectories().SelectMany(dir =>
            {
                return exploder.ExplodeDirectory(new ExplodeDirectory()
                {
                    DestinationDirectory = FubuMvcPackageFacility.GetExplodedPackagesDirectory(),
                    BottleDirectory = dir,
                    Log = log
                });
            }).Select(dir => reader.LoadFromFolder(dir)));
        }