public IEnumerator DragOntoHierarchyElementToCreateAsSibling() { AddElementCodeOnly(); AddElementCodeOnly(); // Set 500% zoom so we also test that element gets dragged into Hierarchy and not the Canvas (behind the Hierarchy). viewport.zoomScale = 5f; viewport.contentOffset = new Vector2(-400, 0); var firstVisualElementItem = GetFirstExplorerItem(); yield return(SelectLibraryTreeItemWithName("Text Field")); var textFieldLibrary = BuilderTestsHelper.GetLabelWithName(library, "Text Field"); var veBottomPosition = new Vector2(firstVisualElementItem.worldBound.center.x, firstVisualElementItem.worldBound.yMin); yield return(UIETestEvents.Mouse.SimulateMouseEvent(builder, EventType.MouseDown, textFieldLibrary.worldBound.center)); yield return(UIETestEvents.Mouse.SimulateMouseMove(builder, textFieldLibrary.worldBound.center, firstVisualElementItem.worldBound.center)); yield return(UIETestEvents.Mouse.SimulateMouseMove(builder, firstVisualElementItem.worldBound.center, veBottomPosition)); yield return(UIETestEvents.Mouse.SimulateMouseEvent(builder, EventType.MouseUp, veBottomPosition)); Assert.That(viewport.documentRootElement.childCount, Is.EqualTo(3)); Assert.NotNull(viewport.documentRootElement.Q <TextField>()); }
public IEnumerator DragStylePillToViewport() { yield return(AddVisualElement()); var documentElement = GetFirstDocumentElement(); yield return(AddSelector(TestSelectorName + " " + TestSelectorName2)); var createdSelector = GetStyleSelectorNodeWithName(TestSelectorName); yield return(UIETestHelpers.Pause(1)); yield return(UIETestEvents.Mouse.SimulateDragAndDrop(BuilderWindow, createdSelector.Q <Label>().worldBound.center, documentElement.worldBound.center)); Assert.That(documentElement.classList.Count, Is.EqualTo(1)); Assert.That(documentElement.classList[0], Is.EqualTo(TestSelectorName.TrimStart('.'))); var secondClassNameLabel = BuilderTestsHelper.GetLabelWithName(createdSelector, TestSelectorName2); yield return(UIETestHelpers.Pause(100)); yield return(UIETestEvents.Mouse.SimulateDragAndDrop(BuilderWindow, secondClassNameLabel.worldBound.center, documentElement.worldBound.center)); Assert.That(documentElement.classList.Count, Is.EqualTo(2)); Assert.That(documentElement.classList, Contains.Item(TestSelectorName2.TrimStart('.'))); }
public IEnumerator DragStylePillToViewport() { AddElementCodeOnly <TextField>(); // Ensure we can add selectors. yield return(EnsureSelectorsCanBeAddedAndReloadBuilder()); yield return(AddSelector(TestSelectorName + " " + TestSelectorName2)); var createdSelector = GetStyleSelectorNodeWithName(TestSelectorName); // Now it's safe to get a reference to an element in the canvas. var documentElement = GetFirstDocumentElement(); yield return(UIETestHelpers.Pause(1)); yield return(UIETestEvents.Mouse.SimulateDragAndDrop(builder, createdSelector.Q <Label>().worldBound.center, documentElement.worldBound.center)); var currentClassCount = documentElement.classList.Count; Assert.That(documentElement.classList, Contains.Item(TestSelectorName.TrimStart('.'))); var secondClassNameLabel = BuilderTestsHelper.GetLabelWithName(createdSelector, TestSelectorName2); yield return(UIETestHelpers.Pause(100)); yield return(UIETestEvents.Mouse.SimulateDragAndDrop(builder, secondClassNameLabel.worldBound.center, documentElement.worldBound.center)); Assert.That(documentElement.classList.Count, Is.EqualTo(currentClassCount + 1)); Assert.That(documentElement.classList, Contains.Item(TestSelectorName2.TrimStart('.'))); }
public IEnumerator CanDoubleClickToCreateNewElement() { Assert.That(viewport.documentRootElement.childCount, Is.EqualTo(0)); var label = BuilderTestsHelper.GetLabelWithName(library, nameof(VisualElement)); Assert.That(label, Is.Not.Null); yield return(UIETestEvents.Mouse.SimulateDoubleClick(label)); Assert.That(viewport.documentRootElement.childCount, Is.EqualTo(1)); }
protected IEnumerator AddElement(string elementLabel) { var label = BuilderTestsHelper.GetLabelWithName(LibraryPane, elementLabel); yield return(UIETestEvents.Mouse.SimulateDragAndDrop(BuilderWindow, label.worldBound.center, HierarchyPane.worldBound.center)); yield return(UIETestHelpers.Pause(1)); }
public IEnumerator HoveringOverItemShowsFloatingPreviewBox() { var veLabel = BuilderTestsHelper.GetLabelWithName(library, nameof(VisualElement)); var preview = builder.rootVisualElement.Q <BuilderTooltipPreview>("library-tooltip-preview"); Assert.That(preview.worldBound.size, Is.EqualTo(Vector2.zero)); yield return(UIETestEvents.Mouse.SimulateMouseEvent(builder, EventType.MouseMove, veLabel.worldBound.center)); yield return(UIETestHelpers.Pause()); Assert.That(preview.worldBound.size, Is.Not.EqualTo(Vector2.zero)); }
protected IEnumerator AddElement(string elementLabel) { yield return(SelectLibraryTreeItemWithName(elementLabel)); var label = BuilderTestsHelper.GetLabelWithName(library, elementLabel); Assert.IsNotNull(label); yield return(UIETestEvents.Mouse.SimulateDragAndDrop(builder, label.worldBound.center, hierarchy.worldBound.center)); yield return(UIETestHelpers.Pause(1)); }
public IEnumerator DragOntoHierarchyElementToCreateAsChild() { yield return(AddVisualElement()); var explorerItem = GetFirstExplorerItem(); var veLabel = BuilderTestsHelper.GetLabelWithName(LibraryPane, nameof(VisualElement)); yield return(UIETestEvents.Mouse.SimulateDragAndDrop(BuilderWindow, veLabel.worldBound.center, explorerItem.worldBound.center)); var hierarchyItems = BuilderTestsHelper.GetExplorerItemsWithName(HierarchyPane, nameof(VisualElement)); var documentElement1 = BuilderTestsHelper.GetLinkedDocumentElement(hierarchyItems[0]); var documentElement2 = BuilderTestsHelper.GetLinkedDocumentElement(hierarchyItems[1]); Assert.That(documentElement2.parent, Is.EqualTo(documentElement1)); }
public IEnumerator VisualElementArtificialSizeResetWhenChildIsAdded() { yield return(AddVisualElement()); var explorerItem = GetFirstExplorerItem(); var documentElement = GetFirstDocumentElement(); Assert.That(documentElement[0].classList, Contains.Item(BuilderConstants.SpecialVisualElementInitialMinSizeClassName)); // Add child. var veLabel = BuilderTestsHelper.GetLabelWithName(library, nameof(VisualElement)); yield return(UIETestEvents.Mouse.SimulateDragAndDrop(builder, veLabel.worldBound.center, explorerItem.worldBound.center)); Assert.That(documentElement.childCount, Is.EqualTo(1)); Assert.False(documentElement[0].classList.Contains(BuilderConstants.SpecialVisualElementInitialMinSizeClassName)); }
public IEnumerator DragOntoViewportElementToCreateNewInstanceAsChild() { AddElementCodeOnly(); var documentElement = viewport.documentRootElement[0]; var veLabel = BuilderTestsHelper.GetLabelWithName(library, nameof(VisualElement)); yield return(UIETestEvents.Mouse.SimulateDragAndDrop(builder, veLabel.worldBound.center, documentElement.worldBound.center)); var hierarchyItems = BuilderTestsHelper.GetExplorerItemsWithName(hierarchy, nameof(VisualElement)); documentElement = BuilderTestsHelper.GetLinkedDocumentElement(hierarchyItems[0]); var documentElement1 = BuilderTestsHelper.GetLinkedDocumentElement(hierarchyItems[1]); Assert.That(documentElement1.parent, Is.EqualTo(documentElement)); Assert.That(builder.rootVisualElement.focusController.focusedElement, Is.EqualTo(viewport)); }
public IEnumerator DragOntoViewportElementToCreateNewInstanceAsChild() { yield return(AddVisualElement()); var documentElement = ViewportPane.documentElement[0]; var veLabel = BuilderTestsHelper.GetLabelWithName(LibraryPane, nameof(VisualElement)); yield return(UIETestEvents.Mouse.SimulateDragAndDrop(BuilderWindow, veLabel.worldBound.center, documentElement.worldBound.center)); var hierarchyItems = BuilderTestsHelper.GetExplorerItemsWithName(HierarchyPane, nameof(VisualElement)); documentElement = BuilderTestsHelper.GetLinkedDocumentElement(hierarchyItems[0]); var documentElement1 = BuilderTestsHelper.GetLinkedDocumentElement(hierarchyItems[1]); Assert.That(documentElement1.parent, Is.EqualTo(documentElement)); Assert.That(BuilderWindow.rootVisualElement.focusController.focusedElement, Is.EqualTo(ViewportPane)); }
public IEnumerator DragOntoHierarchyElementToCreateAsChildFailsForListView() { AddElementCodeOnly <ListView>("test-list-view"); yield return(UIETestHelpers.Pause()); var listView = viewport.documentRootElement.Q <ListView>(); Assert.NotNull(listView); var explorerItem = GetFirstExplorerItem(); var listViewChildCount = listView.hierarchy.childCount; var veLabel = BuilderTestsHelper.GetLabelWithName(library, nameof(VisualElement)); yield return(UIETestEvents.Mouse.SimulateDragAndDrop(builder, veLabel.worldBound.center, explorerItem.worldBound.center)); Assert.AreEqual(listViewChildCount, listView.hierarchy.childCount); var contentContainer = listView.Q("unity-content-container"); Assert.NotNull(contentContainer); Assert.NotNull(contentContainer.GetFirstAncestorOfType <ListView>()); Assert.NotNull(contentContainer.GetFirstAncestorOfType <BuilderCanvas>()); selection.Select(null, contentContainer); selection.NotifyOfHierarchyChange(); yield return(UIETestHelpers.Pause()); var contentContainerMenuItem = GetHierarchyExplorerItemByElementName("unity-content-container"); Assert.NotNull(contentContainerMenuItem); var containerChildCount = contentContainer.hierarchy.childCount; yield return(UIETestEvents.Mouse.SimulateDragAndDrop(builder, veLabel.worldBound.center, contentContainerMenuItem.worldBound.center)); Assert.AreEqual(containerChildCount, contentContainer.hierarchy.childCount); }
public IEnumerator DragOntoHierarchyElementToCreateAsChild() { AddElementCodeOnly(); yield return(UIETestHelpers.Pause()); var explorerItem = GetFirstExplorerItem(); var veLabel = BuilderTestsHelper.GetLabelWithName(library, nameof(VisualElement)); yield return(UIETestEvents.Mouse.SimulateDragAndDrop(builder, veLabel.worldBound.center, explorerItem.worldBound.center)); hierarchy.elementHierarchyView.ExpandRootItems(); var hierarchyItems = BuilderTestsHelper.GetExplorerItemsWithName(hierarchy, nameof(VisualElement)); var documentElement1 = BuilderTestsHelper.GetLinkedDocumentElement(hierarchyItems[0]); var documentElement2 = BuilderTestsHelper.GetLinkedDocumentElement(hierarchyItems[1]); Assert.That(documentElement2.parent, Is.EqualTo(documentElement1)); }
public IEnumerator DragOntoHierarchyElementToCreateAsSibling() { yield return(AddVisualElement()); yield return(AddVisualElement()); var firstVisualElementItem = GetFirstExplorerItem(); var textFieldLibrary = BuilderTestsHelper.GetLabelWithName(LibraryPane, "Text Field"); var veBottomPosition = new Vector2(firstVisualElementItem.worldBound.center.x, firstVisualElementItem.worldBound.yMin); yield return(UIETestEvents.Mouse.SimulateMouseEvent(BuilderWindow, EventType.MouseDown, textFieldLibrary.worldBound.center)); yield return(UIETestEvents.Mouse.SimulateMouseMove(BuilderWindow, textFieldLibrary.worldBound.center, firstVisualElementItem.worldBound.center)); yield return(UIETestEvents.Mouse.SimulateMouseMove(BuilderWindow, firstVisualElementItem.worldBound.center, veBottomPosition)); yield return(UIETestEvents.Mouse.SimulateMouseEvent(BuilderWindow, EventType.MouseUp, veBottomPosition)); Assert.That(ViewportPane.documentElement.childCount, Is.EqualTo(3)); Assert.That(ViewportPane.documentElement[0], Is.TypeOf <TextField>()); }