예제 #1
0
        public void ProviderPatternTest()
        {
            DockProviderLabel         label    = new DockProviderLabel();
            IRawElementProviderSimple provider = ProviderFactory.GetProvider(label);

            object dockPattern = provider.GetPatternProvider(DockPatternIdentifiers.Pattern.Id);

            Assert.IsNotNull(dockPattern, "DockPattern.");

            IDockProvider dockProvider = dockPattern as IDockProvider;

            Assert.IsNotNull(dockProvider, "IDockProvider ");

            Assert.AreEqual(provider.HostRawElementProvider, label, "HostRawElementProvider");
            Assert.AreEqual(ProviderOptions.ServerSideProvider, provider.ProviderOptions, "ProviderOptions");

            Assert.AreEqual(DockStyle.Top.ToString(),
                            provider.GetPropertyValue(AutomationElementIdentifiers.NameProperty.Id),
                            "NameProperty");

            dockProvider.SetDockPosition(DockPosition.Right);
            Assert.AreEqual(DockStyle.Right.ToString(),
                            provider.GetPropertyValue(AutomationElementIdentifiers.NameProperty.Id),
                            "NameProperty");
        }
예제 #2
0
        internal static void IDockProviderSetDockPositionTest(IRawElementProviderSimple provider, Control control)
        {
            IDockProvider dockProvider = (IDockProvider)provider.GetPatternProvider(DockPatternIdentifiers.Pattern.Id);

            Assert.IsNotNull(dockProvider, "Dock provider should not be null");

            DockStyle dockOrig = control.Dock;

            dockProvider.SetDockPosition(DockPosition.Top);
            Assert.AreEqual(DockStyle.Top, control.Dock, "DockStyle Top");
            dockProvider.SetDockPosition(DockPosition.Bottom);
            Assert.AreEqual(DockStyle.Bottom, control.Dock, "DockStyle Bottom");
            dockProvider.SetDockPosition(DockPosition.Left);
            Assert.AreEqual(DockStyle.Left, control.Dock, "DockStyle Left");
            dockProvider.SetDockPosition(DockPosition.Right);
            Assert.AreEqual(DockStyle.Right, control.Dock, "DockStyle Right");
            if ((control is Splitter))
            {
                try {
                    dockProvider.SetDockPosition(DockPosition.None);
                    Assert.Fail("InvalidOperationException not thrown");
                } catch (InvalidOperationException) { }

                try {
                    dockProvider.SetDockPosition(DockPosition.Fill);
                    Assert.Fail("InvalidOperationException not thrown");
                } catch (InvalidOperationException) { }
            }
            else
            {
                dockProvider.SetDockPosition(DockPosition.Fill);
                Assert.AreEqual(DockStyle.Fill, control.Dock, "DockStyle Fill");
                dockProvider.SetDockPosition(DockPosition.None);
                Assert.AreEqual(DockStyle.None, control.Dock, "DockStyle None");
            }

            control.Dock = dockOrig;
        }
예제 #3
0
 public void SetDockPosition(DockPosition dockPosition)
 {
     provider.SetDockPosition(dockPosition);
 }