public override void GetName()
        {
            ToggleButton toggleButton = CreateConcreteFrameworkElement() as ToggleButton;
            FrameworkElementAutomationPeerContract feap
                = CreateConcreteFrameworkElementAutomationPeer(toggleButton);

            Assert.AreEqual(String.Empty, feap.GetName(), "GetName");
            Assert.AreEqual(String.Empty, feap.GetNameCore_(), "GetName");

            string name = "Yarr!";

            toggleButton.Content = new TextBlock {
                Text = name
            };
            Assert.AreEqual(name, feap.GetName(), "GetName #1");
            Assert.AreEqual(name, feap.GetNameCore_(), "GetNameCore #1");

            name = "En Garde!";
            toggleButton.Content = name;
            Assert.AreEqual(name, feap.GetName(), "GetName #2");
            Assert.AreEqual(name, feap.GetNameCore_(), "GetNameCore #2");

            toggleButton.Content = String.Empty;
            Assert.AreEqual(String.Empty, feap.GetName(), "GetName #2");
            Assert.AreEqual(String.Empty, feap.GetNameCore_(), "GetNameCore #2");

            toggleButton.Content = null;
            Assert.AreEqual(String.Empty, feap.GetName(), "GetName #3");
            Assert.AreEqual(String.Empty, feap.GetNameCore_(), "GetNameCore #3");
        }
        public override void GetName_AttachedProperty0()
        {
            FrameworkElement fe = CreateConcreteFrameworkElement();
            FrameworkElementAutomationPeerContract feap = CreateConcreteFrameworkElementAutomationPeer(fe);

            Assert.AreEqual(string.Empty, feap.GetName(), "GetName");
            Assert.AreEqual(string.Empty, feap.GetNameCore_(), "GetNameCore");

            string name = "Attached Name";

            fe.SetValue(AutomationProperties.NameProperty, name);
            Assert.AreEqual(string.Empty, feap.GetName(), "GetName #1");
            Assert.AreEqual(string.Empty, feap.GetNameCore_(), "GetNameCore #1");

            fe.SetValue(AutomationProperties.NameProperty, null);
            Assert.AreEqual(string.Empty, feap.GetName(), "GetName #2");
            Assert.AreEqual(string.Empty, feap.GetNameCore_(), "GetNameCore #2");
        }
        public override void GetName_AttachedProperty1()
        {
            FrameworkElement element = CreateConcreteFrameworkElement();
            FrameworkElementAutomationPeerContract tbap = CreateConcreteFrameworkElementAutomationPeer(element);

            string textblockName = "Hello world:";
            string nameProperty  = "TextBox name";

            TextBlock textblock = new TextBlock();

            textblock.Text = textblockName;

            element.SetValue(AutomationProperties.NameProperty, nameProperty);
            Assert.AreEqual(string.Empty, tbap.GetName(), "GetName #0");
            Assert.AreEqual(string.Empty, tbap.GetNameCore_(), "GetNameCore #0");

            element.SetValue(AutomationProperties.LabeledByProperty, textblock);
            Assert.AreEqual(textblockName, tbap.GetName(), "GetName #1");
            Assert.AreEqual(string.Empty, tbap.GetNameCore_(), "GetNameCore #1");

            textblock.Text = null;
            Assert.AreEqual(string.Empty, tbap.GetName(), "GetName #2");
            Assert.AreEqual(string.Empty, tbap.GetNameCore_(), "GetNameCore #2");

            textblock.Text = string.Empty;
            Assert.AreEqual(string.Empty, tbap.GetName(), "GetName #3");
            Assert.AreEqual(string.Empty, tbap.GetNameCore_(), "GetNameCore #3");

            element.SetValue(AutomationProperties.NameProperty, null);

            Assert.AreEqual(string.Empty, tbap.GetName(), "GetName #4");
            Assert.AreEqual(string.Empty, tbap.GetNameCore_(), "GetNameCore #4");

            element.SetValue(AutomationProperties.LabeledByProperty, null);

            Assert.AreEqual(string.Empty, tbap.GetName(), "GetName #5");
            Assert.AreEqual(string.Empty, tbap.GetNameCore_(), "GetNameCore #5");
        }