public IEnumerator DragStylePillOntoTemplateElementInHierarchy()
        {
            yield return(AddTextFieldElement());

            var documentElement = GetFirstDocumentElement();

            yield return(AddSelector(TestSelectorName));

            var createdSelector = GetStyleSelectorNodeWithName(TestSelectorName);

            yield return(UIETestHelpers.Pause(1));

            var hierarchyTreeView = HierarchyPane.Q <TreeView>();

            hierarchyTreeView.ExpandItem(hierarchyTreeView.items.ToList()[1].id);

            var textFieldLabel = BuilderTestsHelper.GetExplorerItemWithName(HierarchyPane, nameof(Label)).Q <Label>();

            yield return(UIETestHelpers.Pause(1));

            yield return(UIETestEvents.Mouse.SimulateDragAndDrop(BuilderWindow,
                                                                 createdSelector.Q <Label>().worldBound.center,
                                                                 textFieldLabel.worldBound.center));

            Assert.That(documentElement.classList, Is.Not.Contain(TestSelectorName.TrimStart('.')));
        }
        public IEnumerator ClickToSelect()
        {
            const string testElementName = "test_element_name";

            AddElementCodeOnly <TextField>(testElementName);
            Selection.ClearSelection(null);

            yield return(UIETestHelpers.Pause());

            var hierarchyCreatedItem = GetHierarchyExplorerItemByElementName(testElementName);

            Assert.That(hierarchyCreatedItem, Is.Not.Null);

            var hierarchyTreeView = HierarchyPane.Q <TreeView>();

            Assert.That(hierarchyTreeView.GetSelectedItem(), Is.Null);
            Assert.That(Selection.isEmpty, Is.True);

            yield return(UIETestEvents.Mouse.SimulateClick(hierarchyCreatedItem));

            var documentElement = GetFirstDocumentElement();

            Assert.That(documentElement.name, Is.EqualTo(testElementName));

            var selectedItem = (TreeViewItem <VisualElement>)hierarchyTreeView.GetSelectedItem();

            Assert.That(documentElement, Is.EqualTo(selectedItem.data));
            Assert.That(Selection.selection.First(), Is.EqualTo(documentElement));
        }
        public IEnumerator CopyPasteUXML()
        {
            AddElementCodeOnly();
            AddElementCodeOnly();
            yield return(UIETestHelpers.Pause());

            var hierarchyItems = BuilderTestsHelper.GetExplorerItemsWithName(HierarchyPane, nameof(VisualElement));
            var hierarchyItem1 = hierarchyItems[0];
            var hierarchyItem2 = hierarchyItems[1];

            yield return(UIETestEvents.Mouse.SimulateDragAndDrop(BuilderWindow,
                                                                 hierarchyItem1.worldBound.center,
                                                                 hierarchyItem2.worldBound.center));

            var complexItem = GetFirstExplorerItem();

            var newlineFixedExpectedUXML = m_ExpectedUXMLString;

            if (BuilderConstants.NewlineChar != BuilderConstants.NewlineCharFromEditorSettings)
            {
                newlineFixedExpectedUXML = newlineFixedExpectedUXML.Replace(
                    BuilderConstants.NewlineChar,
                    BuilderConstants.NewlineCharFromEditorSettings);
            }

            // Copy to UXML
            yield return(UIETestEvents.Mouse.SimulateClick(complexItem));

            yield return(UIETestEvents.ExecuteCommand(BuilderWindow, UIETestEvents.Command.Copy));

            Assert.That(BuilderEditorUtility.SystemCopyBuffer, Is.EqualTo(newlineFixedExpectedUXML));

            ForceNewDocument();
            BuilderEditorUtility.SystemCopyBuffer = string.Empty;
            yield return(UIETestEvents.Mouse.SimulateClick(HierarchyPane));

            yield return(UIETestEvents.ExecuteCommand(BuilderWindow, UIETestEvents.Command.Paste));

            var explorerItems = BuilderTestsHelper.GetExplorerItems(HierarchyPane);

            Assert.That(explorerItems, Is.Empty);

            BuilderEditorUtility.SystemCopyBuffer = newlineFixedExpectedUXML;
            yield return(UIETestEvents.ExecuteCommand(BuilderWindow, UIETestEvents.Command.Paste));

            // var newItem = BuilderTestsHelper.GetExplorerItemWithName(HierarchyPane, nameof(VisualElement));
            var hierarchyTreeView = HierarchyPane.Q <TreeView>();

            hierarchyTreeView.ExpandItem(hierarchyTreeView.items.ToList()[1].id);

            explorerItems = BuilderTestsHelper.GetExplorerItems(HierarchyPane);
            Assert.That(explorerItems.Count, Is.EqualTo(2));
            Assert.That(BuilderTestsHelper.GetLinkedDocumentElement(explorerItems[1]).parent, Is.EqualTo(BuilderTestsHelper.GetLinkedDocumentElement(explorerItems[0])));
        }
