testAssertContainsAndAssertNotContainsOnCustomObjectWithIndexof() {
    const valueContained = {toString: () => 'I am in'};
    const valueNotContained = {toString: () => 'I am out'};
    const container = {
      indexOf: (value) => value === valueContained ? 1234 : -1,
      toString: () => 'I am a container',
    };
    assertContains('ignored message', valueContained, container);
    assertNotContains('ignored message', valueNotContained, container);
    assertThrowsJsUnitException(() => {
      assertContains('msg', valueNotContained, container);
    }, 'msg\nExpected \'I am a container\' to contain \'I am out\'');
    assertThrowsJsUnitException(() => {
      assertNotContains('msg', valueContained, container);
    }, 'msg\nExpected \'I am a container\' not to contain \'I am in\'');
  }
Tests `assertContains` and 'assertNotContains` with an arbitrary type
that has a custom `indexOf`.