TextBlockTests.cs 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. // Copyright (c) The Avalonia Project. All rights reserved.
  2. // Licensed under the MIT license. See licence.md file in the project root for full license information.
  3. using Avalonia.Data;
  4. using Avalonia.Media;
  5. using Avalonia.Rendering;
  6. using Avalonia.UnitTests;
  7. using Moq;
  8. using Xunit;
  9. namespace Avalonia.Controls.UnitTests
  10. {
  11. public class TextBlockTests
  12. {
  13. [Fact]
  14. public void DefaultBindingMode_Should_Be_OneWay()
  15. {
  16. Assert.Equal(
  17. BindingMode.OneWay,
  18. TextBlock.TextProperty.GetMetadata(typeof(TextBlock)).DefaultBindingMode);
  19. }
  20. [Fact]
  21. public void Default_Text_Value_Should_Be_EmptyString()
  22. {
  23. var textBlock = new TextBlock();
  24. Assert.Equal(
  25. "",
  26. textBlock.Text);
  27. }
  28. [Fact]
  29. public void Changing_Background_Brush_Color_Should_Invalidate_Visual()
  30. {
  31. var target = new TextBlock()
  32. {
  33. Background = new SolidColorBrush(Colors.Red),
  34. };
  35. var root = new TestRoot(target);
  36. var renderer = Mock.Get(root.Renderer);
  37. renderer.ResetCalls();
  38. ((SolidColorBrush)target.Background).Color = Colors.Green;
  39. renderer.Verify(x => x.AddDirty(target), Times.Once);
  40. }
  41. [Fact]
  42. public void Changing_Foreground_Brush_Color_Should_Invalidate_Visual()
  43. {
  44. var target = new TextBlock()
  45. {
  46. Foreground = new SolidColorBrush(Colors.Red),
  47. };
  48. var root = new TestRoot(target);
  49. var renderer = Mock.Get(root.Renderer);
  50. renderer.ResetCalls();
  51. ((SolidColorBrush)target.Foreground).Color = Colors.Green;
  52. renderer.Verify(x => x.AddDirty(target), Times.Once);
  53. }
  54. }
  55. }