Ejemplo n.º 4
0
        public IEnumerator SettingsCopiedFromUnsavedDocument()
        {
            var documentHierarchyHeader = HierarchyPane.Q <BuilderExplorerItem>();

            yield return(UIETestEvents.Mouse.SimulateClick(documentHierarchyHeader));

            var colorButton = InspectorPane.Q <Button>("Color");

            yield return(UIETestEvents.Mouse.SimulateClick(colorButton));

            var colorField = InspectorPane.Q <ColorField>("background-color-field");

            colorField.value = Color.green;
            yield return(UIETestHelpers.Pause(1));

            BuilderWindow.document.SaveUnsavedChanges(k_NewUxmlFilePath);
            Assert.That(BuilderWindow.document.settings.CanvasBackgroundMode, Is.EqualTo(BuilderCanvasBackgroundMode.Color));
            Assert.That(BuilderWindow.document.settings.CanvasBackgroundColor, Is.EqualTo(Color.green));
        }
        public IEnumerator SelectingStyleSelectorOrStyleSheetDeselectsHierarchyItems()
        {
            AddElementCodeOnly();
            yield return(EnsureSelectorsCanBeAddedAndReloadBuilder());

            yield return(AddSelector(StyleSheetsPaneTests.TestSelectorName));

            // Deselect
            yield return(UIETestEvents.Mouse.SimulateClick(HierarchyPane));

            var hierarchyTreeView = HierarchyPane.Q <TreeView>();

            Assert.That(hierarchyTreeView.GetSelectedItem(), Is.Null);

            // Select hierarchy item
            var hierarchyItem = BuilderTestsHelper.GetExplorerItemWithName(HierarchyPane, nameof(VisualElement));

            yield return(UIETestEvents.Mouse.SimulateClick(hierarchyItem));

            Assert.That(hierarchyTreeView.GetSelectedItem(), Is.Not.Null);

            // Select test selector
            var selector = BuilderTestsHelper.GetExplorerItemWithName(StyleSheetsPane, StyleSheetsPaneTests.TestSelectorName);

            yield return(UIETestEvents.Mouse.SimulateClick(selector));

            Assert.That(hierarchyTreeView.GetSelectedItem(), Is.Null);

            // Select hierarchy item
            yield return(UIETestEvents.Mouse.SimulateClick(hierarchyItem));

            Assert.That(hierarchyTreeView.GetSelectedItem(), Is.Not.Null);

            // Select Uss file name header
            var header = BuilderTestsHelper.GetHeaderItem(StyleSheetsPane);

            yield return(UIETestEvents.Mouse.SimulateClick(header));

            Assert.That(hierarchyTreeView.GetSelectedItem(), Is.Null);
        }
        public IEnumerator ClickToSelect()
        {
            yield return(AddVisualElement());

            var hierarchyCreatedItem = GetFirstExplorerVisualElementNode(nameof(VisualElement));

            Assert.That(hierarchyCreatedItem, Is.Not.Null);

            yield return(UIETestEvents.Mouse.SimulateClick(StyleSheetsPane));

            var hierarchyTreeView = HierarchyPane.Q <TreeView>();

            Assert.That(hierarchyTreeView.GetSelectedItem(), Is.Null);

            yield return(UIETestEvents.Mouse.SimulateClick(hierarchyCreatedItem));

            var documentElement = GetFirstDocumentElement();

            var selectedItem = (TreeViewItem <VisualElement>)hierarchyTreeView.GetSelectedItem();

            Assert.That(documentElement, Is.EqualTo(selectedItem.data));
        }
Ejemplo n.º 7
0
 internal BuilderExplorerItem GetHierarchyExplorerItemByElementName(string name)
 {
     return(HierarchyPane.Query <BuilderExplorerItem>()
            .Where(item => BuilderTestsHelper.GetLinkedDocumentElement(item).name == name).ToList().First());
 }