Esempio n. 1
0
        public void RenderGadgetSimpleTemplates()
        {
            GadgetWithSimpleTemplate data   = new GadgetWithSimpleTemplate();
            GadgetMaster             target = GadgetMaster.CreateGadget(TEST_FACTORY_KEY, data.Source);

            ResolveDataControlValues(target.MyDataContext, data.ExpectedViewer, data.ExpectedViewer, data.ExpectedFriends);


            Assert.IsTrue(target.IsParsed);
            Assert.IsTrue(target.MyOffset.ToString().IndexOf("ContentBlock") > -1, "Content Block not found in offsets");

            target.RenderingOptions.DivWrapContentBlocks = false;
            target.RenderingOptions.SuppressWhitespace   = true;
            target.ClientRenderCustomTemplates           = false;

            string result = target.RenderToString("canvas");

            result = ControlTestHelper.NormalizeRenderResult(result);
            //remove double spaces
            while (result.Contains("  "))
            {
                result = result.Replace("  ", " ");
            }
            string expectedCanvas = ControlTestHelper.NormalizeRenderResult(data.ExpectedCanvas);

            Assert.IsFalse(string.IsNullOrEmpty(result), "empty result");

            Assert.AreEqual(expectedCanvas, result, "Rendered results are incorrect");
        }
Esempio n. 2
0
        public void RenderWithSharedDataKeys()
        {
            GadgetMaster       target;
            DataGadgetTestData data = new DataGadgetSharedDataKeys();

            target = new GadgetMaster(testFactory, data.Source);

            ResolveDataControlValues(target.MyDataContext, data.ExpectedViewer, data.ExpectedViewer, data.ExpectedFriends);
            target.RenderingOptions.ClientRenderCustomTemplates = false;
            target.RenderingOptions.ClientRenderDataContext     = false;
            target.RenderingOptions.DivWrapContentBlocks        = false;
            target.RenderingOptions.SuppressWhitespace          = true;

            //vwr, myfriends
            string result;

            result = ControlTestHelper.NormalizeRenderResult(target.RenderToString("canvas"));
            Assert.AreEqual(ControlTestHelper.NormalizeRenderResult(data.ExpectedCanvas), result, "Canvas Incorrect");

            result = ControlTestHelper.NormalizeRenderResult(target.RenderToString("home"));
            Assert.AreEqual(ControlTestHelper.NormalizeRenderResult(data.ExpectedHome), result, "Home Incorrect");

            result = ControlTestHelper.NormalizeRenderResult(target.RenderToString("profile"));
            Assert.AreEqual(ControlTestHelper.NormalizeRenderResult(data.ExpectedProfile), result, "Profile Incorrect");
        }
Esempio n. 3
0
        public void TagSimpleElementParametersRender()
        {
            string content  = "My favorite color is {0}";
            string param    = "color";
            string tag      = "x:Foo";
            string val      = "blue";
            string template = "<script type='text/os-template' tag='{0}'>\n{1}</script>";

            template = String.Format(template, tag, string.Format(content, "${My." + param + "}"));

            string elemInstMarkup = "<{0}><{1}>{2}</{1}></{0}>";


            string tagInstanceMarkup = string.Format(elemInstMarkup, new string[] { tag, param, val });
            string expected          = string.Format(content, val);

            factory.RegisterCustomTag(tag, template);
            CustomTag inst = factory.CreateTagInstance(tag, tagInstanceMarkup);

            Assert.AreEqual(val, inst.Parameters[param], "Registered instance value incorrect");

            string result = ControlTestHelper.GetRenderedContents(inst);

            result = ControlTestHelper.NormalizeRenderResult(result);
            Assert.AreEqual(expected, result, "Rendered results incorrect");
        }
Esempio n. 4
0
        public void ViewsStandardTest()
        {
            GadgetWithViews data = new GadgetWithViews();

            GadgetMaster target = new GadgetMaster(testFactory, data.Source);

            target.RenderingOptions.DivWrapContentSubViews  = false;
            target.RenderingOptions.DivWrapContentBlocks    = false;
            target.RenderingOptions.ClientRenderDataContext = false;

            string result = ControlTestHelper.NormalizeRenderResult(target.RenderToString("canvas"));

            Assert.AreEqual(data.ExpectedCanvas, result, "Canvas incorrect");

            String[,] td = new String[, ] {
                { "canvas", data.ExpectedCanvas },
                { "Canvas", data.ExpectedCanvas },
                { "mobilecanvas", data.ExpectedMobileCanvas },
                { "home", data.ExpectedHome },
                { "profile", data.ExpectedProfile }
            };

            for (int i = 0; i < td.Length / 2; i++)
            {
                result = ControlTestHelper.NormalizeRenderResult(target.RenderToString(td[i, 0]));
                Assert.AreEqual(td[i, 1], result, td[i, 0] + " render incorrect");
            }
        }
