private static IPropertyPagesCatalogProvider GetCatalogProviderAndData()
        {
            var betaPage = ProjectSystem.IRuleFactory.Create(
                pageTemplate: "CommandNameBasedDebugger",
                metadata: new Dictionary <string, object>
            {
                { "CommandName", "BetaCommand" }
            });
            var gammaPage = ProjectSystem.IRuleFactory.Create(
                pageTemplate: "CommandNamedBasedDebugger",
                metadata: new Dictionary <string, object>
            {
                { "CommandName", "GammaCommand" }
            });

            var catalog = IPropertyPagesCatalogFactory.Create(
                new Dictionary <string, IRule>
            {
                { "BetaPage", betaPage },
                { "GammaPage", gammaPage }
            });

            var catalogProvider = IPropertyPagesCatalogProviderFactory.Create(
                new Dictionary <string, IPropertyPagesCatalog> {
                { "Project", catalog }
            });

            return(catalogProvider);
        }
        private static IPropertyPagesCatalogProvider GetCatalogAndProviderDataWithMissingTemplateName()
        {
            var pageWithNoTemplate = ProjectSystem.IRuleFactory.Create(
                pageTemplate: null,
                metadata: new Dictionary <string, object>
            {
                { "CommandName", "BetaCommand" }
            });

            var catalog = IPropertyPagesCatalogFactory.Create(
                new Dictionary <string, IRule>
            {
                { "PageWithNoTemplate", pageWithNoTemplate },
            });

            var catalogProvider = IPropertyPagesCatalogProviderFactory.Create(
                new Dictionary <string, IPropertyPagesCatalog> {
                { "Project", catalog }
            });

            return(catalogProvider);
        }