function helperForTestEquals(a, b, c, d) {
  const s = new StructsSet([a, b, c]);

  assertTrue('set == itself', s.equals(s));
  assertTrue('set == same set', s.equals(new StructsSet([a, b, c])));
  assertTrue('set == its clone', s.equals(s.clone()));
  assertTrue('set == array of same elements', s.equals([a, b, c]));
  assertTrue(
      'set == array of same elements in different order', s.equals([c, b, a]));

  assertFalse('set != empty set', s.equals(new StructsSet));
  assertFalse('set != its subset', s.equals(new StructsSet([a, c])));
  assertFalse('set != its superset', s.equals(new StructsSet([a, b, c, d])));
  assertFalse('set != different set', s.equals(new StructsSet([b, c, d])));
  assertFalse('set != its subset as array', s.equals([a, c]));
  assertFalse('set != its superset as array', s.equals([a, b, c, d]));
  assertFalse('set != different set as array', s.equals([b, c, d]));
  assertFalse('set != [a, b, c, c]', s.equals([a, b, c, c]));
  assertFalse('set != [a, b, b]', s.equals([a, b, b]));
  assertFalse('set != [a, a]', s.equals([a, a]));
}
Helper method for testEquals().
@param {Object} a First element to use in the tests.
@param {Object} b Second element to use in the tests.
@param {Object} c Third element to use in the tests.
@param {Object} d Fourth element to use in the tests.