Esempio n. 5
0
        /// <summary>
        /// Tests the rendered results against expected output.
        /// Trims to remove leading and trailing whitespace
        /// </summary>
        /// <param name="control"></param>
        /// <param name="expectedResult"></param>
        /// <returns></returns>
        public bool AssertRenderResultsEqual(BaseGadgetControl control, string expectedResult)
        {
            string result = ControlTestHelper.GetRenderedContents(control);

            result         = ControlTestHelper.NormalizeRenderResult(result);
            expectedResult = ControlTestHelper.NormalizeRenderResult(expectedResult);
            return(result == expectedResult);
        }
Esempio n. 6
0
        void CheckRender(GadgetMaster target, string view, string expected)
        {
            target.RenderingOptions.DivWrapContentBlocks    = false;
            target.RenderingOptions.ClientRenderDataContext = false;

            string result = ControlTestHelper.NormalizeRenderResult(target.RenderToString(view));

            Assert.AreEqual(ControlTestHelper.NormalizeRenderResult(expected), result, view + " view incorrect");
        }
Esempio n. 7
0
        public void TagParameterRegistrationVariantsTest()
        {
            GadgetCustomTagTemplates testData = new GadgetCustomTagTemplates();
            GadgetMaster             target   = GadgetMaster.CreateGadget(TEST_FACTORY_KEY, testData.Source);

            string result = ControlTestHelper.NormalizeRenderResult(target.RenderToString("canvas"));

            Assert.IsNotNull(result, "Empty render result");
            Assert.IsTrue(result.Contains(testData.ExpectedParamAttributeValue), "Attribute parameter not correctly rendered");
            Assert.IsTrue(result.Contains(testData.ExpectedParamElementValue), "Element parameter not correctly rendered");
            Assert.IsTrue(result.Contains(testData.ExpectedVariableValue), "osVar parameter not correctly rendered");
        }
Esempio n. 8
0
        public void SecurityPolicyAffectsRender()
        {
            SecurityPolicyGadget data   = new SecurityPolicyGadget();
            GadgetMaster         target = GadgetMaster.CreateGadget(TEST_FACTORY_KEY, data.Source);

            target.RenderingOptions.DivWrapContentBlocks = false;

            string key    = "markup";
            string result = ControlTestHelper.NormalizeRenderResult(target.RenderToString("canvas"));

            Assert.AreEqual(data.ExpectedCanvas, result);
        }
Esempio n. 9
0
        /// <summary>
        /// Helper to check the rendered results
        /// </summary>
        /// <param name="gadget"></param>
        void TestRepeaterRenderResult(DataGadgetTestData gadget)
        {
            GadgetMaster master = null;

            master = GadgetMaster.CreateGadget(TEST_FACTORY_KEY, gadget.Source);
            master.RenderingOptions.DivWrapContentBlocks = false;
            ResolveDataControlValues(master.MyDataContext, gadget.ExpectedViewer, gadget.ExpectedViewer, gadget.ExpectedFriends);

            string result   = ControlTestHelper.GetRenderedContents(master, "canvas");
            string expected = gadget.ExpectedCanvas.Trim().Replace("\r\n", "\n");

            Assert.AreEqual(ControlTestHelper.NormalizeRenderResult(expected), ControlTestHelper.NormalizeRenderResult(result), "Rendered results incorrect");
        }
Esempio n. 10
0
        public void MissingViewTest()
        {
            GadgetWithViews data = new GadgetWithViews();

            GadgetMaster target = new GadgetMaster(testFactory, data.Source);

            target.RenderingOptions.DivWrapContentSubViews  = false;
            target.RenderingOptions.DivWrapContentBlocks    = false;
            target.RenderingOptions.ClientRenderDataContext = false;

            string result = ControlTestHelper.NormalizeRenderResult(target.RenderToString("mobilecanvas"));

            Assert.AreEqual(data.ExpectedMobileCanvas, result, "Mobile Canvas incorrect");
        }
