diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/ClearButtonVisiblityButton_TextEmpty.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/ClearButtonVisibilityButton_TextEmpty.png
similarity index 100%
rename from src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/ClearButtonVisiblityButton_TextEmpty.png
rename to src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/ClearButtonVisibilityButton_TextEmpty.png
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/ClearButtonVisiblityButton_TextPresent.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/ClearButtonVisibilityButton_TextPresent.png
similarity index 100%
rename from src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/ClearButtonVisiblityButton_TextPresent.png
rename to src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/ClearButtonVisibilityButton_TextPresent.png
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyClearButtonVisiblityWhenIsPasswordTrueOrFalse.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyClearButtonVisibilityWhenIsPasswordTrueOrFalse.png
similarity index 100%
rename from src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyClearButtonVisiblityWhenIsPasswordTrueOrFalse.png
rename to src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyClearButtonVisibilityWhenIsPasswordTrueOrFalse.png
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyClearButtonVisiblityWhenTextAlignedHorizontally.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyClearButtonVisibilityWhenTextAlignedHorizontally.png
similarity index 100%
rename from src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyClearButtonVisiblityWhenTextAlignedHorizontally.png
rename to src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyClearButtonVisibilityWhenTextAlignedHorizontally.png
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyClearButtonVisiblityWhenTextAlignedVertically.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyClearButtonVisibilityWhenTextAlignedVertically.png
similarity index 100%
rename from src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyClearButtonVisiblityWhenTextAlignedVertically.png
rename to src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyClearButtonVisibilityWhenTextAlignedVertically.png
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyClearVisiblityButtonWhenTextColorChanged.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyClearVisibilityButtonWhenTextColorChanged.png
similarity index 100%
rename from src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyClearVisiblityButtonWhenTextColorChanged.png
rename to src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyClearVisibilityButtonWhenTextColorChanged.png
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyIsPasswordWhenMaxLenghtSetValue.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyIsPasswordWhenMaxLengthSetValue.png
similarity index 100%
rename from src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyIsPasswordWhenMaxLenghtSetValue.png
rename to src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyIsPasswordWhenMaxLengthSetValue.png
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyTextWhenAlingnedHorizontally.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyTextWhenAlignedHorizontally.png
similarity index 100%
rename from src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyTextWhenAlingnedHorizontally.png
rename to src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyTextWhenAlignedHorizontally.png
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyTextWhenAlingnedVertically.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyTextWhenAlignedVertically.png
similarity index 100%
rename from src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyTextWhenAlingnedVertically.png
rename to src/Controls/tests/TestCases.Android.Tests/snapshots/android-notch-36/VerifyTextWhenAlignedVertically.png
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/ClearButtonVisiblityButton_TextEmpty.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/ClearButtonVisibilityButton_TextEmpty.png
similarity index 100%
rename from src/Controls/tests/TestCases.Android.Tests/snapshots/android/ClearButtonVisiblityButton_TextEmpty.png
rename to src/Controls/tests/TestCases.Android.Tests/snapshots/android/ClearButtonVisibilityButton_TextEmpty.png
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/ClearButtonVisiblityButton_TextPresent.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/ClearButtonVisibilityButton_TextPresent.png
similarity index 100%
rename from src/Controls/tests/TestCases.Android.Tests/snapshots/android/ClearButtonVisiblityButton_TextPresent.png
rename to src/Controls/tests/TestCases.Android.Tests/snapshots/android/ClearButtonVisibilityButton_TextPresent.png
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyClearButtonVisiblityWhenIsPasswordTrueOrFalse.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyClearButtonVisibilityWhenIsPasswordTrueOrFalse.png
similarity index 100%
rename from src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyClearButtonVisiblityWhenIsPasswordTrueOrFalse.png
rename to src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyClearButtonVisibilityWhenIsPasswordTrueOrFalse.png
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyClearButtonVisiblityWhenTextAlignedHorizontally.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyClearButtonVisibilityWhenTextAlignedHorizontally.png
similarity index 100%
rename from src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyClearButtonVisiblityWhenTextAlignedHorizontally.png
rename to src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyClearButtonVisibilityWhenTextAlignedHorizontally.png
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyClearButtonVisiblityWhenTextAlignedVertically.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyClearButtonVisibilityWhenTextAlignedVertically.png
similarity index 100%
rename from src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyClearButtonVisiblityWhenTextAlignedVertically.png
rename to src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyClearButtonVisibilityWhenTextAlignedVertically.png
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyClearVisiblityButtonWhenTextColorChanged.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyClearVisibilityButtonWhenTextColorChanged.png
similarity index 100%
rename from src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyClearVisiblityButtonWhenTextColorChanged.png
rename to src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyClearVisibilityButtonWhenTextColorChanged.png
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryBackgroundColorResetToDefault.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryBackgroundColorResetToDefault.png
new file mode 100644
index 000000000000..657b485a851d
Binary files /dev/null and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryBackgroundColorResetToDefault.png differ
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryBackgroundColorWithPlaceholderColor.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryBackgroundColorWithPlaceholderColor.png
new file mode 100644
index 000000000000..1e2323b69e83
Binary files /dev/null and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryBackgroundColorWithPlaceholderColor.png differ
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryBackgroundColorWithPlaceholderText.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryBackgroundColorWithPlaceholderText.png
new file mode 100644
index 000000000000..a888aa99c243
Binary files /dev/null and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryBackgroundColorWithPlaceholderText.png differ
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryBackgroundColorWithTextColor.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryBackgroundColorWithTextColor.png
new file mode 100644
index 000000000000..e204feb9ec6a
Binary files /dev/null and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryBackgroundColorWithTextColor.png differ
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryWhenBackgroundColorSet.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryWhenBackgroundColorSet.png
new file mode 100644
index 000000000000..e99e83b165b0
Binary files /dev/null and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryWhenBackgroundColorSet.png differ
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryWhenOpacityResetToDefault.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryWhenOpacityResetToDefault.png
new file mode 100644
index 000000000000..6165d8f5c02b
Binary files /dev/null and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryWhenOpacityResetToDefault.png differ
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryWhenOpacitySet.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryWhenOpacitySet.png
new file mode 100644
index 000000000000..0277f4b79085
Binary files /dev/null and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyEntryWhenOpacitySet.png differ
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyIsPasswordBasedOnVerticalTextAlignment.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyIsPasswordBasedOnVerticalTextAlignment.png
index 4a2654c2c8b9..2110a26b2f14 100644
Binary files a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyIsPasswordBasedOnVerticalTextAlignment.png and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyIsPasswordBasedOnVerticalTextAlignment.png differ
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyIsPasswordWhenMaxLenghtSetValue.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyIsPasswordWhenMaxLengthSetValue.png
similarity index 100%
rename from src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyIsPasswordWhenMaxLenghtSetValue.png
rename to src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyIsPasswordWhenMaxLengthSetValue.png
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyPlaceholderColorResetToDefault.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyPlaceholderColorResetToDefault.png
new file mode 100644
index 000000000000..739ca7d3f639
Binary files /dev/null and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyPlaceholderColorResetToDefault.png differ
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyPlaceholderTextWhenBoldAndItalicFontAttributesSet.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyPlaceholderTextWhenBoldAndItalicFontAttributesSet.png
new file mode 100644
index 000000000000..2574d83c19cd
Binary files /dev/null and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyPlaceholderTextWhenBoldAndItalicFontAttributesSet.png differ
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyPlaceholderWithShadow.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyPlaceholderWithShadow.png
index 608ed01948d5..a9dcc6cf6eb3 100644
Binary files a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyPlaceholderWithShadow.png and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyPlaceholderWithShadow.png differ
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyTextColorResetToDefault.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyTextColorResetToDefault.png
new file mode 100644
index 000000000000..8ecd543d3b51
Binary files /dev/null and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyTextColorResetToDefault.png differ
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyTextWhenAlingnedHorizontally.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyTextWhenAlignedHorizontally.png
similarity index 100%
rename from src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyTextWhenAlingnedHorizontally.png
rename to src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyTextWhenAlignedHorizontally.png
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyTextWhenAlingnedVertically.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyTextWhenAlignedVertically.png
similarity index 100%
rename from src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyTextWhenAlingnedVertically.png
rename to src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyTextWhenAlignedVertically.png
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyTextWhenBoldAndItalicFontAttributesSet.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyTextWhenBoldAndItalicFontAttributesSet.png
new file mode 100644
index 000000000000..33eef06a0dac
Binary files /dev/null and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyTextWhenBoldAndItalicFontAttributesSet.png differ
diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyTextWhenKeyboardTypeSet.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyTextWhenKeyboardTypeSet.png
index de621671452f..58831460336a 100644
Binary files a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyTextWhenKeyboardTypeSet.png and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/VerifyTextWhenKeyboardTypeSet.png differ
diff --git a/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryControlPage.xaml b/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryControlPage.xaml
index 51a8c5332d41..27fc7531eac2 100644
--- a/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryControlPage.xaml
+++ b/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryControlPage.xaml
@@ -39,6 +39,9 @@
IsEnabled="{Binding IsEnabled}"
FlowDirection="{Binding FlowDirection}"
HeightRequest="{Binding HeightRequest}"
+ WidthRequest="{Binding WidthRequest}"
+ BackgroundColor="{Binding BackgroundColor}"
+ Opacity="{Binding Opacity}"
FontAttributes="{Binding FontAttributes}"
TextTransform="{Binding TextTransform}"
TextChanged="EntryControl_TextChanged"
@@ -52,7 +55,7 @@
+ AutomationId="Options"/>
@@ -86,6 +89,7 @@
@@ -115,4 +119,4 @@
AutomationId="UnfocusedLabel"
FontSize="11"/>
-
\ No newline at end of file
+
diff --git a/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryControlPage.xaml.cs b/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryControlPage.xaml.cs
index 17c836bb6851..1f5d9106d349 100644
--- a/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryControlPage.xaml.cs
+++ b/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryControlPage.xaml.cs
@@ -36,11 +36,7 @@ public EntryControlMainPage(EntryViewModel viewModel)
private async void NavigateToOptionsPage_Clicked(object sender, EventArgs e)
{
- BindingContext = _viewModel = new EntryViewModel();
- _viewModel.Text = "Test Entry";
- _viewModel.Placeholder = "Enter text here";
- _viewModel.CursorPosition = 0;
- _viewModel.SelectionLength = 0;
+ _viewModel.Reset();
await Navigation.PushAsync(new EntryOptionsPage(_viewModel));
}
@@ -51,7 +47,6 @@ private void CursorPositionButton_Clicked(object sender, EventArgs e)
_viewModel.CursorPosition = cursorPosition;
}
}
-
private void SelectionLength_Clicked(object sender, EventArgs e)
{
if (int.TryParse(SelectionLengthEntry.Text, out int selectionLength))
@@ -130,4 +125,4 @@ private void EntryControl_Unfocused(object sender, FocusEventArgs e)
vm.UnfocusedText = eventInfo;
}
}
-}
\ No newline at end of file
+}
diff --git a/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryOptionsPage.xaml b/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryOptionsPage.xaml
index d2e5c2838de4..6d366c823144 100644
--- a/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryOptionsPage.xaml
+++ b/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryOptionsPage.xaml
@@ -5,472 +5,533 @@
x:Class="Maui.Controls.Sample.EntryOptionsPage">
-
-
-
-
-
+ RowDefinitions="Auto, *"
+ ColumnSpacing="4"
+ RowSpacing="0">
+
+
+
+
+ Grid.Row="1"
+ Spacing="0">
-
+
+ WidthRequest="90"/>
-
+
-
+
-
-
+
+
-
+ FontSize="10"
+ VerticalTextAlignment="Center"/>
+
-
+ FontSize="10"
+ VerticalTextAlignment="Center"/>
+
-
-
+ FontSize="10"
+ VerticalTextAlignment="Center"/>
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
+ FontSize="10"
+ VerticalTextAlignment="Center"/>
+
-
-
-
+
+
+ Grid.Row="1"
+ Spacing="0">
-
-
-
-
+
-
+
+ WidthRequest="80"/>
-
-
-
+
+
+
-
+
-
+
+ FontSize="9"
+ TextChanged="MaxLengthEntry_TextChanged"
+ WidthRequest="80"/>
-
-
-
+
+
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
+
-
-
+
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
\ No newline at end of file
+
diff --git a/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryOptionsPage.xaml.cs b/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryOptionsPage.xaml.cs
index 3a446c554aca..659892f3ec03 100644
--- a/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryOptionsPage.xaml.cs
+++ b/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryOptionsPage.xaml.cs
@@ -23,7 +23,12 @@ private void TextColorButton_Clicked(object sender, EventArgs e)
{
if (sender is Button button)
{
- _viewModel.TextColor = button.BackgroundColor;
+ _viewModel.TextColor = button.AutomationId switch
+ {
+ "TextColorRed" => Colors.Red,
+ "TextColorBlue" => Colors.Blue,
+ _ => null
+ };
}
}
@@ -47,7 +52,12 @@ private void PlaceholderColorButton_Clicked(object sender, EventArgs e)
{
if (sender is Button button)
{
- _viewModel.PlaceholderColor = button.BackgroundColor;
+ _viewModel.PlaceholderColor = button.AutomationId switch
+ {
+ "PlaceholderColorRed" => Colors.Red,
+ "PlaceholderColorBlue" => Colors.Blue,
+ _ => null
+ };
}
}
@@ -121,7 +131,7 @@ private void ReturnTypeButton_Clicked(object sender, EventArgs e)
}
}
- private void MaxLengthButton_Clicked(object sender, EventArgs e)
+ private void MaxLengthEntry_TextChanged(object sender, TextChangedEventArgs e)
{
if (int.TryParse(MaxLengthEntry.Text, out int maxLength))
{
@@ -256,19 +266,54 @@ private void TextTransform_CheckedChanged(object sender, CheckedChangedEventArgs
}
}
- private void FontAttributes_CheckedChanged(object sender, CheckedChangedEventArgs e)
+ private void BackgroundColorButton_Clicked(object sender, EventArgs e)
+ {
+ if (sender is Button button)
+ {
+ _viewModel.BackgroundColor = button.AutomationId switch
+ {
+ "BackgroundColorYellow" => Colors.Yellow,
+ "BackgroundColorLightBlue" => Colors.LightBlue,
+ _ => null
+ };
+ }
+ }
+
+ private void WidthRequestEntry_TextChanged(object sender, TextChangedEventArgs e)
{
- if (sender == FontAttributesBold)
+ if (double.TryParse(e.NewTextValue, out double widthRequest))
{
- _viewModel.FontAttributes = FontAttributes.Bold;
+ _viewModel.WidthRequest = widthRequest;
}
- else if (sender == FontAttributesNone)
+ }
+
+ private void OpacityEntry_TextChanged(object sender, TextChangedEventArgs e)
+ {
+ if (double.TryParse(e.NewTextValue, out double opacity))
{
- _viewModel.FontAttributes = FontAttributes.None;
+ opacity = Math.Clamp(opacity, 0.0, 1.0);
+ _viewModel.Opacity = opacity;
}
- else if (sender == FontAttributesItalic)
+ }
+
+ private void HeightRequestEntry_TextChanged(object sender, TextChangedEventArgs e)
+ {
+ if (double.TryParse(e.NewTextValue, out double heightRequest))
{
- _viewModel.FontAttributes = FontAttributes.Italic;
+ _viewModel.HeightRequest = heightRequest;
}
}
-}
\ No newline at end of file
+
+ private void FontAttributesCheckBox_CheckedChanged(object sender, CheckedChangedEventArgs e)
+ {
+ var attributes = FontAttributes.None;
+
+ if (FontAttributesBoldCheckBox.IsChecked)
+ attributes |= FontAttributes.Bold;
+
+ if (FontAttributesItalicCheckBox.IsChecked)
+ attributes |= FontAttributes.Italic;
+
+ _viewModel.FontAttributes = attributes;
+ }
+}
diff --git a/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryViewModel.cs b/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryViewModel.cs
index 1cf67880874e..bf41d25043bc 100644
--- a/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryViewModel.cs
+++ b/src/Controls/tests/TestCases.HostApp/FeatureMatrix/EntryControl/EntryViewModel.cs
@@ -7,9 +7,9 @@ namespace Maui.Controls.Sample;
public class EntryViewModel : INotifyPropertyChanged
{
private string _text = "Test Entry";
- private Color _textColor = Colors.Black;
+ private Color _textColor = null;
private string _placeholder = "Enter text here";
- private Color _placeholderColor = Colors.Gray;
+ private Color _placeholderColor = null;
private double _fontSize = 14;
private double _heightrequest = -1;
private TextAlignment _horizontalTextAlignment = TextAlignment.Start;
@@ -25,8 +25,11 @@ public class EntryViewModel : INotifyPropertyChanged
private bool _isSpellCheckEnabled = false;
private Keyboard _keyboard = Keyboard.Default;
private string _fontFamily = null;
- private bool isVisible = true;
+ private bool _isVisible = true;
private bool _isEnabled = true;
+ private Color _backgroundColor = null;
+ private double _opacity = 1.0;
+ private double _widthRequest = -1;
private ClearButtonVisibility _clearButtonVisibility = ClearButtonVisibility.WhileEditing;
private FlowDirection _flowDirection = FlowDirection.LeftToRight;
private bool _hasShadow = false;
@@ -157,8 +160,8 @@ public bool IsSpellCheckEnabled
public bool IsVisible
{
- get => isVisible;
- set { isVisible = value; OnPropertyChanged(); }
+ get => _isVisible;
+ set { _isVisible = value; OnPropertyChanged(); }
}
public bool IsEnabled
@@ -167,6 +170,24 @@ public bool IsEnabled
set { _isEnabled = value; OnPropertyChanged(); }
}
+ public Color BackgroundColor
+ {
+ get => _backgroundColor;
+ set { _backgroundColor = value; OnPropertyChanged(); }
+ }
+
+ public double Opacity
+ {
+ get => _opacity;
+ set { _opacity = value; OnPropertyChanged(); }
+ }
+
+ public double WidthRequest
+ {
+ get => _widthRequest;
+ set { _widthRequest = value; OnPropertyChanged(); }
+ }
+
public Keyboard Keyboard
{
get => _keyboard;
@@ -270,8 +291,45 @@ public FontAttributes FontAttributes
}
}
+ public void Reset()
+ {
+ TextColor = null;
+ PlaceholderColor = null;
+ FontSize = 14;
+ HeightRequest = -1;
+ WidthRequest = -1;
+ BackgroundColor = null;
+ Opacity = 1.0;
+ HorizontalTextAlignment = TextAlignment.Start;
+ VerticalTextAlignment = TextAlignment.Center;
+ IsPassword = false;
+ CharacterSpacing = 0;
+ ReturnType = ReturnType.Default;
+ MaxLength = -1;
+ IsReadOnly = false;
+ IsTextPredictionEnabled = false;
+ IsSpellCheckEnabled = false;
+ Keyboard = Keyboard.Default;
+ FontFamily = null;
+ IsVisible = true;
+ IsEnabled = true;
+ ClearButtonVisibility = ClearButtonVisibility.WhileEditing;
+ FlowDirection = FlowDirection.LeftToRight;
+ HasShadow = false;
+ TextTransform = TextTransform.Default;
+ FontAttributes = FontAttributes.None;
+ Text = "Test Entry";
+ Placeholder = "Enter text here";
+ TextChangedText = "TextChanged: Not triggered";
+ CompletedText = "Completed: Not triggered";
+ FocusedText = "Focused: Not triggered";
+ UnfocusedText = "Unfocused: Not triggered";
+ CursorPosition = 0;
+ SelectionLength = 0;
+ }
+
protected void OnPropertyChanged([CallerMemberName] string propertyName = null)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
-}
\ No newline at end of file
+}
diff --git a/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/ClearButtonVisiblityButton_TextEmpty.png b/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/ClearButtonVisibilityButton_TextEmpty.png
similarity index 100%
rename from src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/ClearButtonVisiblityButton_TextEmpty.png
rename to src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/ClearButtonVisibilityButton_TextEmpty.png
diff --git a/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/ClearButtonVisiblityButton_TextPresent.png b/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/ClearButtonVisibilityButton_TextPresent.png
similarity index 100%
rename from src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/ClearButtonVisiblityButton_TextPresent.png
rename to src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/ClearButtonVisibilityButton_TextPresent.png
diff --git a/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyClearButtonVisiblityWhenIsPasswordTrueOrFalse.png b/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyClearButtonVisibilityWhenIsPasswordTrueOrFalse.png
similarity index 100%
rename from src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyClearButtonVisiblityWhenIsPasswordTrueOrFalse.png
rename to src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyClearButtonVisibilityWhenIsPasswordTrueOrFalse.png
diff --git a/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyClearButtonVisiblityWhenTextAlignedHorizontally.png b/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyClearButtonVisibilityWhenTextAlignedHorizontally.png
similarity index 100%
rename from src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyClearButtonVisiblityWhenTextAlignedHorizontally.png
rename to src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyClearButtonVisibilityWhenTextAlignedHorizontally.png
diff --git a/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyClearButtonVisiblityWhenTextAlignedVertically.png b/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyClearButtonVisibilityWhenTextAlignedVertically.png
similarity index 100%
rename from src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyClearButtonVisiblityWhenTextAlignedVertically.png
rename to src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyClearButtonVisibilityWhenTextAlignedVertically.png
diff --git a/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyClearVisiblityButtonWhenTextColorChanged.png b/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyClearVisibilityButtonWhenTextColorChanged.png
similarity index 100%
rename from src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyClearVisiblityButtonWhenTextColorChanged.png
rename to src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyClearVisibilityButtonWhenTextColorChanged.png
diff --git a/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyIsPasswordWhenMaxLenghtSetValue.png b/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyIsPasswordWhenMaxLengthSetValue.png
similarity index 100%
rename from src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyIsPasswordWhenMaxLenghtSetValue.png
rename to src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyIsPasswordWhenMaxLengthSetValue.png
diff --git a/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyTextWhenAlingnedHorizontally.png b/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyTextWhenAlignedHorizontally.png
similarity index 100%
rename from src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyTextWhenAlingnedHorizontally.png
rename to src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyTextWhenAlignedHorizontally.png
diff --git a/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyTextWhenAlingnedVertically.png b/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyTextWhenAlignedVertically.png
similarity index 100%
rename from src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyTextWhenAlingnedVertically.png
rename to src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/VerifyTextWhenAlignedVertically.png
diff --git a/src/Controls/tests/TestCases.Shared.Tests/Tests/FeatureMatrix/EntryFeatureTests.cs b/src/Controls/tests/TestCases.Shared.Tests/Tests/FeatureMatrix/EntryFeatureTests.cs
index 542ee9da8d96..c0aba006c6d1 100644
--- a/src/Controls/tests/TestCases.Shared.Tests/Tests/FeatureMatrix/EntryFeatureTests.cs
+++ b/src/Controls/tests/TestCases.Shared.Tests/Tests/FeatureMatrix/EntryFeatureTests.cs
@@ -25,8 +25,8 @@ public EntryFeatureTests(TestDevice device)
: base(device)
{
}
-
- [Test, Order(0)]
+// Note: FontAutoScaling states cannot currently be reliably covered in CI environments, as system font scaling settings are not consistently supported or controllable in automated runs.
+ [Test, Order(1)]
public void VerifyInitialEventStates()
{
App.WaitForElement("TestEntry");
@@ -35,17 +35,19 @@ public void VerifyInitialEventStates()
Assert.That(App.WaitForElement("TextChangedLabel").GetText(), Is.EqualTo("TextChanged: Old='', New='Test Entry'"));
}
- [Test, Order(4)]
- public void VerifyEntryCompletedEvent()
+ [Test, Order(2)]
+ public void VerifyEntryFocusedEvent()
{
App.WaitForElement("TestEntry");
App.Tap("TestEntry");
- App.PressEnter();
- App.DismissKeyboard();
- Assert.That(App.WaitForElement("CompletedLabel").GetText(), Is.EqualTo("Completed: Event Triggered"));
+#if ANDROID || IOS
+ if (App.WaitForKeyboardToShow())
+ App.DismissKeyboard();
+#endif
+ Assert.That(App.WaitForElement("FocusedLabel").GetText(), Is.EqualTo("Focused: Event Triggered"));
}
- [Test, Order(2)]
+ [Test, Order(3)]
public void VerifyEntryTextChangedEvent()
{
@@ -60,20 +62,7 @@ public void VerifyEntryTextChangedEvent()
#endif
}
-
- [Test, Order(1)]
- public void VerifyEntryFocusedEvent()
- {
- App.WaitForElement("TestEntry");
- App.Tap("TestEntry");
-#if ANDROID || IOS
- if (App.WaitForKeyboardToShow())
- App.DismissKeyboard();
-#endif
- Assert.That(App.WaitForElement("FocusedLabel").GetText(), Is.EqualTo("Focused: Event Triggered"));
- }
-
- [Test, Order(3)]
+ [Test, Order(4)]
public void VerifyEntryUnfocusedEvent()
{
App.WaitForElement("TestEntry");
@@ -83,8 +72,18 @@ public void VerifyEntryUnfocusedEvent()
Assert.That(App.WaitForElement("UnfocusedLabel").GetText(), Is.EqualTo("Unfocused: Event Triggered"));
}
- [Test]
- public void VerifyClearButtonVisiblityWhenTextPresentOrEmpty()
+ [Test, Order(5)]
+ public void VerifyEntryCompletedEvent()
+ {
+ App.WaitForElement("TestEntry");
+ App.Tap("TestEntry");
+ App.PressEnter();
+ App.DismissKeyboard();
+ Assert.That(App.WaitForElement("CompletedLabel").GetText(), Is.EqualTo("Completed: Event Triggered"));
+ }
+
+ [Test, Order(6)]
+ public void VerifyClearButtonVisibilityWhenTextPresentOrEmpty()
{
Exception? exception = null;
App.WaitForElement("Options");
@@ -93,18 +92,18 @@ public void VerifyClearButtonVisiblityWhenTextPresentOrEmpty()
App.Tap("Apply");
App.WaitForElement("TestEntry");
App.Tap("TestEntry");
- VerifyScreenshotWithKeyboardHandlingOrSetException(ref exception, "ClearButtonVisiblityButton_TextPresent");
+ VerifyScreenshotWithKeyboardHandlingOrSetException(ref exception, "ClearButtonVisibilityButton_TextPresent");
App.WaitForElement("TestEntry");
App.ClearText("TestEntry");
- VerifyScreenshotWithKeyboardHandlingOrSetException(ref exception, "ClearButtonVisiblityButton_TextEmpty");
+ VerifyScreenshotWithKeyboardHandlingOrSetException(ref exception, "ClearButtonVisibilityButton_TextEmpty");
if (exception != null)
{
throw exception;
}
}
- [Test]
- public void VerifyClearButtonVisiblityWhenTextAlignedHorizontally()
+ [Test, Order(7)]
+ public void VerifyClearButtonVisibilityWhenTextAlignedHorizontally()
{
App.WaitForElement("Options");
App.Tap("Options");
@@ -117,8 +116,8 @@ public void VerifyClearButtonVisiblityWhenTextAlignedHorizontally()
VerifyScreenshotWithKeyboardHandling();
}
- [Test]
- public void VerifyClearButtonVisiblityWhenTextAlignedVertically()
+ [Test, Order(8)]
+ public void VerifyClearButtonVisibilityWhenTextAlignedVertically()
{
App.WaitForElement("Options");
App.Tap("Options");
@@ -132,8 +131,8 @@ public void VerifyClearButtonVisiblityWhenTextAlignedVertically()
}
#if TEST_FAILS_ON_IOS // When taking a screenshot of a password field (), iOS hides the password text for security reasons.
- [Test]
- public void VerifyClearButtonVisiblityWhenIsPasswordTrueOrFalse()
+ [Test, Order(9)]
+ public void VerifyClearButtonVisibilityWhenIsPasswordTrueOrFalse()
{
App.WaitForElement("Options");
App.Tap("Options");
@@ -148,7 +147,7 @@ public void VerifyClearButtonVisiblityWhenIsPasswordTrueOrFalse()
#endif
#if TEST_FAILS_ON_ANDROID //After setting IsReadOnly to true, the Cursor remains visible on Android even when IsCursorVisible is set to false, which is not the expected behavior.
- [Test]
+ [Test, Order(10)]
public void VerifyClearButtonVisibilityWhenIsReadOnlyTrue()
{
App.WaitForElement("Options");
@@ -163,8 +162,8 @@ public void VerifyClearButtonVisibilityWhenIsReadOnlyTrue()
}
#endif
- [Test]
- public void VerifyClearVisiblityButtonWhenTextColorChanged()
+ [Test, Order(11)]
+ public void VerifyClearVisibilityButtonWhenTextColorChanged()
{
App.WaitForElement("Options");
App.Tap("Options");
@@ -177,7 +176,7 @@ public void VerifyClearVisiblityButtonWhenTextColorChanged()
VerifyScreenshotWithKeyboardHandling();
}
- [Test]
+ [Test, Order(12)]
public void VerifyTextWhenClearButtonVisibleSetNever()
{
App.WaitForElement("Options");
@@ -192,8 +191,8 @@ public void VerifyTextWhenClearButtonVisibleSetNever()
}
- [Test]
- public void VerifyTextWhenAlingnedHorizontally()
+ [Test, Order(13)]
+ public void VerifyTextWhenAlignedHorizontally()
{
App.WaitForElement("Options");
App.Tap("Options");
@@ -205,9 +204,10 @@ public void VerifyTextWhenAlingnedHorizontally()
VerifyScreenshot(cropBottom: CropBottomValue);
}
- [Test]
- public void VerifyTextWhenAlingnedVertically()
+ [Test, Order(14)]
+ public void VerifyTextWhenAlignedVertically()
{
+ App.WaitForElement("Options");
App.Tap("Options");
App.WaitForElement("VEnd");
App.Tap("VEnd");
@@ -218,7 +218,7 @@ public void VerifyTextWhenAlingnedVertically()
}
#if TEST_FAILS_ON_ANDROID //After setting IsReadOnly to true, the Cursor remains visible on Android even when IsCursorVisible is set to false, which is not the expected behavior.
- [Test]
+ [Test, Order(15)]
public void VerifyTextEntryWhenSetAsReadOnly()
{
App.WaitForElement("Options");
@@ -234,7 +234,7 @@ public void VerifyTextEntryWhenSetAsReadOnly()
}
#endif
- [Test]
+ [Test, Order(16)]
public void VerifyTextWhenFontFamilySetValue()
{
App.WaitForElement("Options");
@@ -247,7 +247,7 @@ public void VerifyTextWhenFontFamilySetValue()
VerifyScreenshot(cropBottom: CropBottomValue);
}
- [Test]
+ [Test, Order(17)]
public void VerifyTextWhenCharacterSpacingSetValues()
{
App.WaitForElement("Options");
@@ -261,7 +261,7 @@ public void VerifyTextWhenCharacterSpacingSetValues()
VerifyScreenshot(cropBottom: CropBottomValue);
}
- [Test]
+ [Test, Order(18)]
public void VerifyHorizontalTextAlignmentBasedOnCharacterSpacing()
{
App.WaitForElement("Options");
@@ -277,7 +277,7 @@ public void VerifyHorizontalTextAlignmentBasedOnCharacterSpacing()
VerifyScreenshot(cropBottom: CropBottomValue);
}
- [Test]
+ [Test, Order(19)]
public void VerifyVerticalTextAlignmentBasedOnCharacterSpacing()
{
App.WaitForElement("Options");
@@ -298,7 +298,7 @@ public void VerifyVerticalTextAlignmentBasedOnCharacterSpacing()
}
#if TEST_FAILS_ON_IOS // When taking a screenshot of a password field (), iOS hides the password text for security reasons.
- [Test]
+ [Test, Order(20)]
public void VerifyIsPasswordBasedOnCharacterSpacing()
{
App.WaitForElement("Options");
@@ -315,7 +315,7 @@ public void VerifyIsPasswordBasedOnCharacterSpacing()
}
#endif
- [Test]
+ [Test, Order(21)]
public void VerifyCharacterSpacingWhenFontFamily()
{
App.WaitForElement("Options");
@@ -332,7 +332,7 @@ public void VerifyCharacterSpacingWhenFontFamily()
}
#if TEST_FAILS_ON_IOS // When taking a screenshot of a password field (), iOS hides the password text for security reasons.
- [Test]
+ [Test, Order(22)]
public void VerifyTextWhenIsPasswordTrueOrFalse()
{
App.WaitForElement("Options");
@@ -345,11 +345,13 @@ public void VerifyTextWhenIsPasswordTrueOrFalse()
VerifyScreenshot(cropBottom: CropBottomValue);
}
- [Test]
+ [Test, Order(23)]
public void VerifyIsPasswordBasedOnVerticalTextAlignment()
{
App.WaitForElement("Options");
App.Tap("Options");
+ App.WaitForElement("VEnd");
+ App.Tap("VEnd");
App.WaitForElement("PasswordTrue");
App.Tap("PasswordTrue");
App.WaitForElement("Apply");
@@ -358,7 +360,7 @@ public void VerifyIsPasswordBasedOnVerticalTextAlignment()
VerifyScreenshot(cropBottom: CropBottomValue);
}
- [Test]
+ [Test, Order(24)]
public void VerifyIsPasswordBasedOnHorizontalTextAlignment()
{
App.WaitForElement("Options");
@@ -373,14 +375,14 @@ public void VerifyIsPasswordBasedOnHorizontalTextAlignment()
VerifyScreenshot(cropBottom: CropBottomValue);
}
- [Test]
- public void VerifyIsPasswordWhenMaxLenghtSetValue()
+ [Test, Order(25)]
+ public void VerifyIsPasswordWhenMaxLengthSetValue()
{
App.WaitForElement("Options");
App.Tap("Options");
App.WaitForElement("TextEntryChanged");
App.ClearText("TextEntryChanged");
- App.EnterText("TextEntryChanged", "Test Entered Set MaxLenght");
+ App.EnterText("TextEntryChanged", "Test Entered Set MaxLength");
App.WaitForElement("MaxLength");
App.ClearText("MaxLength");
App.EnterText("MaxLength", "6");
@@ -390,7 +392,7 @@ public void VerifyIsPasswordWhenMaxLenghtSetValue()
}
#endif
- [Test]
+ [Test, Order(26)]
public void VerifyCharacterSpacingWhenMaxLengthSet()
{
App.WaitForElement("Options");
@@ -400,7 +402,7 @@ public void VerifyCharacterSpacingWhenMaxLengthSet()
App.EnterText("CharacterSpacing", "5");
App.WaitForElement("TextEntryChanged");
App.ClearText("TextEntryChanged");
- App.EnterText("TextEntryChanged", "Test Entered Set MaxLenght");
+ App.EnterText("TextEntryChanged", "Test Entered Set MaxLength");
App.WaitForElement("MaxLength");
App.ClearText("MaxLength");
App.EnterText("MaxLength", "6");
@@ -410,14 +412,14 @@ public void VerifyCharacterSpacingWhenMaxLengthSet()
VerifyScreenshot(cropBottom: CropBottomValue);
}
- [Test]
+ [Test, Order(27)]
public void VerifyTextWhenMaxLengthSetValue()
{
App.WaitForElement("Options");
App.Tap("Options");
App.WaitForElement("TextEntryChanged");
App.ClearText("TextEntryChanged");
- App.EnterText("TextEntryChanged", "Test Entered Set MaxLenght");
+ App.EnterText("TextEntryChanged", "Test Entered Set MaxLength");
App.WaitForElement("MaxLength");
App.ClearText("MaxLength");
App.EnterText("MaxLength", "6");
@@ -425,17 +427,20 @@ public void VerifyTextWhenMaxLengthSetValue()
App.Tap("Apply");
App.WaitForElement("TestEntry");
Assert.That(App.WaitForElement("TestEntry").GetText(), Is.EqualTo("Test E"));
+ App.ClearText("TestEntry");
+ App.EnterText("TestEntry", "1234567890");
+ Assert.That(App.WaitForElement("TestEntry").GetText(), Is.EqualTo("123456"));
}
#if TEST_FAILS_ON_ANDROID //After setting IsReadOnly to true, the Cursor remains visible on Android even when IsCursorVisible is set to false, which is not the expected behavior.
- [Test]
+ [Test, Order(28)]
public void VerifyMaxLengthWhenIsReadOnlyTrue()
{
App.WaitForElement("Options");
App.Tap("Options");
App.WaitForElement("TextEntryChanged");
App.ClearText("TextEntryChanged");
- App.EnterText("TextEntryChanged", "Test Entered Set MaxLenght");
+ App.EnterText("TextEntryChanged", "Test Entered Set MaxLength");
App.WaitForElement("ReadOnlyTrue");
App.Tap("ReadOnlyTrue");
App.WaitForElement("MaxLength");
@@ -447,11 +452,10 @@ public void VerifyMaxLengthWhenIsReadOnlyTrue()
// On Android, using App.EnterText in UI tests (e.g., with Appium UITest) can programmatically enter text into an Entry control even if its IsReadOnly property is set to true.
App.EnterText("TestEntry", "123");
Assert.That(App.WaitForElement("TestEntry").GetText(), Is.EqualTo("Test E"));
-
}
#endif
- [Test]
+ [Test, Order(29)]
public void VerifyHorizontalTextAlignmentWhenVerticalTextAlignmentSet()
{
App.WaitForElement("Options");
@@ -466,7 +470,7 @@ public void VerifyHorizontalTextAlignmentWhenVerticalTextAlignmentSet()
VerifyScreenshot(cropBottom: CropBottomValue);
}
- [Test]
+ [Test, Order(30)]
public void VerifyTextWhenTextColorSetCorrectly()
{
App.WaitForElement("Options");
@@ -479,7 +483,28 @@ public void VerifyTextWhenTextColorSetCorrectly()
VerifyScreenshot(cropBottom: CropBottomValue);
}
- [Test]
+ [Test, Order(31)]
+ public void VerifyTextColorResetToDefault()
+ {
+ App.WaitForElement("Options");
+ App.Tap("Options");
+ App.WaitForElement("TextColorRed");
+ App.Tap("TextColorRed");
+ App.WaitForElement("Apply");
+ App.Tap("Apply");
+ App.WaitForElement("TestEntry");
+
+ App.WaitForElement("Options");
+ App.Tap("Options");
+ App.WaitForElement("TextColorDefault");
+ App.Tap("TextColorDefault");
+ App.WaitForElement("Apply");
+ App.Tap("Apply");
+ App.WaitForElement("TestEntry");
+ VerifyScreenshot(cropBottom: CropBottomValue);
+ }
+
+ [Test, Order(32)]
public void VerifyTextWhenFontSizeSetCorrectly()
{
App.WaitForElement("Options");
@@ -494,7 +519,7 @@ public void VerifyTextWhenFontSizeSetCorrectly()
}
#if TEST_FAILS_ON_IOS // When taking a screenshot of a password field (), iOS hides the password text for security reasons.
- [Test]
+ [Test, Order(33)]
public void VerifyIsPasswordWhenFontSizeSet()
{
App.WaitForElement("Options");
@@ -509,9 +534,9 @@ public void VerifyIsPasswordWhenFontSizeSet()
}
#endif
-#if TEST_FAILS_ON_ANDROID && TEST_FAILS_ON_CATALYST && TEST_FAILS_ON_IOS && TEST_FAILS_ON_WINDOWS //related issue link: https://github.com/dotnet/maui/issues/29833
- [Test]
- public void VerifyTextWhenIsTextPredictionEnabledTrueOrFalse()
+ [Test, Order(34)]
+ [Ignore("This test is currently failing on All platforms. See issue link: https://github.com/dotnet/maui/issues/29833")]
+ public void VerifyTextWhenIsTextPredictionEnabledTrue()
{
App.WaitForElement("Options");
App.Tap("Options");
@@ -526,8 +551,9 @@ public void VerifyTextWhenIsTextPredictionEnabledTrueOrFalse()
Assert.That(App.WaitForElement("TestEntry").GetText(), Is.EqualTo("Testing "));
}
- [Test]
- public void VerifyTextWhenIsSpellCheckEnabledTrueOrFalse()
+ [Test, Order(35)]
+ [Ignore("This test is currently failing on All platforms. See issue link: https://github.com/dotnet/maui/issues/29833")]
+ public void VerifyTextWhenIsSpellCheckEnabledTrue()
{
App.WaitForElement("Options");
App.Tap("Options");
@@ -541,9 +567,8 @@ public void VerifyTextWhenIsSpellCheckEnabledTrueOrFalse()
App.EnterText("TestEntry", " ");
VerifyScreenshotWithKeyboardHandling();
}
-#endif
- [Test]
+ [Test, Order(36)]
public void VerifyTextWhenSelectionLengthSetValue()
{
App.WaitForElement("Options");
@@ -556,13 +581,15 @@ public void VerifyTextWhenSelectionLengthSetValue()
App.DismissKeyboard();
App.WaitForElement("UpdateCursorAndSelectionButton");
App.Tap("UpdateCursorAndSelectionButton");
+ App.WaitForElement("SelectionLengthEntry");
+ Assert.That(App.WaitForElement("SelectionLengthEntry").GetText(), Is.EqualTo("5"));
App.WaitForElement("TestEntry");
App.Tap("TestEntry");
App.DismissKeyboard();
Assert.That(App.WaitForElement("SelectionLengthEntry").GetText(), Is.EqualTo("0"));
}
- [Test]
+ [Test, Order(37)]
public void VerifyTextWhenCursorPositionValueSet()
{
App.WaitForElement("Options");
@@ -575,6 +602,8 @@ public void VerifyTextWhenCursorPositionValueSet()
App.DismissKeyboard();
App.WaitForElement("UpdateCursorAndSelectionButton");
App.Tap("UpdateCursorAndSelectionButton");
+ App.WaitForElement("CursorPositionEntry");
+ Assert.That(App.WaitForElement("CursorPositionEntry").GetText(), Is.EqualTo("5"));
App.WaitForElement("TestEntry");
App.Tap("TestEntry");
App.DismissKeyboard();
@@ -582,7 +611,7 @@ public void VerifyTextWhenCursorPositionValueSet()
}
#if TEST_FAILS_ON_IOS // When taking a screenshot of a password field (), iOS hides the password text for security reasons.
- [Test]
+ [Test, Order(38)]
public void VerifyIsPasswordWhenCursorPositionValueSet()
{
App.WaitForElement("Options");
@@ -597,6 +626,8 @@ public void VerifyIsPasswordWhenCursorPositionValueSet()
App.DismissKeyboard();
App.WaitForElement("UpdateCursorAndSelectionButton");
App.Tap("UpdateCursorAndSelectionButton");
+ App.WaitForElement("CursorPositionEntry");
+ Assert.That(App.WaitForElement("CursorPositionEntry").GetText(), Is.EqualTo("5"));
App.WaitForElement("TestEntry");
App.Tap("TestEntry");
App.DismissKeyboard();
@@ -604,7 +635,7 @@ public void VerifyIsPasswordWhenCursorPositionValueSet()
}
#endif
- [Test]
+ [Test, Order(39)]
public void VerifyCursorPositionWhenSelectionLengthSetValue()
{
App.WaitForElement("Options");
@@ -620,6 +651,9 @@ public void VerifyCursorPositionWhenSelectionLengthSetValue()
App.DismissKeyboard();
App.WaitForElement("UpdateCursorAndSelectionButton");
App.Tap("UpdateCursorAndSelectionButton");
+ App.WaitForElement("CursorPositionEntry");
+ Assert.That(App.WaitForElement("CursorPositionEntry").GetText(), Is.EqualTo("3"));
+ Assert.That(App.WaitForElement("SelectionLengthEntry").GetText(), Is.EqualTo("5"));
App.WaitForElement("TestEntry");
App.Tap("TestEntry");
App.DismissKeyboard();
@@ -629,7 +663,7 @@ public void VerifyCursorPositionWhenSelectionLengthSetValue()
#if TEST_FAILS_ON_ANDROID && TEST_FAILS_ON_WINDOWS // On Windows, cursor position and selection length still work when the Entry is set to read-only
//On android After setting IsReadOnly to true, the Cursor remains visible on Android even when IsCursorVisible is set to false, which is not the expected behavior.
- [Test]
+ [Test, Order(40)]
public void VerifyCursorPositionWhenIsReadOnlyTrue()
{
App.WaitForElement("Options");
@@ -643,8 +677,8 @@ public void VerifyCursorPositionWhenIsReadOnlyTrue()
Assert.That(App.WaitForElement("CursorPositionEntry").GetText(), Is.EqualTo("0"));
}
- [Test]
- public void VerifySelectionLenghtWhenIsReadOnlyTrue()
+ [Test, Order(41)]
+ public void VerifySelectionLengthWhenIsReadOnlyTrue()
{
App.WaitForElement("Options");
App.Tap("Options");
@@ -663,8 +697,8 @@ public void VerifySelectionLenghtWhenIsReadOnlyTrue()
}
#endif
- [Test]
- public void VerifyTextWhenReturmCommandAndReturnCommandParameter()
+ [Test, Order(42)]
+ public void VerifyTextWhenReturnCommandAndReturnCommandParameter()
{
App.WaitForElement("Options");
App.Tap("Options");
@@ -679,8 +713,8 @@ public void VerifyTextWhenReturmCommandAndReturnCommandParameter()
Assert.That(App.WaitForElement("TestEntry").GetText(), Is.EqualTo("Command Executed with Parameter"));
}
-#if TEST_FAILS_ON_CATALYST && TEST_FAILS_ON_WINDOWS //keybord type is not supported on Windows and Maccatalyst platforms
- [Test]
+#if TEST_FAILS_ON_CATALYST && TEST_FAILS_ON_WINDOWS && TEST_FAILS_ON_ANDROID //In Android related issue:https://github.com/dotnet/maui/issues/26968 and In mac and Windows keybord type is not supported.
+ [Test, Order(43)]
public void VerifyTextWhenKeyboardTypeSet()
{
App.WaitForElement("Options");
@@ -691,11 +725,10 @@ public void VerifyTextWhenKeyboardTypeSet()
App.Tap("Apply");
App.WaitForElement("TestEntry");
App.Tap("TestEntry");
- VerifyScreenshotWithKeyboardHandling();
+ VerifyScreenshot();
}
-#if TEST_FAILS_ON_ANDROID //related issue:https://github.com/dotnet/maui/issues/26968
- [Test]
+ [Test, Order(44)]
public void VerifyTextWhenReturnTypeSet()
{
App.WaitForElement("Options");
@@ -706,14 +739,12 @@ public void VerifyTextWhenReturnTypeSet()
App.Tap("Apply");
App.WaitForElement("TestEntry");
App.Tap("TestEntry");
- VerifyScreenshotWithKeyboardHandling();
+ VerifyScreenshot();
}
-
-#endif
#endif
#if TEST_FAILS_ON_ANDROID // On Android, using App.EnterText in UI tests (e.g., with Appium UITest) can programmatically enter text into an Entry control even if its IsEnabled property is set to false.
- [Test]
+ [Test, Order(45)]
public void VerifyEntryControlWhenIsEnabledTrueOrFalse()
{
App.WaitForElement("Options");
@@ -737,14 +768,9 @@ public void VerifyEntryControlWhenIsEnabledTrueOrFalse()
}
#endif
- [Test]
- public void VerifyEntryControlWhenIsVisibleTrueOrFalse()
+ [Test, Order(46)]
+ public void VerifyEntryControlWhenIsVisibleFalse()
{
- App.WaitForElement("Options");
- App.Tap("Options");
- App.WaitForElement("Apply");
- App.Tap("Apply");
- App.WaitForElement("TestEntry");
App.WaitForElement("Options");
App.Tap("Options");
App.WaitForElement("VisibleFalse");
@@ -754,7 +780,7 @@ public void VerifyEntryControlWhenIsVisibleTrueOrFalse()
App.WaitForNoElement("TestEntry");
}
- [Test]
+ [Test, Order(47)]
public void VerifyEntryControlWhenFlowDirectionSet()
{
App.WaitForElement("Options");
@@ -767,7 +793,7 @@ public void VerifyEntryControlWhenFlowDirectionSet()
VerifyScreenshot(cropBottom: CropBottomValue);
}
- [Test]
+ [Test, Order(48)]
public void VerifyPlaceholderWhenFlowDirectionSet()
{
App.WaitForElement("Options");
@@ -783,7 +809,7 @@ public void VerifyPlaceholderWhenFlowDirectionSet()
}
- [Test]
+ [Test, Order(49)]
public void VerifyEntryControlWhenPlaceholderTextSet()
{
App.WaitForElement("Options");
@@ -799,7 +825,7 @@ public void VerifyEntryControlWhenPlaceholderTextSet()
VerifyScreenshot(cropBottom: CropBottomValue);
}
- [Test]
+ [Test, Order(50)]
public void VerifyEntryControlWhenPlaceholderColorSet()
{
App.WaitForElement("Options");
@@ -814,8 +840,33 @@ public void VerifyEntryControlWhenPlaceholderColorSet()
VerifyScreenshot(cropBottom: CropBottomValue);
}
- [Test]
- public void VerifyEntryWhenTextChanged()
+ [Test, Order(51)]
+ public void VerifyPlaceholderColorResetToDefault()
+ {
+ App.WaitForElement("Options");
+ App.Tap("Options");
+ App.WaitForElement("PlaceholderColorRed");
+ App.Tap("PlaceholderColorRed");
+ App.WaitForElement("TextEntryChanged");
+ App.ClearText("TextEntryChanged");
+ App.WaitForElement("Apply");
+ App.Tap("Apply");
+ App.WaitForElement("TestEntry");
+
+ App.WaitForElement("Options");
+ App.Tap("Options");
+ App.WaitForElement("PlaceholderColorDefault");
+ App.Tap("PlaceholderColorDefault");
+ App.WaitForElement("TextEntryChanged");
+ App.ClearText("TextEntryChanged");
+ App.WaitForElement("Apply");
+ App.Tap("Apply");
+ App.WaitForElement("TestEntry");
+ VerifyScreenshot(cropBottom: CropBottomValue);
+ }
+
+ [Test, Order(52)]
+ public void VerifyEntryWhenTextDynamicallyUpdated()
{
App.WaitForElement("Options");
App.Tap("Options");
@@ -827,7 +878,7 @@ public void VerifyEntryWhenTextChanged()
Assert.That(App.WaitForElement("TestEntry").GetText(), Is.EqualTo("New Text Changed"));
}
- [Test]
+ [Test, Order(53)]
public void VerifyTextWhenFontAttributesSet()
{
App.WaitForElement("Options");
@@ -840,8 +891,8 @@ public void VerifyTextWhenFontAttributesSet()
VerifyScreenshot(cropBottom: CropBottomValue);
}
- [Test]
- public void VerifyTextWhenTextTransFormSet()
+ [Test, Order(54)]
+ public void VerifyTextWhenTextTransformSet()
{
App.WaitForElement("Options");
App.Tap("Options");
@@ -854,7 +905,7 @@ public void VerifyTextWhenTextTransFormSet()
}
#if TEST_FAILS_ON_WINDOWS //related issue link: https://github.com/dotnet/maui/issues/29812
- [Test]
+ [Test, Order(55)]
public void VerifyEntry_WithShadow()
{
App.WaitForElement("Options");
@@ -869,7 +920,7 @@ public void VerifyEntry_WithShadow()
VerifyScreenshot(cropBottom: CropBottomValue);
}
- [Test]
+ [Test, Order(56)]
public void VerifyPlaceholderWithShadow()
{
App.WaitForElement("Options");
@@ -885,7 +936,7 @@ public void VerifyPlaceholderWithShadow()
}
#endif
- [Test]
+ [Test, Order(57)]
public void VerifyPlaceholderWithClearButtonVisible()
{
App.WaitForElement("Options");
@@ -899,7 +950,7 @@ public void VerifyPlaceholderWithClearButtonVisible()
VerifyScreenshotWithKeyboardHandling("PlaceholderWithClearButtonVisible");
}
- [Test]
+ [Test, Order(58)]
public void VerifyPlaceholderWithPasswordTrue()
{
App.WaitForElement("Options");
@@ -917,7 +968,7 @@ public void VerifyPlaceholderWithPasswordTrue()
VerifyScreenshot(cropBottom: CropBottomValue);
}
- [Test]
+ [Test, Order(59)]
public void VerifyPlaceholderWithHorizontalAlignment()
{
App.WaitForElement("Options");
@@ -932,7 +983,7 @@ public void VerifyPlaceholderWithHorizontalAlignment()
VerifyScreenshot(cropBottom: CropBottomValue);
}
- [Test]
+ [Test, Order(60)]
public void VerifyPlaceholderWithVerticalAlignment()
{
App.WaitForElement("Options");
@@ -948,7 +999,7 @@ public void VerifyPlaceholderWithVerticalAlignment()
}
#if TEST_FAILS_ON_WINDOWS //related issue link: https://github.com/dotnet/maui/issues/30071
- [Test]
+ [Test, Order(61)]
public void VerifyPlaceholderWithCharacterSpacing()
{
App.WaitForElement("Options");
@@ -965,7 +1016,7 @@ public void VerifyPlaceholderWithCharacterSpacing()
}
#endif
- [Test]
+ [Test, Order(62)]
public void VerifyPlaceholderWithFontFamily()
{
App.WaitForElement("Options");
@@ -980,7 +1031,7 @@ public void VerifyPlaceholderWithFontFamily()
VerifyScreenshot(cropBottom: CropBottomValue);
}
- [Test]
+ [Test, Order(63)]
public void VerifyPlaceholderWithFontSize()
{
App.WaitForElement("Options");
@@ -996,7 +1047,7 @@ public void VerifyPlaceholderWithFontSize()
VerifyScreenshot(cropBottom: CropBottomValue);
}
- [Test]
+ [Test, Order(64)]
public void VerifyPlaceholderWithFontAttributes()
{
App.WaitForElement("Options");
@@ -1011,6 +1062,224 @@ public void VerifyPlaceholderWithFontAttributes()
VerifyScreenshot(cropBottom: CropBottomValue);
}
+ [Test, Order(65)]
+ public void VerifyEntryWhenWidthRequestSet()
+ {
+ App.WaitForElement("Options");
+ App.Tap("Options");
+ App.WaitForElement("WidthRequest");
+ App.ClearText("WidthRequest");
+ App.EnterText("WidthRequest", "150");
+ App.WaitForElement("Apply");
+ App.Tap("Apply");
+ App.WaitForElement("TestEntry");
+ var width = GetElementWidthInDip("TestEntry");
+ Assert.That(width, Is.EqualTo(150).Within(5));
+ }
+
+ [Test, Order(66)]
+ public void VerifyEntryWhenHeightRequestSet()
+ {
+ App.WaitForElement("Options");
+ App.Tap("Options");
+ App.WaitForElement("HeightRequest");
+ App.ClearText("HeightRequest");
+ App.EnterText("HeightRequest", "80");
+ App.WaitForElement("Apply");
+ App.Tap("Apply");
+ App.WaitForElement("TestEntry");
+ var height = GetElementHeightInDip("TestEntry");
+ Assert.That(height, Is.EqualTo(80).Within(5));
+ }
+
+ [Test, Order(67)]
+ public void VerifyEntryWhenHeightRequestAndWidthRequestSet()
+ {
+ App.WaitForElement("Options");
+ App.Tap("Options");
+ App.WaitForElement("HeightRequest");
+ App.ClearText("HeightRequest");
+ App.EnterText("HeightRequest", "100");
+ App.WaitForElement("WidthRequest");
+ App.ClearText("WidthRequest");
+ App.EnterText("WidthRequest", "150");
+ App.WaitForElement("Apply");
+ App.Tap("Apply");
+ App.WaitForElement("TestEntry");
+ var height = GetElementHeightInDip("TestEntry");
+ var width = GetElementWidthInDip("TestEntry");
+ Assert.That(height, Is.EqualTo(100).Within(5));
+ Assert.That(width, Is.EqualTo(150).Within(5));
+ }
+
+ [Test, Order(68)]
+ public void VerifyEntryWhenOpacitySet()
+ {
+ App.WaitForElement("Options");
+ App.Tap("Options");
+ App.WaitForElement("OpacityEntry");
+ App.ClearText("OpacityEntry");
+ App.EnterText("OpacityEntry", "0.5");
+ App.WaitForElement("Apply");
+ App.Tap("Apply");
+ App.WaitForElement("TestEntry");
+ VerifyScreenshot(cropBottom: CropBottomValue);
+ }
+
+ [Test, Order(69)]
+ public void VerifyEntryWhenOpacityResetToDefault()
+ {
+ App.WaitForElement("Options");
+ App.Tap("Options");
+ App.WaitForElement("OpacityEntry");
+ App.ClearText("OpacityEntry");
+ App.EnterText("OpacityEntry", "0.5");
+ App.WaitForElement("Apply");
+ App.Tap("Apply");
+ App.WaitForElement("Options");
+ App.Tap("Options");
+ App.WaitForElement("OpacityEntry");
+ App.ClearText("OpacityEntry");
+ App.EnterText("OpacityEntry", "1.0");
+ App.WaitForElement("Apply");
+ App.Tap("Apply");
+ App.WaitForElement("TestEntry");
+ VerifyScreenshot(cropBottom: CropBottomValue);
+ }
+
+ [Test, Order(70)]
+ public void VerifyEntryWhenOpacitySetToZero()
+ {
+ App.WaitForElement("Options");
+ App.Tap("Options");
+ App.WaitForElement("OpacityEntry");
+ App.ClearText("OpacityEntry");
+ App.EnterText("OpacityEntry", "0");
+ App.WaitForElement("Apply");
+ App.Tap("Apply");
+ App.WaitForNoElement("TestEntry");
+ }
+
+ [Test, Order(71)]
+ public void VerifyEntryWhenBackgroundColorSet()
+ {
+ App.WaitForElement("Options");
+ App.Tap("Options");
+ App.WaitForElement("BackgroundColorLightBlue");
+ App.Tap("BackgroundColorLightBlue");
+ App.WaitForElement("Apply");
+ App.Tap("Apply");
+ App.WaitForElement("TestEntry");
+ VerifyScreenshot(cropBottom: CropBottomValue);
+ }
+ [Test, Order(72)]
+ public void VerifyTextWhenBoldAndItalicFontAttributesSet()
+ {
+ App.WaitForElement("Options");
+ App.Tap("Options");
+ App.WaitForElement("FontAttributesBold");
+ App.Tap("FontAttributesBold");
+ App.WaitForElement("FontAttributesItalic");
+ App.Tap("FontAttributesItalic");
+ App.WaitForElement("Apply");
+ App.Tap("Apply");
+ App.WaitForElement("TestEntry");
+ VerifyScreenshot(cropBottom: CropBottomValue);
+ }
+
+ [Test, Order(73)]
+ public void VerifyPlaceholderTextWhenBoldAndItalicFontAttributesSet()
+ {
+ App.WaitForElement("Options");
+ App.Tap("Options");
+ App.WaitForElement("FontAttributesBold");
+ App.Tap("FontAttributesBold");
+ App.WaitForElement("FontAttributesItalic");
+ App.Tap("FontAttributesItalic");
+ App.WaitForElement("PlaceholderText");
+ App.ClearText("PlaceholderText");
+ App.EnterText("PlaceholderText", "Enter your name");
+ App.WaitForElement("Apply");
+ App.Tap("Apply");
+ App.WaitForElement("TestEntry");
+ App.ClearText("TestEntry");
+ App.DismissKeyboard();
+ VerifyScreenshot(cropBottom: CropBottomValue);
+ }
+
+ [Test, Order(74)]
+ public void VerifyEntryBackgroundColorWithTextColor()
+ {
+ App.WaitForElement("Options");
+ App.Tap("Options");
+ App.WaitForElement("BackgroundColorYellow");
+ App.Tap("BackgroundColorYellow");
+ App.WaitForElement("TextColorRed");
+ App.Tap("TextColorRed");
+ App.WaitForElement("Apply");
+ App.Tap("Apply");
+ App.WaitForElement("TestEntry");
+ VerifyScreenshot(cropBottom: CropBottomValue);
+ }
+
+ [Test, Order(75)]
+ public void VerifyEntryBackgroundColorWithPlaceholderText()
+ {
+ App.WaitForElement("Options");
+ App.Tap("Options");
+ App.WaitForElement("BackgroundColorLightBlue");
+ App.Tap("BackgroundColorLightBlue");
+ App.WaitForElement("PlaceholderText");
+ App.ClearText("PlaceholderText");
+ App.EnterText("PlaceholderText", "Enter your name");
+ App.WaitForElement("Apply");
+ App.Tap("Apply");
+ App.WaitForElement("TestEntry");
+ App.ClearText("TestEntry");
+ App.DismissKeyboard();
+ VerifyScreenshot(cropBottom: CropBottomValue);
+ }
+
+ [Test, Order(76)]
+ public void VerifyEntryBackgroundColorWithPlaceholderColor()
+ {
+ App.WaitForElement("Options");
+ App.Tap("Options");
+ App.WaitForElement("BackgroundColorYellow");
+ App.Tap("BackgroundColorYellow");
+ App.WaitForElement("PlaceholderColorRed");
+ App.Tap("PlaceholderColorRed");
+ App.WaitForElement("TextEntryChanged");
+ App.ClearText("TextEntryChanged");
+ App.WaitForElement("Apply");
+ App.Tap("Apply");
+ App.WaitForElement("TestEntry");
+ VerifyScreenshot(cropBottom: CropBottomValue);
+ }
+
+#if TEST_FAILS_ON_CATALYST && TEST_FAILS_ON_IOS //related issue link: https://github.com/dotnet/maui/issues/34611
+ [Test, Order(77)]
+ public void VerifyEntryBackgroundColorResetToDefault()
+ {
+ App.WaitForElement("Options");
+ App.Tap("Options");
+ App.WaitForElement("BackgroundColorYellow");
+ App.Tap("BackgroundColorYellow");
+ App.WaitForElement("Apply");
+ App.Tap("Apply");
+ App.WaitForElement("TestEntry");
+ App.WaitForElement("Options");
+ App.Tap("Options");
+ App.WaitForElement("BackgroundColorDefault");
+ App.Tap("BackgroundColorDefault");
+ App.WaitForElement("Apply");
+ App.Tap("Apply");
+ App.WaitForElement("TestEntry");
+ VerifyScreenshot(cropBottom: CropBottomValue);
+ }
+#endif
+
+
///
/// Helper method to handle keyboard visibility and take a screenshot with appropriate cropping
///
@@ -1043,4 +1312,21 @@ private void VerifyScreenshotWithKeyboardHandlingOrSetException(ref Exception? e
VerifyScreenshotOrSetException(ref exception, screenshotName, cropBottom: CropBottomValue);
}
-}
\ No newline at end of file
+
+ private double GetElementHeightInDip(string automationId)
+ => GetElementSizeInDip(automationId).Height;
+
+ private double GetElementWidthInDip(string automationId)
+ => GetElementSizeInDip(automationId).Width;
+
+ private (double Width, double Height) GetElementSizeInDip(string automationId)
+ {
+ var rect = App.WaitForElement(automationId).GetRect();
+#if ANDROID || WINDOWS
+ var density = App.GetDisplayDensity();
+ if (density > 0)
+ return (rect.Width / density, rect.Height / density);
+#endif
+ return (rect.Width, rect.Height);
+ }
+}
diff --git a/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/ClearButtonVisiblityButton_TextEmpty.png b/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/ClearButtonVisibilityButton_TextEmpty.png
similarity index 100%
rename from src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/ClearButtonVisiblityButton_TextEmpty.png
rename to src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/ClearButtonVisibilityButton_TextEmpty.png
diff --git a/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/ClearButtonVisiblityButton_TextPresent.png b/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/ClearButtonVisibilityButton_TextPresent.png
similarity index 100%
rename from src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/ClearButtonVisiblityButton_TextPresent.png
rename to src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/ClearButtonVisibilityButton_TextPresent.png
diff --git a/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyClearButtonVisiblityWhenIsPasswordTrueOrFalse.png b/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyClearButtonVisibilityWhenIsPasswordTrueOrFalse.png
similarity index 100%
rename from src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyClearButtonVisiblityWhenIsPasswordTrueOrFalse.png
rename to src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyClearButtonVisibilityWhenIsPasswordTrueOrFalse.png
diff --git a/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyClearButtonVisiblityWhenTextAlignedHorizontally.png b/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyClearButtonVisibilityWhenTextAlignedHorizontally.png
similarity index 100%
rename from src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyClearButtonVisiblityWhenTextAlignedHorizontally.png
rename to src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyClearButtonVisibilityWhenTextAlignedHorizontally.png
diff --git a/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyClearButtonVisiblityWhenTextAlignedVertically.png b/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyClearButtonVisibilityWhenTextAlignedVertically.png
similarity index 100%
rename from src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyClearButtonVisiblityWhenTextAlignedVertically.png
rename to src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyClearButtonVisibilityWhenTextAlignedVertically.png
diff --git a/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyClearVisiblityButtonWhenTextColorChanged.png b/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyClearVisibilityButtonWhenTextColorChanged.png
similarity index 100%
rename from src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyClearVisiblityButtonWhenTextColorChanged.png
rename to src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyClearVisibilityButtonWhenTextColorChanged.png
diff --git a/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyIsPasswordWhenMaxLenghtSetValue.png b/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyIsPasswordWhenMaxLengthSetValue.png
similarity index 100%
rename from src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyIsPasswordWhenMaxLenghtSetValue.png
rename to src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyIsPasswordWhenMaxLengthSetValue.png
diff --git a/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyTextWhenAlingnedHorizontally.png b/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyTextWhenAlignedHorizontally.png
similarity index 100%
rename from src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyTextWhenAlingnedHorizontally.png
rename to src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyTextWhenAlignedHorizontally.png
diff --git a/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyTextWhenAlingnedVertically.png b/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyTextWhenAlignedVertically.png
similarity index 100%
rename from src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyTextWhenAlingnedVertically.png
rename to src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/VerifyTextWhenAlignedVertically.png
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/ClearButtonVisibilityButton_TextEmpty.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/ClearButtonVisibilityButton_TextEmpty.png
new file mode 100644
index 000000000000..2f4ceb9ed62a
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/ClearButtonVisibilityButton_TextEmpty.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/ClearButtonVisibilityButton_TextPresent.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/ClearButtonVisibilityButton_TextPresent.png
new file mode 100644
index 000000000000..8b7b1a2c2c04
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/ClearButtonVisibilityButton_TextPresent.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/ClearButtonVisiblityButton_TextEmpty.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/ClearButtonVisiblityButton_TextEmpty.png
deleted file mode 100644
index 40f49ec1b837..000000000000
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/ClearButtonVisiblityButton_TextEmpty.png and /dev/null differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/ClearButtonVisiblityButton_TextPresent.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/ClearButtonVisiblityButton_TextPresent.png
deleted file mode 100644
index e7ad22ff3128..000000000000
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/ClearButtonVisiblityButton_TextPresent.png and /dev/null differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/PlaceholderWithClearButtonVisible.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/PlaceholderWithClearButtonVisible.png
index 53b3ee1eba17..4305391ab803 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/PlaceholderWithClearButtonVisible.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/PlaceholderWithClearButtonVisible.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyCharacterSpacingWhenFontFamily.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyCharacterSpacingWhenFontFamily.png
index bb505e2c909a..0bd01c85131e 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyCharacterSpacingWhenFontFamily.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyCharacterSpacingWhenFontFamily.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyCharacterSpacingWhenMaxLengthSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyCharacterSpacingWhenMaxLengthSet.png
index 49be1d990688..d579ead8b5a0 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyCharacterSpacingWhenMaxLengthSet.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyCharacterSpacingWhenMaxLengthSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearButtonVisibilityWhenIsReadOnlyTrue.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearButtonVisibilityWhenIsReadOnlyTrue.png
index 30eb0b935cf5..ecc9e9cee729 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearButtonVisibilityWhenIsReadOnlyTrue.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearButtonVisibilityWhenIsReadOnlyTrue.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearButtonVisibilityWhenTextAlignedHorizontally.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearButtonVisibilityWhenTextAlignedHorizontally.png
new file mode 100644
index 000000000000..55ac813cb754
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearButtonVisibilityWhenTextAlignedHorizontally.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearButtonVisibilityWhenTextAlignedVertically.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearButtonVisibilityWhenTextAlignedVertically.png
new file mode 100644
index 000000000000..53c4109e83db
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearButtonVisibilityWhenTextAlignedVertically.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearButtonVisiblityWhenTextAlignedHorizontally.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearButtonVisiblityWhenTextAlignedHorizontally.png
deleted file mode 100644
index 25a4189a7ff4..000000000000
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearButtonVisiblityWhenTextAlignedHorizontally.png and /dev/null differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearButtonVisiblityWhenTextAlignedVertically.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearButtonVisiblityWhenTextAlignedVertically.png
deleted file mode 100644
index 9aece2e4f40f..000000000000
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearButtonVisiblityWhenTextAlignedVertically.png and /dev/null differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearVisibilityButtonWhenTextColorChanged.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearVisibilityButtonWhenTextColorChanged.png
new file mode 100644
index 000000000000..65b38f907585
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearVisibilityButtonWhenTextColorChanged.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearVisiblityButtonWhenTextColorChanged.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearVisiblityButtonWhenTextColorChanged.png
deleted file mode 100644
index 3e9d01794b3c..000000000000
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyClearVisiblityButtonWhenTextColorChanged.png and /dev/null differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryBackgroundColorWithPlaceholderColor.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryBackgroundColorWithPlaceholderColor.png
new file mode 100644
index 000000000000..5e44dee4c719
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryBackgroundColorWithPlaceholderColor.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryBackgroundColorWithPlaceholderText.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryBackgroundColorWithPlaceholderText.png
new file mode 100644
index 000000000000..43ea5e9e723d
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryBackgroundColorWithPlaceholderText.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryBackgroundColorWithTextColor.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryBackgroundColorWithTextColor.png
new file mode 100644
index 000000000000..925b92341889
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryBackgroundColorWithTextColor.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryControlWhenFlowDirectionSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryControlWhenFlowDirectionSet.png
index 4a0288a03fc0..538ec6bd3394 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryControlWhenFlowDirectionSet.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryControlWhenFlowDirectionSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryControlWhenPlaceholderColorSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryControlWhenPlaceholderColorSet.png
index bd5a99b3eef7..5368c29d14c6 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryControlWhenPlaceholderColorSet.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryControlWhenPlaceholderColorSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryControlWhenPlaceholderTextSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryControlWhenPlaceholderTextSet.png
index cb053e91b735..e28427e32816 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryControlWhenPlaceholderTextSet.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryControlWhenPlaceholderTextSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryWhenBackgroundColorSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryWhenBackgroundColorSet.png
new file mode 100644
index 000000000000..cf61d8fb76b0
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryWhenBackgroundColorSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryWhenOpacityResetToDefault.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryWhenOpacityResetToDefault.png
new file mode 100644
index 000000000000..2a105d968e20
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryWhenOpacityResetToDefault.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryWhenOpacitySet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryWhenOpacitySet.png
new file mode 100644
index 000000000000..f325d4e9a785
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntryWhenOpacitySet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntry_WithShadow.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntry_WithShadow.png
index f44306d7bcb9..2ea085572bd6 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntry_WithShadow.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyEntry_WithShadow.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyHorizontalTextAlignmentBasedOnCharacterSpacing.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyHorizontalTextAlignmentBasedOnCharacterSpacing.png
index 730b971ee48b..49d798489175 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyHorizontalTextAlignmentBasedOnCharacterSpacing.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyHorizontalTextAlignmentBasedOnCharacterSpacing.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyHorizontalTextAlignmentWhenVerticalTextAlignmentSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyHorizontalTextAlignmentWhenVerticalTextAlignmentSet.png
index ef39514e6019..f30e885c75f9 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyHorizontalTextAlignmentWhenVerticalTextAlignmentSet.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyHorizontalTextAlignmentWhenVerticalTextAlignmentSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderColorResetToDefault.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderColorResetToDefault.png
new file mode 100644
index 000000000000..e1aa763a4aa3
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderColorResetToDefault.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderTextWhenBoldAndItalicFontAttributesSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderTextWhenBoldAndItalicFontAttributesSet.png
new file mode 100644
index 000000000000..e5eae5b79737
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderTextWhenBoldAndItalicFontAttributesSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWhenFlowDirectionSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWhenFlowDirectionSet.png
index 23be83c55db0..ac7c5fadad8a 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWhenFlowDirectionSet.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWhenFlowDirectionSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithCharacterSpacing.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithCharacterSpacing.png
index 205fa654bc92..bed76526d166 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithCharacterSpacing.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithCharacterSpacing.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithFontAttributes.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithFontAttributes.png
index 57cce2bb6579..1cbf1b6f1ef5 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithFontAttributes.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithFontAttributes.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithFontFamily.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithFontFamily.png
index 6ce957925bdc..260ebf282a31 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithFontFamily.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithFontFamily.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithFontSize.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithFontSize.png
index 756e8c645b1b..ec3243fc1ea5 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithFontSize.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithFontSize.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithHorizontalAlignment.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithHorizontalAlignment.png
index 34974d13c6b1..a7ab0d6c1b03 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithHorizontalAlignment.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithHorizontalAlignment.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithPasswordTrue.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithPasswordTrue.png
index 21f38b227e0c..ef4282bd23db 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithPasswordTrue.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithPasswordTrue.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithShadow.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithShadow.png
index be4baad62556..cd38bc29c25b 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithShadow.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithShadow.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithVerticalAlignment.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithVerticalAlignment.png
index ffb2042f81e2..044047f74d2f 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithVerticalAlignment.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyPlaceholderWithVerticalAlignment.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextColorResetToDefault.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextColorResetToDefault.png
new file mode 100644
index 000000000000..5a3af12525fa
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextColorResetToDefault.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenAlignedHorizontally.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenAlignedHorizontally.png
new file mode 100644
index 000000000000..3f3897adef42
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenAlignedHorizontally.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenAlignedVertically.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenAlignedVertically.png
new file mode 100644
index 000000000000..ce8640f4dca7
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenAlignedVertically.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenAlingnedHorizontally.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenAlingnedHorizontally.png
deleted file mode 100644
index bb0fd4a2574e..000000000000
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenAlingnedHorizontally.png and /dev/null differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenAlingnedVertically.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenAlingnedVertically.png
deleted file mode 100644
index 75f4f87fb0ed..000000000000
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenAlingnedVertically.png and /dev/null differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenBoldAndItalicFontAttributesSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenBoldAndItalicFontAttributesSet.png
new file mode 100644
index 000000000000..35ab1605b375
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenBoldAndItalicFontAttributesSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenCharacterSpacingSetValues.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenCharacterSpacingSetValues.png
index 863734ff992a..0fd370fc002d 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenCharacterSpacingSetValues.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenCharacterSpacingSetValues.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenClearButtonVisibleSetNever.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenClearButtonVisibleSetNever.png
index 074f7f1d7dcc..e244b9d0880f 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenClearButtonVisibleSetNever.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenClearButtonVisibleSetNever.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenFontAttributesSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenFontAttributesSet.png
index bc9fd4ba012e..682253119f37 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenFontAttributesSet.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenFontAttributesSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenFontFamilySetValue.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenFontFamilySetValue.png
index 59963697baf3..16f7b1f55118 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenFontFamilySetValue.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenFontFamilySetValue.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenFontSizeSetCorrectly.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenFontSizeSetCorrectly.png
index 8fae1d640997..9a9b4dcff7a7 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenFontSizeSetCorrectly.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenFontSizeSetCorrectly.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenKeyboardTypeSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenKeyboardTypeSet.png
index dea03c7cfd62..9f1c1782b855 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenKeyboardTypeSet.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenKeyboardTypeSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenReturnTypeSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenReturnTypeSet.png
index baed68a833c9..4a5f6db10386 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenReturnTypeSet.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenReturnTypeSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenTextColorSetCorrectly.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenTextColorSetCorrectly.png
index 8ffdd7c913db..81ad2c7fbceb 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenTextColorSetCorrectly.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyTextWhenTextColorSetCorrectly.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyVerticalTextAlignmentBasedOnCharacterSpacing.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyVerticalTextAlignmentBasedOnCharacterSpacing.png
index d13ea3558a23..aa7f162ce41f 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyVerticalTextAlignmentBasedOnCharacterSpacing.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios-26/VerifyVerticalTextAlignmentBasedOnCharacterSpacing.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/ClearButtonVisibilityButton_TextEmpty.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/ClearButtonVisibilityButton_TextEmpty.png
new file mode 100644
index 000000000000..260fe06220eb
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/ClearButtonVisibilityButton_TextEmpty.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/ClearButtonVisibilityButton_TextPresent.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/ClearButtonVisibilityButton_TextPresent.png
new file mode 100644
index 000000000000..977b9ae38b30
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/ClearButtonVisibilityButton_TextPresent.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/ClearButtonVisiblityButton_TextEmpty.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/ClearButtonVisiblityButton_TextEmpty.png
deleted file mode 100644
index f0188bcb6bbd..000000000000
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/ClearButtonVisiblityButton_TextEmpty.png and /dev/null differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/ClearButtonVisiblityButton_TextPresent.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/ClearButtonVisiblityButton_TextPresent.png
deleted file mode 100644
index dcd269ae9055..000000000000
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/ClearButtonVisiblityButton_TextPresent.png and /dev/null differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/PlaceholderWithClearButtonVisible.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/PlaceholderWithClearButtonVisible.png
index cfb877e9d67f..15a9c0fe6631 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/PlaceholderWithClearButtonVisible.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/PlaceholderWithClearButtonVisible.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyClearButtonVisibilityWhenTextAlignedHorizontally.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyClearButtonVisibilityWhenTextAlignedHorizontally.png
new file mode 100644
index 000000000000..eb3c25bc386e
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyClearButtonVisibilityWhenTextAlignedHorizontally.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyClearButtonVisibilityWhenTextAlignedVertically.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyClearButtonVisibilityWhenTextAlignedVertically.png
new file mode 100644
index 000000000000..1b681769c1bb
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyClearButtonVisibilityWhenTextAlignedVertically.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyClearButtonVisiblityWhenTextAlignedHorizontally.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyClearButtonVisiblityWhenTextAlignedHorizontally.png
deleted file mode 100644
index 983d8edf2283..000000000000
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyClearButtonVisiblityWhenTextAlignedHorizontally.png and /dev/null differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyClearButtonVisiblityWhenTextAlignedVertically.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyClearButtonVisiblityWhenTextAlignedVertically.png
deleted file mode 100644
index 6926d1969238..000000000000
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyClearButtonVisiblityWhenTextAlignedVertically.png and /dev/null differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyClearVisiblityButtonWhenTextColorChanged.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyClearVisibilityButtonWhenTextColorChanged.png
similarity index 100%
rename from src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyClearVisiblityButtonWhenTextColorChanged.png
rename to src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyClearVisibilityButtonWhenTextColorChanged.png
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryBackgroundColorWithPlaceholderColor.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryBackgroundColorWithPlaceholderColor.png
new file mode 100644
index 000000000000..27121595d1dd
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryBackgroundColorWithPlaceholderColor.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryBackgroundColorWithPlaceholderText.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryBackgroundColorWithPlaceholderText.png
new file mode 100644
index 000000000000..55311a51c2d7
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryBackgroundColorWithPlaceholderText.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryBackgroundColorWithTextColor.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryBackgroundColorWithTextColor.png
new file mode 100644
index 000000000000..88fb3e254407
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryBackgroundColorWithTextColor.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryControlWhenPlaceholderTextSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryControlWhenPlaceholderTextSet.png
index 6279848fee75..f3cdc59b1544 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryControlWhenPlaceholderTextSet.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryControlWhenPlaceholderTextSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryWhenBackgroundColorSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryWhenBackgroundColorSet.png
new file mode 100644
index 000000000000..437b094874bd
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryWhenBackgroundColorSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryWhenOpacityResetToDefault.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryWhenOpacityResetToDefault.png
new file mode 100644
index 000000000000..2baf3223e7bb
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryWhenOpacityResetToDefault.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryWhenOpacitySet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryWhenOpacitySet.png
new file mode 100644
index 000000000000..8f583602a723
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntryWhenOpacitySet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntry_WithShadow.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntry_WithShadow.png
index 062158dc2721..f68ebadc15c4 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntry_WithShadow.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyEntry_WithShadow.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyHorizontalTextAlignmentWhenVerticalTextAlignmentSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyHorizontalTextAlignmentWhenVerticalTextAlignmentSet.png
index 0eaffb29fbbc..25defa6ea509 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyHorizontalTextAlignmentWhenVerticalTextAlignmentSet.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyHorizontalTextAlignmentWhenVerticalTextAlignmentSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderColorResetToDefault.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderColorResetToDefault.png
new file mode 100644
index 000000000000..7708477710c5
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderColorResetToDefault.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderTextWhenBoldAndItalicFontAttributesSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderTextWhenBoldAndItalicFontAttributesSet.png
new file mode 100644
index 000000000000..cd92dbe3cd97
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderTextWhenBoldAndItalicFontAttributesSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWhenFlowDirectionSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWhenFlowDirectionSet.png
index b2f2f066b84a..d62a9fda71a4 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWhenFlowDirectionSet.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWhenFlowDirectionSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithCharacterSpacing.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithCharacterSpacing.png
index 6cd2bb046fc9..eb0481b65431 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithCharacterSpacing.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithCharacterSpacing.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithFontAttributes.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithFontAttributes.png
index 346e93680b26..a467a086adc2 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithFontAttributes.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithFontAttributes.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithFontFamily.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithFontFamily.png
index dd8654576064..9b122322745b 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithFontFamily.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithFontFamily.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithFontSize.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithFontSize.png
index 4af66e4ca877..2b74c4ab7fcf 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithFontSize.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithFontSize.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithHorizontalAlignment.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithHorizontalAlignment.png
index 77d1d7e88b2f..fbae9f0bcb66 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithHorizontalAlignment.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithHorizontalAlignment.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithPasswordTrue.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithPasswordTrue.png
index 1ab5b1d753a0..f94b44d88f1d 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithPasswordTrue.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithPasswordTrue.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithShadow.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithShadow.png
index d100bd1f86da..58704d98f3eb 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithShadow.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithShadow.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithVerticalAlignment.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithVerticalAlignment.png
index 85bceff1d4f9..8d0a214d279a 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithVerticalAlignment.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyPlaceholderWithVerticalAlignment.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextColorResetToDefault.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextColorResetToDefault.png
new file mode 100644
index 000000000000..b99d1675fbb8
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextColorResetToDefault.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenAlingnedHorizontally.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenAlignedHorizontally.png
similarity index 100%
rename from src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenAlingnedHorizontally.png
rename to src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenAlignedHorizontally.png
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenAlingnedVertically.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenAlignedVertically.png
similarity index 100%
rename from src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenAlingnedVertically.png
rename to src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenAlignedVertically.png
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenBoldAndItalicFontAttributesSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenBoldAndItalicFontAttributesSet.png
new file mode 100644
index 000000000000..dd1a1b5c2f29
Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenBoldAndItalicFontAttributesSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenClearButtonVisibleSetNever.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenClearButtonVisibleSetNever.png
index 75b1e9602c27..4f1e2077072e 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenClearButtonVisibleSetNever.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenClearButtonVisibleSetNever.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenFontAttributesSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenFontAttributesSet.png
index 7b36e9780bbe..5d99c2b0c9bb 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenFontAttributesSet.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenFontAttributesSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenFontFamilySetValue.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenFontFamilySetValue.png
index cb9d160a91d7..4e75c56a70b4 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenFontFamilySetValue.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenFontFamilySetValue.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenFontSizeSetCorrectly.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenFontSizeSetCorrectly.png
index e25ecef34666..b10ec9560ac0 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenFontSizeSetCorrectly.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenFontSizeSetCorrectly.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenKeyboardTypeSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenKeyboardTypeSet.png
index 96b5837a77f8..bda052252686 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenKeyboardTypeSet.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenKeyboardTypeSet.png differ
diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenReturnTypeSet.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenReturnTypeSet.png
index 0011d2802ed1..7c4f0df47794 100644
Binary files a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenReturnTypeSet.png and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/VerifyTextWhenReturnTypeSet.png differ