namespace Fluent.Tests.Internal { using System.Windows.Controls; using Fluent.Internal; using Fluent.Tests.TestClasses; using NUnit.Framework; [TestFixture] public class WhenLoadedTests { [Test] public void Action_Should_Be_Called_When_Already_Loaded() { var control = new Control(); var loadedActionCallCount = 0; using (new TestRibbonWindow(control)) { control.WhenLoaded(x => ++loadedActionCallCount); Assert.That(loadedActionCallCount, Is.EqualTo(1)); } // Check that only one loaded event triggers the action using (new TestRibbonWindow(control)) { Assert.That(loadedActionCallCount, Is.EqualTo(1)); } } [Test] public void Action_Should_Be_Called_When_Loaded_Later() { var control = new Control(); var loadedActionCallCount = 0; control.WhenLoaded(x => ++loadedActionCallCount); Assert.That(loadedActionCallCount, Is.EqualTo(0)); using (new TestRibbonWindow(control)) { Assert.That(loadedActionCallCount, Is.EqualTo(1)); } // Check that only one loaded event triggers the action using (new TestRibbonWindow(control)) { Assert.That(loadedActionCallCount, Is.EqualTo(1)); } } } }