Esempio n. 11
0
        public void TestContentRenderTrailingScript()
        {
            ContentBlockTrailingClientScript testContent = new ContentBlockTrailingClientScript();
            GadgetMaster master = new GadgetMaster(testFactory);
            ContentBlock block  = new ContentBlock();

            master.AddContentBlock(block);
            block.LoadTag(testContent.Source);
            block.IncludeWrappingDivs = false;

            string tagRendered = ControlTestHelper.NormalizeRenderResult(ControlTestHelper.GetRenderedContents(block));

            Assert.IsTrue(tagRendered.Length > 0, "Empty rendered tag from content");
            Assert.AreEqual(ControlTestHelper.NormalizeRenderResult(testContent.ExpectedCanvas), tagRendered);
        }
Esempio n. 12
0
        public void LiteralsWithCDataHonored(string raw, bool suppressCDATA, string expected)
        {
            GadgetLiteral control = new GadgetLiteral(raw);

            Assert.AreEqual(raw, control.RawTag);
            Assert.AreEqual(raw, control.InnerMarkup);

            control.SuppressCDATATags = suppressCDATA;
            string rendered = ControlTestHelper.NormalizeRenderResult(
                ControlTestHelper.GetRenderedContents(control));

            expected = ControlTestHelper.NormalizeRenderResult(expected);

            Assert.AreEqual(expected, rendered, "Rendered results do not match expectations");
        }
Esempio n. 13
0
        public void TestSurfaceViewRender(string source, string surfaceName, string expected)
        {
            GadgetMaster target;

            target = new GadgetMaster(testFactory, source);
            target.RenderingOptions.DivWrapContentBlocks   = false;
            target.RenderingOptions.DivWrapContentSubViews = false;
            AccountTestData.ResolveDataControlValues(target.MyDataContext, GadgetTestData.Viewer, GadgetTestData.Viewer, null);

            string written = ControlTestHelper.GetRenderedContents(target, surfaceName);

            expected = ControlTestHelper.NormalizeRenderResult(expected);
            written  = ControlTestHelper.NormalizeRenderResult(written);

            Assert.AreEqual(expected.Length, written.Length, "Lengths do not match");

            Assert.AreEqual(expected, written, "Rendered gadget not expected from view: [" + surfaceName + "]\nEXPECTED:\n" + expected + "\n\nWRITTEN:\n" + written);
        }
Esempio n. 14
0
        public void RenderGadgetWithoutTemplates()
        {
            GadgetWithoutTemplatesData data = new GadgetWithoutTemplatesData();
            GadgetMaster target             = GadgetMaster.CreateGadget(TEST_FACTORY_KEY, data.Source);

            Assert.IsTrue(target.IsParsed);
            Assert.IsTrue(target.MyOffset.ToString().IndexOf("ContentBlock") > -1, "Content Block not found in offsets");

            target.RenderingOptions.DivWrapContentBlocks = false;
            target.RenderingOptions.SuppressWhitespace   = true;
            target.ClientRenderCustomTemplates           = false;

            string result = target.RenderToString("canvas");

            result = ControlTestHelper.NormalizeRenderResult(result);
            Assert.IsFalse(string.IsNullOrEmpty(result), "empty result");

            Assert.AreEqual(data.ExpectedCanvas, result, "Rendered results are incorrect");
        }
Esempio n. 15
0
        public void TagTopVariableParametersRender()
        {
            string name   = "Yohan";
            Person viewer = ControlTestHelper.CreatePerson(909, name, null);

            string content  = "My Name is {1} and my favorite color is {0}";
            string param    = "color";
            string tag      = "x:Foo";
            string val      = "blue";
            string paramTop = "vwr.displayName";
            //${Top.vwr.DisplayName}
            string template = "<script type='text/os-template' tag='{0}'>\n{1}</script>";

            template = String.Format(template, tag, string.Format(content, "${My." + param + "}", "${Top." + paramTop + "}"));

            string elemInstMarkup = "<{0}><{1}>{2}</{1}></{0}>";


            string tagInstanceMarkup = string.Format(elemInstMarkup, new string[] { tag, param, val });
            string expected          = string.Format(content, val, name);

            factory.RegisterCustomTag(tag, template);
            DataContext dc = factory.MyRootMaster.MyDataContext;

            ResolveDataControlValues(dc, viewer, viewer, null);
            OsViewerRequest viewerReq = new OsViewerRequest();

            viewerReq.Key = "vwr";

            dc.RegisterDataItem(viewerReq);
            ResolveDataControlValues(dc, viewer, viewer, null);

            CustomTag inst = factory.CreateTagInstance(tag, tagInstanceMarkup);

            Assert.AreEqual(val, inst.Parameters[param], "Registered instance value incorrect");

            string result = ControlTestHelper.GetRenderedContents(inst);

            result = ControlTestHelper.NormalizeRenderResult(result);
            Assert.AreEqual(expected, result, "Rendered results incorrect");
        }
