Esempio n. 1
0
        public void TestResolvedDataKeys()
        {
            GadgetMaster       target;
            DataGadgetTestData gadget = new DataGadgetTestData();

            MemoryStream stream = new MemoryStream();
            StreamWriter writer = new StreamWriter(stream);

            target = new GadgetMaster(testFactory, gadget.Source);
            ResolveDataControlValues(target.MyDataContext, gadget.ExpectedViewer, gadget.ExpectedViewer, gadget.ExpectedFriends);
            target.MyDataContext.ResolveDataValues();
            target.RenderContent(writer);

            string written = ControlTestHelper.GetStreamContent(stream);

            object data;

            for (int i = 0; i < gadget.ExpectedDataKeys.Length; i++)
            {
                string key = gadget.ExpectedDataKeys[i];
                Assert.IsTrue(target.MasterDataContext.HasVariable(key), "Key not registered: " + key);
                data = target.MasterDataContext.GetVariableValue(gadget.ExpectedDataKeys[i]);
                Assert.IsNotNull(data, "Data not resolved for: " + key);
            }
        }
Esempio n. 2
0
        public void TestTagRepeater()
        {
            DataGadgetTestData data = new DataGadgetTestData();

            TestOsRepeaterTagFoundNotEmpty(data);
            TestRepeaterRenderResult(data);
        }
Esempio n. 3
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. 4
0
        /// <summary>
        /// Helper method to test that the tag doesn't render blank results
        /// </summary>
        /// <param name="gadget"></param>
        void TestOsRepeaterTagFoundNotEmpty(DataGadgetTestData gadget)
        {
            GadgetMaster master = null;
            MemoryStream stream = null;
            StreamWriter writer = null;

            stream = new MemoryStream();
            writer = new StreamWriter(stream);

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

            master.RenderContent(writer);

            Assert.AreEqual(1, master.ContentBlocks.Count);
            ContentBlock block = master.ContentBlocks[0];

            Assert.IsNotNull(block);

            bool         found    = false;
            OsmlRepeater repeater = null;

            foreach (BaseGadgetControl control in block.Templates)
            {
                OsTemplate template = control as OsTemplate;
                if (template != null)
                {
                    foreach (BaseGadgetControl innerControl in template.Controls)
                    {
                        if (innerControl is OsmlRepeater)
                        {
                            found    = true;
                            repeater = (OsmlRepeater)innerControl;
                            break;
                        }
                    }
                }
            }

            Assert.IsTrue(found, "Repeater not found in gadget results");
            Assert.IsNotNull(repeater, "Repeater control is null - i.e. wasn't created");
            Assert.Greater(repeater.Controls.Count, 0, "Repeater control tree not built");
        }
Esempio n. 5
0
        public void RepeaterGadgetTest()
        {
            DataGadgetTestData gadget = null;
            GadgetMaster       target = null;
            MemoryStream       stream = null;
            StreamWriter       writer = null;

            stream = new MemoryStream();
            writer = new StreamWriter(stream);

            gadget = new DataGadgetTestData();
            target = new GadgetMaster(testFactory, gadget.Source);


            target.RenderingOptions.DivWrapContentBlocks = false;
            ResolveDataControlValues(target.MyDataContext, gadget.ExpectedViewer, gadget.ExpectedViewer, gadget.ExpectedFriends);
            string written = ControlTestHelper.GetRenderedContents(target, "canvas");

            written = written.Trim();
            string expected = gadget.ExpectedCanvas.Trim();

            Assert.AreEqual(expected, written, "Repeater canvas does not match");
        }