public void Adds_app()
        {
            TurboInitializer.AddApp <TestApp>();

            AppInfo app;

            Assert.IsTrue(TurboSync.TryGetApp <TestApp>(out app));
            Assert.IsNotNull(app.App);
            Assert.IsNotNull(app.App.Meta);
            Assert.AreEqual(typeof(TestApp), app.App.Type);
        }
Пример #2
0
        public static void AddPage <TApp, TPage>()
        {
            AppInfo appInfo;

            if (!TurboSync.TryGetApp(typeof(TApp), out appInfo))
            {
                appInfo = AddAppInternal(typeof(TApp));
            }

            AddPageInternal(appInfo, typeof(TPage));
        }
Пример #3
0
        protected PageInfo RegisterPage <TPage>(AppInfo appInfo)
        {
            PageInfo pageInfo;

            if (!TurboSync.TryGetPage(typeof(TPage), out pageInfo))
            {
                var page = _loader.GetPageMeta <TPage>();
                pageInfo = TurboSync.AddPage(appInfo.App, page);
            }

            return(pageInfo);
        }
Пример #4
0
        protected AppInfo RegisterApp <TApp>()
        {
            AppInfo appInfo;

            if (!TurboSync.TryGetApp(typeof(TApp), out appInfo))
            {
                var appMeta = _loader.GetAppMeta <TApp>();
                appInfo = TurboSync.AddApp(appMeta);
            }

            return(appInfo);
        }
        private static void AssertPage <T>(AppInfo testApp)
        {
            PageInfo pageInfo;

            Assert.IsTrue(TurboSync.TryGetPage <T>(out pageInfo));

            Assert.AreSame(pageInfo.App, testApp.App);
            Assert.IsTrue(testApp.Pages.Contains(pageInfo.Page));

            Assert.IsTrue(pageInfo.Analysis.IsDone,
                          $"Analysis is not done for {pageInfo.Page.Type} at {testApp.App.Type}");
        }
Пример #6
0
        private static AppInfo AddAppInternal(Type appType)
        {
            var objectFactory = GlobalConfiguration.ObjectFactory;
            var loader        = objectFactory.GetInstance <IMetadataLoader>();

            var meta = loader.GetAppMeta(appType);

            if (meta.Meta == null)
            {
                return(null);
            }

            return(TurboSync.AddApp(meta));
        }
        public void Adds_page()
        {
            TurboInitializer.AddApp <TestApp>();
            TurboInitializer.AddPage <TestApp, NormalPage>();

            PageInfo page;

            Assert.IsTrue(TurboSync.TryGetPage(typeof(NormalPage), out page));

            Assert.IsNotNull(page.App);
            Assert.IsNotNull(page.Page);
            Assert.IsNotNull(page.Analysis);
            Assert.IsNotNull(page.Finder);

            Assert.IsTrue(page.Analysis.IsDone);
        }
Пример #8
0
        private static void AddPageInternal(AppInfo appInfo, Type pageType)
        {
            IObjectFactory objectFactory = GlobalConfiguration.ObjectFactory;
            var            loader        = objectFactory.GetInstance <IMetadataLoader>();

            var page = loader.GetPageMeta(pageType);

            if (page.Meta == null)
            {
                return;
            }

            TurboSync.AddPage(appInfo.App, page);

            var pageAnalyzer = objectFactory.GetInstance <IPageAnalyzer>();

            pageAnalyzer.Analyze(pageType);
        }
 private static bool GetApp <T>(out AppInfo app)
 {
     return(TurboSync.TryGetApp <T>(out app));
 }