@nevware21/tripwire - v0.1.8
    Preparing search index...

    Function sameMembersFunc

    Export assertion functions

    • Asserts that the target has the same members as the expected value, regardless of order. Uses strict equality (===) for comparison. Both the target and expected values must conform to ArrayLikeOrSizedIterable but can be different concrete types.

      Note on NaN: Since this function uses strict equality (===), NaN values will NOT match other NaN values (because NaN !== NaN in JavaScript). If you need NaN values to be considered equal, use sameDeepMembersFunc which uses deep equality comparison.

      Type Parameters

      • R

      Parameters

      Returns R

      • The assert scope.

      0.1.5

      import { assert } from "@nevware21/tripwire";

      assert([1, 2, 3]).has.include.sameMembers([3, 2, 1]); // Passes - same members, different order
      assert([1, 2, 2, 3]).has.include.sameMembers([3, 2, 2, 1]); // Passes - duplicates handled
      assert([1, 2, 3]).has.include.sameMembers([1, 2]); // Fails - different length
      assert([1, 2, 3]).has.include.sameMembers([1, 2, 4]); // Fails - different members
      assert(new Set([1, 2, 3])).has.include.sameMembers(new Set([3, 2, 1])); // Passes - different types

      // NaN behavior with strict equality
      assert([NaN, 0]).has.include.sameMembers([0, NaN]); // Fails - NaN !== NaN
      assert([NaN, 0]).has.include.sameDeepMembers([0, NaN]); // Passes - deep equality handles NaN