using Shared.Operations;
using Xunit;

namespace Shared.Operations.Tests;

public sealed class WorkItemActionPolicyTests
{
    [Fact]
    public void Domain_exception_is_not_manually_resolvable_by_default() =>
        Assert.False(WorkItemActionPolicy.CanManualResolve("open", false));

    [Fact]
    public void Explicit_operational_item_can_be_manually_resolved() =>
        Assert.True(WorkItemActionPolicy.CanManualResolve("claimed", true));

    [Fact]
    public void Retry_requires_registered_action_key() =>
        Assert.False(WorkItemActionPolicy.CanRetry("open", null));
}
