private static void AssertAdaptiveChild(string expectedAdaptiveChildXml, IAdaptiveChild child) { AssertAdaptiveChildInToast(expectedAdaptiveChildXml, child); AssertAdaptiveChildInTile(expectedAdaptiveChildXml, child); // Also assert them within group/subgroup if possible! if (child is IAdaptiveSubgroupChild) { AdaptiveGroup group = new AdaptiveGroup() { Children = { new AdaptiveSubgroup() { Children = { child as IAdaptiveSubgroupChild } } } }; string expectedGroupXml = "<group><subgroup>" + expectedAdaptiveChildXml + "</subgroup></group>"; AssertAdaptiveChildInToast(expectedGroupXml, group); AssertAdaptiveChildInTile(expectedGroupXml, group); } }
private static void AssertAdaptiveChildInTile(string expectedAdaptiveChildXml, IAdaptiveChild child) { var content = new TileContent() { Visual = new TileVisual() { TileMedium = new TileBinding() { Content = new TileBindingContentAdaptive() { Children = { child } } } } }; AssertHelper.AssertXml( "<tile><visual><binding template='TileMedium'>" + expectedAdaptiveChildXml + "</binding></visual></tile>", content.GetContent()); }
private static void AssertAdaptiveChildInToast(string expectedAdaptiveChildXml, IAdaptiveChild child) { var binding = new ToastBindingGeneric(); // If the child isn't text, we need to add a text element so notification is valid if (!(child is AdaptiveText)) { binding.Children.Add(new AdaptiveText() { Text = "Required text element" }); expectedAdaptiveChildXml = "<text>Required text element</text>" + expectedAdaptiveChildXml; } binding.Children.Add(child); var content = new ToastContent() { Visual = new ToastVisual() { BindingGeneric = binding } }; AssertHelper.AssertXml( "<toast><visual><binding template='ToastGeneric'>" + expectedAdaptiveChildXml + "</binding></visual></toast>", content.GetContent()); }