public void SignalCommandContainer_UnbindAll()
    {
        // Arrange
        var container        = new DiContainer();
        var commandContainer = new SignalCommandContainer(container);
        var expected         = commandContainer.Bind <SignalTest>();

        var unused = expected.InGlobal()
                     .InParallel()
                     .To <CommandTest>();

        // Act
        commandContainer.UnbindAll();
        var actual = commandContainer.Bind <SignalTest>();

        //Assert
        Assert.AreNotEqual(expected, actual);
    }
    public void SignalCommandContainer_UnbindAll_SignalRelease()
    {
        // Arrange
        var container        = new DiContainer();
        var commandContainer = new SignalCommandContainer(container);
        var signal           = container.GetInstance <SignalTest>();

        var unused = commandContainer.Bind <SignalTest>()
                     .InGlobal()
                     .InParallel()
                     .To <CommandTest>();

        // Act
        commandContainer.UnbindAll();
        var actual = signal.Dispatch();

        //Assert
        Assert.IsFalse(actual);
    }