Exemplo n.º 1
0
        public void Clone_multiple_Model_Views(string platformName)
        {
            var platform       = GetPlatform(platformName);
            var cloneViewId    = $"{nameof(Clone_multiple_Model_Views)}{platform}_";
            var cloneViewTypes = Enum.GetValues(typeof(CloneViewType)).Cast <CloneViewType>();
            var application    = DefaultCloneModelViewModule(info => {
                foreach (var cloneViewType in cloneViewTypes)
                {
                    var cloneModelViewAttribute =
                        new CloneModelViewAttribute(cloneViewType, $"{cloneViewId}{cloneViewType}");
                    info.FindTypeInfo(typeof(CMV)).AddAttribute(cloneModelViewAttribute);
                }
            }, platform).Application;

            foreach (var cloneViewType in cloneViewTypes)
            {
                var viewId    = $"{cloneViewId}{cloneViewType}";
                var modelView = application.Model.Views[viewId];
                modelView.ShouldNotBeNull();
                modelView.GetType().Name.ShouldBe($"Model{cloneViewType.ToString().Replace("Lookup", "")}");
                modelView.Id.ShouldBe(viewId);
            }

            application.Dispose();
        }
Exemplo n.º 2
0
        internal void Clone_Model_View_and_make_it_default(CloneViewType cloneViewType, Platform platform)
        {
            var cloneViewId = $"test_{cloneViewType}";

            var application = DefaultCloneModelViewModule(info => {
                var cloneModelViewAttribute = new CloneModelViewAttribute(cloneViewType, cloneViewId, true);
                info.FindTypeInfo(typeof(CMV)).AddAttribute(cloneModelViewAttribute);
            }, platform).Application;
            var modelView = application.Model.Views[cloneViewId].AsObjectView;

            ((IModelView)modelView.ModelClass.GetPropertyValue($"Default{cloneViewType}")).Id.ShouldBe(cloneViewId);
        }
Exemplo n.º 3
0
        internal void Clone_Model_View(CloneViewType cloneViewType, Platform platform)
        {
            var cloneViewId = $"test_{cloneViewType}";

            var application = DefaultCloneModelViewModule(info => {
                var cloneModelViewAttribute = new CloneModelViewAttribute(cloneViewType, cloneViewId);
                info.FindTypeInfo(typeof(CMV)).AddAttribute(cloneModelViewAttribute);
            }, platform).Application;
            var modelView = application.Model.Views[cloneViewId];

            modelView.ShouldNotBeNull();
            modelView.GetType().Name.ShouldBe($"Model{cloneViewType.ToString().Replace("Lookup", "")}");
            modelView.Id.ShouldBe(cloneViewId);
        }
Exemplo n.º 4
0
        public void Clone_Model_View_and_make_it_default(CloneViewType cloneViewType, string platformName)
        {
            var platform    = GetPlatform(platformName);
            var cloneViewId = $"{nameof(Clone_Model_View_and_make_it_default)}_{cloneViewType}{platform}";

            var application = DefaultCloneModelViewModule(info => {
                var cloneModelViewAttribute = new CloneModelViewAttribute(cloneViewType, cloneViewId, true);
                info.FindTypeInfo(typeof(CMV)).AddAttribute(cloneModelViewAttribute);
            }, platform).Application;
            var modelView = application.Model.Views[cloneViewId].AsObjectView;

            ((IModelView)modelView.ModelClass.GetPropertyValue($"Default{cloneViewType}")).Id
            .ShouldBe(cloneViewId);
            application.Dispose();
        }
        public void Clone_Model_View(CloneViewType cloneViewType)
        {
            var cloneViewId = $"{nameof(Clone_Model_View)}_{cloneViewType}";

            var application = DefaultCloneModelViewModule(info => {
                var cloneModelViewAttribute = new CloneModelViewAttribute(cloneViewType, cloneViewId);
                info.FindTypeInfo(typeof(CMV)).AddAttribute(cloneModelViewAttribute);
            }).Application;

            ((bool)application.GetPropertyValue("EnableModelCache")).ShouldBe(false);

            var modelView = application.Model.Views[cloneViewId];

            modelView.ShouldNotBeNull();
            modelView.GetType().Name.ShouldBe($"Model{cloneViewType.ToString().Replace("Lookup", "")}");
            modelView.Id.ShouldBe(cloneViewId);
            application.Dispose();
        }