Search Results for

    Show / Hide Table of Contents

    UniqueItems Constraint

    UniqueItemsConstraint tests that an IEnumerable contains no duplicate items.

    Usage

    Is.Unique
    

    Modifiers

    .IgnoreCase
    .IgnoreWhiteSpace              // NUnit 4.2+
    .Using(IComparer comparer)
    .Using(IEqualityComparer comparer)
    .Using<T>(IComparer<T> comparer)
    .Using<T>(IEqualityComparer<T> comparer)
    .Using<T>(Comparison<T> comparer)
    .Using<T>(Func<T, T, bool> comparer)
    .UsingPropertiesComparer()     // NUnit 4.1+
    

    Examples

    [Test]
    public void UniqueItemsConstraint_Examples()
    {
        int[] numbers = { 1, 2, 3, 4, 5 };
        string[] names = { "Alice", "Bob", "Carol" };
    
        // Basic uniqueness check
        Assert.That(numbers, Is.Unique);
        Assert.That(names, Is.Unique);
    
        // Fails: contains duplicates
        Assert.That(new[] { 1, 2, 2, 3 }, Is.Not.Unique);
    
        // Case-insensitive uniqueness
        Assert.That(new[] { "Alice", "ALICE" }, Is.Unique);               // Passes: different case
        Assert.That(new[] { "Alice", "ALICE" }, Is.Not.Unique.IgnoreCase); // Passes: same when ignoring case
    }
    

    Notes

    1. An empty collection is considered unique (no duplicates possible).
    2. Duplicates are determined using the default equality comparer unless a custom comparer is specified.

    See Also

    • CollectionEquivalent Constraint - Test collection equivalence
    • AllItems Constraint - Test all items against a constraint
    • Edit this page
    In this article
    Back to top Generated by DocFX | Copyright (c) 2018- The NUnit Project - Licensed under CC BY-NC-SA 4.0