Browse Source

Fix BindingEvaluator.ClearDataContext (#18964)

* Add failing test for BindingEvaluator.ClearDataContext

* Fix BindingEvaluator.ClearDataContext
release/11.3.1
Julien Lebosquain 8 months ago
parent
commit
2d135e541e
  1. 2
      src/Avalonia.Controls/Utils/BindingEvaluator.cs
  2. 21
      tests/Avalonia.Controls.UnitTests/Utils/BindingEvaluatorTests.cs

2
src/Avalonia.Controls/Utils/BindingEvaluator.cs

@ -39,7 +39,7 @@ internal sealed class BindingEvaluator<T> : StyledElement, IDisposable
}
public void ClearDataContext()
=> DataContext = this;
=> DataContext = null;
public void Dispose()
{

21
tests/Avalonia.Controls.UnitTests/Utils/BindingEvaluatorTests.cs

@ -0,0 +1,21 @@
#nullable enable
using Avalonia.Controls.Utils;
using Avalonia.UnitTests;
using Xunit;
namespace Avalonia.Controls.UnitTests.Utils;
public class BindingEvaluatorTests : ScopedTestBase
{
[Fact]
public void ClearDataContext_Sets_DataContext_To_Null()
{
var evaluator = new BindingEvaluator<string?>();
evaluator.Evaluate("foo");
Assert.Equal("foo", evaluator.DataContext);
evaluator.ClearDataContext();
Assert.Null(evaluator.DataContext);
}
}
Loading…
Cancel
Save