public async Task OnTextCleared_MultilineTextBox() { await using var recorder = new TestRecorder(App); //Arrange IVisualElement grid = await LoadXaml(@" <Grid> <TextBox Style=""{StaticResource MaterialDesignFilledTextBox}"" materialDesign:HintAssist.Hint=""Floating hint in a box"" VerticalAlignment=""Top""/> </Grid>"); IVisualElement textBox = await grid.GetElement("/TextBox"); Rect initialRect = await textBox.GetCoordinates(); double initialHeight = await textBox.GetActualHeight(); await textBox.SetText($"Line 1{Environment.NewLine}Line 2"); double twoLineHeight = await textBox.GetActualHeight(); //Act await textBox.SetText(""); //Assert await Wait.For(async() => Assert.Equal(initialHeight, await textBox.GetActualHeight())); Rect rect = await textBox.GetCoordinates(); Assert.Equal(initialRect, rect); recorder.Success(); }
public async Task OnClearButtonWithHintShown_ControlHeighDoesNotChange() { await using var recorder = new TestRecorder(App); //Arrange IVisualElement grid = await LoadXaml(@" <Grid Margin=""30""> <TextBox Style=""{StaticResource MaterialDesignFloatingHintTextBox}"" VerticalAlignment=""Top"" materialDesign:TextFieldAssist.HasClearButton=""True"" materialDesign:TextFieldAssist.PrefixText =""$"" materialDesign:TextFieldAssist.SuffixText = ""mm""> <materialDesign:HintAssist.Hint> <StackPanel Orientation=""Horizontal"" Margin=""-2 0 0 0""> <materialDesign:PackIcon Kind=""AccessPoint"" /> <TextBlock>WiFi</TextBlock> </StackPanel> </materialDesign:HintAssist.Hint > </TextBox> </Grid>"); IVisualElement textBox = await grid.GetElement("/TextBox"); IVisualElement clearButton = await grid.GetElement("PART_ClearButton"); double initialHeight = await textBox.GetActualHeight(); //Act await textBox.MoveKeyboardFocus(); //Delay needed to accout for transition storyboard await Task.Delay(MaterialDesignTextBox.FocusedAimationTime); //Assert double height = await textBox.GetActualHeight(); Assert.Equal(initialHeight, height); recorder.Success(); }
public async Task ScrollBarAssist_ButtonsVisibility_HidesButtonsOnMinimalistStyle() { await using var recorder = new TestRecorder(App); string xaml = @"<ListBox Height=""300"" Width=""300"" materialDesign:ScrollBarAssist.ButtonsVisibility=""Collapsed"" ScrollViewer.HorizontalScrollBarVisibility=""Visible"" ScrollViewer.VerticalScrollBarVisibility=""Visible""> <ListBox.Resources> <Style BasedOn=""{StaticResource MaterialDesignScrollBarMinimal}"" TargetType=""{x:Type ScrollBar}"" /> </ListBox.Resources> "; for (int i = 0; i < 50; i++) { xaml += $" <ListBoxItem>This is a pretty long meaningless text just to make horizontal scrollbar visibile</ListBoxItem>{Environment.NewLine}"; } xaml += "</ListBox>"; IVisualElement listBox = await LoadXaml(xaml); IVisualElement verticalScrollBar = await listBox.GetElement("PART_VerticalScrollBar"); IVisualElement horizontalScrollBar = await listBox.GetElement("PART_HorizontalScrollBar"); Assert.Equal(17, await verticalScrollBar.GetActualWidth()); var verticalThumb = await verticalScrollBar.GetElement("/Thumb~border"); Assert.Equal(10, await verticalThumb.GetActualWidth()); var upButton = await verticalScrollBar.GetElement("PART_LineUpButton"); Assert.False(await upButton.GetIsVisible()); var downButton = await verticalScrollBar.GetElement("PART_LineDownButton"); Assert.False(await downButton.GetIsVisible()); Assert.Equal(17, await horizontalScrollBar.GetActualHeight()); var horizontalThumb = await horizontalScrollBar.GetElement("/Thumb~border"); Assert.Equal(10, await horizontalThumb.GetActualHeight()); var leftButton = await horizontalScrollBar.GetElement("PART_LineLeftButton"); Assert.False(await upButton.GetIsVisible()); var rightButton = await horizontalScrollBar.GetElement("PART_LineRightButton"); Assert.False(await downButton.GetIsVisible()); recorder.Success(); }
public async Task OnClearButtonShown_ControlHeighDoesNotChange() { await using var recorder = new TestRecorder(App); //Arrange IVisualElement grid = await LoadXaml(@" <Grid Margin=""30""> <TextBox VerticalAlignment=""Top"" Text=""Some Text"" materialDesign:TextFieldAssist.HasClearButton=""True""> </TextBox> </Grid>"); IVisualElement textBox = await grid.GetElement("/TextBox"); IVisualElement clearButton = await grid.GetElement("PART_ClearButton"); await textBox.MoveKeyboardFocus(); //Delay needed to accout for transition storyboard await Task.Delay(MaterialDesignTextBox.FocusedAimationTime); double initialHeight = await textBox.GetActualHeight(); //Act await clearButton.Click(); //Assert await Task.Delay(MaterialDesignTextBox.FocusedAimationTime); double height = await textBox.GetActualHeight(); Assert.Equal(initialHeight, height); recorder.Success(); }