public void FragmentRoot_DocumentRange_OneString() { using (var site = new RootSiteDataProviderView(m_cache)) { site.StyleSheet = FixtureStyleSheet; site.WritingSystemFactory = m_wsManager; using (new SimpleRootSiteDataProviderTestsHelper(site)) { const string expected = "Should only show this string"; site.ShowForm(m_wsEng, expected, new SimpleRootSiteDataProviderVc.DisplayOptions()); var dataProvider = new SimpleRootSiteDataProvider(site); var doc = dataProvider.DocumentRange; Assert.NotNull(doc, "DocumentRange shouldn't be null"); Assert.AreEqual(expected, doc.GetText(-1)); } } }
public void FragmentRoot_HasCustomEditControl_ChangeValue() { using (var site = new RootSiteDataProviderView(m_cache)) { site.StyleSheet = FixtureStyleSheet; site.WritingSystemFactory = m_wsManager; using (var helper = new SimpleRootSiteDataProviderTestsHelper(site)) { const string expected = "This has been replaced"; site.ShowForm(m_wsEng, "This should get changed.", new SimpleRootSiteDataProviderVc.DisplayOptions()); var dataProvider = new SimpleRootSiteDataProvider(site); IRawElementProviderFragment firstChild = dataProvider.Navigate(NavigateDirection.FirstChild); Assert.NotNull(firstChild, "FragmentRoot should have a custom edit control."); Assert.IsInstanceOf <SimpleRootSiteEditControl>(firstChild); Assert.IsInstanceOf <IValueProvider>(firstChild); var originalBoundingRect = firstChild.BoundingRectangle; var childValueProvider = (IValueProvider)firstChild; childValueProvider.SetValue(expected); Assert.AreSame(firstChild, dataProvider.Navigate(NavigateDirection.FirstChild)); Assert.AreEqual(expected, childValueProvider.Value); Assert.IsFalse(firstChild.BoundingRectangle.Equals(originalBoundingRect), "The bounding rectangle of the control should have changed from " + originalBoundingRect); Assert.Less(firstChild.BoundingRectangle.Width, originalBoundingRect.Width); Assert.AreEqual(originalBoundingRect.Height, firstChild.BoundingRectangle.Height); Assert.AreEqual(originalBoundingRect.X, firstChild.BoundingRectangle.X); Assert.AreEqual(originalBoundingRect.Y, firstChild.BoundingRectangle.Y); var childTextProvider = (ITextProvider)firstChild; Assert.AreEqual(expected, childTextProvider.DocumentRange.GetText(-1)); Assert.AreEqual(expected, dataProvider.DocumentRange.GetText(-1)); var lastChild = dataProvider.Navigate(NavigateDirection.LastChild); Assert.AreSame(firstChild, lastChild); } } }