Esempio n. 16
0
        public void DynamicDataElementParametersRender()
        {
            string name   = "Yohan";
            Person viewer = ControlTestHelper.CreatePerson(909, name, null);

            string content           = "My Name is {0}";
            string param             = "thisPerson";
            string mainPersonDataKey = "vwr";
            //string instVariable = "${" + param
            string paramGet = param + ".displayName";
            string tag      = "x:Foo";

            string template = "<script type='text/os-template' tag='{0}'>\n{1}</script>";

            template = String.Format(template, tag, string.Format(content, "${My." + paramGet + "}"));

            string elemInstMarkup = "<{0}><{1}>{2}</{1}></{0}>";


            string tagInstanceMarkup = string.Format(elemInstMarkup, new string[] { tag, param, "${" + mainPersonDataKey + "}" });
            string expected          = string.Format(content, name);

            factory.RegisterCustomTag(tag, template);

            DataContext     dc        = factory.MyRootMaster.MyDataContext;
            OsViewerRequest viewerReq = new OsViewerRequest();

            viewerReq.Key = mainPersonDataKey;

            dc.RegisterDataItem(viewerReq);
            ResolveDataControlValues(dc, viewer, viewer, null);

            CustomTag inst = factory.CreateTagInstance(tag, tagInstanceMarkup);

//			Assert.AreEqual(name, inst.Parameters[param], "Registered instance value incorrect");

            string result = ControlTestHelper.GetRenderedContents(inst);

            result = ControlTestHelper.NormalizeRenderResult(result);
            Assert.AreEqual(expected, result, "Rendered results incorrect");
        }
Esempio n. 17
0
        public void StaticGadgetRender()
        {
            TestableMarkupDef data = new StaticGadgetApp();

            GadgetMaster target = GadgetMaster.CreateGadget(TEST_FACTORY_KEY, data.Source);

            target.RenderingOptions.DivWrapContentBlocks = false;
            target.RenderingOptions.SuppressWhitespace   = true;
            target.ClientRenderCustomTemplates           = false;

            string result = target.RenderToString("canvas");

            result = ControlTestHelper.NormalizeRenderResult(result);
            Assert.IsFalse(string.IsNullOrEmpty(result), "empty result");

            Assert.AreEqual(data.ExpectedCanvas, result, "Rendered Canvas results are incorrect");

            result = target.RenderToString("profile");
            result = ControlTestHelper.NormalizeRenderResult(result);
            Assert.IsFalse(string.IsNullOrEmpty(result), "empty result");

            Assert.AreEqual(data.ExpectedProfile, result, "Rendered Profile results are incorrect");
        }
Esempio n. 18
0
        public void RenderWithExternalTemplates()
        {
            GadgetReferencingTemplateLibrary testData = new GadgetReferencingTemplateLibrary();
            GadgetMaster master = GadgetMaster.CreateGadget(TEST_FACTORY_KEY, testData.Source);             //new GadgetMaster(ControlFactory.GetControlFactory(TEST_FACTORY_KEY));

            BasicLibrary  testLib = new BasicLibrary();
            TemplatesRoot library = master.LoadTemplateLibrary(testData.ExpectedTemplateLibraryUri, BasicLibrary.Source);

            master.RenderingOptions.ClientRenderCustomTemplates = false;
            master.RenderingOptions.ClientRenderDataContext     = false;
            master.RenderingOptions.DivWrapContentBlocks        = false;
            master.RenderingOptions.SuppressWhitespace          = true;

            master.ReParse();
            ResolveDataControlValues(master.MyDataContext, testData.ExpectedViewer, testData.ExpectedViewer, testData.ExpectedFriends);

            string result = ControlTestHelper.NormalizeRenderResult(master.RenderToString("canvas"));

            result = result.Replace("  ", " ");
            string expected = ControlTestHelper.NormalizeRenderResult(testData.ExpectedCanvas);

            Assert.AreEqual(expected, result, "Rendered results don't match expected");
        }