Пример #1
0
        public void GetOwnerPackageReturnsPackageForValidFunctionDefinition()
        {
            //Assert.Inconclusive("Porting : Formula");

            var loader = new PackageLoader(PackagesDirectory);

            loader.LoadPackagesIntoDynamo(new LoadPackageParams
            {
                Preferences       = ViewModel.Model.PreferenceSettings,
                LibraryServices   = ViewModel.Model.LibraryServices,
                Loader            = ViewModel.Model.Loader,
                Context           = ViewModel.Model.Context,
                IsTestMode        = true,
                CustomNodeManager = ViewModel.Model.CustomNodeManager
            });

            var pkg = loader.LocalPackages.FirstOrDefault(x => x.Name == "Custom Rounding");

            Assert.AreEqual(3, pkg.LoadedCustomNodes.Count);

            foreach (var nodeInfo in pkg.LoadedCustomNodes)
            {
                CustomNodeDefinition funcDef;
                Assert.IsTrue(ViewModel.Model.CustomNodeManager.TryGetFunctionDefinition(nodeInfo.FunctionId, true, out funcDef));
                Assert.IsNotNull(funcDef);

                var foundPkg = loader.GetOwnerPackage(nodeInfo);

                Assert.IsNotNull(foundPkg);
                Assert.AreEqual(pkg.Name, foundPkg.Name);
                Assert.IsTrue(pkg.Name == foundPkg.Name);
            }
        }
Пример #2
0
        public void LoadPackagesReturnsNoPackagesForInvalidDirectory()
        {
            var pkgDir = Path.Combine(PackagesDirectory, "No directory");
            var loader = new PackageLoader(ViewModel.Model.Loader, ViewModel.Model.Logger, pkgDir);

            loader.LoadPackagesIntoDynamo(ViewModel.Model.PreferenceSettings, ViewModel.Model.EngineController.LibraryServices);
            Assert.AreEqual(0, loader.LocalPackages.Count);
        }
Пример #3
0
        public void LoadPackagesReturnsAllValidPackagesInValidDirectory()
        {
            var loader = new PackageLoader(ViewModel.Model.Loader, ViewModel.Model.Logger);

            loader.LoadPackagesIntoDynamo(ViewModel.Model.PreferenceSettings, ViewModel.Model.EngineController.LibraryServices);

            Assert.AreEqual(1, loader.LocalPackages.Count);
        }
Пример #4
0
        public void LoadPackagesReturnsAllValidPackagesInValidDirectory()
        {
            var loader = new PackageLoader();

            loader.LoadPackagesIntoDynamo(
                ViewModel.Model.PreferenceSettings,
                ViewModel.Model.LibraryServices,
                ViewModel.Model.Loader,
                ViewModel.Model.Context,
                true,
                ViewModel.Model.CustomNodeManager);

            Assert.AreEqual(1, loader.LocalPackages.Count);
        }
Пример #5
0
        public void LoadPackagesReturnsNoPackagesForInvalidDirectory()
        {
            var pkgDir = Path.Combine(PackagesDirectory, "No directory");
            var loader = new PackageLoader(pkgDir);

            loader.LoadPackagesIntoDynamo(new LoadPackageParams
            {
                Preferences       = ViewModel.Model.PreferenceSettings,
                LibraryServices   = ViewModel.Model.LibraryServices,
                Loader            = ViewModel.Model.Loader,
                Context           = ViewModel.Model.Context,
                IsTestMode        = true,
                CustomNodeManager = ViewModel.Model.CustomNodeManager
            });

            Assert.AreEqual(0, loader.LocalPackages.Count);
        }
Пример #6
0
        public void LoadPackagesReturnsAllValidPackagesInValidDirectory()
        {
            var loader = new PackageLoader(PackagesDirectory);

            loader.LoadPackagesIntoDynamo(new LoadPackageParams
            {
                Preferences       = ViewModel.Model.PreferenceSettings,
                LibraryServices   = ViewModel.Model.LibraryServices,
                Loader            = ViewModel.Model.Loader,
                Context           = ViewModel.Model.Context,
                IsTestMode        = true,
                CustomNodeManager = ViewModel.Model.CustomNodeManager
            });

            // There are four packages in "GitHub\Dynamo\test\pkgs"
            Assert.AreEqual(4, loader.LocalPackages.Count);
        }
Пример #7
0
        public void GetOwnerPackageReturnsPackageForValidFunctionDefinition()
        {
            //Assert.Inconclusive("Porting : Formula");

            var loader = new PackageLoader(ViewModel.Model.Loader, ViewModel.Model.Logger, PackagesDirectory);

            loader.LoadPackagesIntoDynamo(ViewModel.Model.PreferenceSettings, ViewModel.Model.EngineController.LibraryServices);
            var pkg = loader.LocalPackages.FirstOrDefault(x => x.Name == "Custom Rounding");

            Assert.AreEqual(3, pkg.LoadedCustomNodes.Count);

            foreach (var nodeInfo in pkg.LoadedCustomNodes)
            {
                var funcDef = ViewModel.Model.CustomNodeManager.GetFunctionDefinition(nodeInfo.Guid);
                Assert.IsNotNull(funcDef);

                var foundPkg = loader.GetOwnerPackage(funcDef);

                Assert.IsNotNull(foundPkg);
                Assert.AreEqual(pkg.Name, foundPkg.Name);
                Assert.IsTrue(pkg.Name == foundPkg.Name);
            }
        }