function getChildNodes(node, options) {
    // check whitespace
    if (options && options.includeWhiteSpace) {
      return node.childNodes;
    }
    const nodes = [];
    for (let i = 0, ii = node.childNodes.length; i < ii; i++) {
      const child = node.childNodes[i];
      if (child.nodeType == 1) {
        // element node, add it
        nodes.push(child);
      } else if (child.nodeType == 3) {
        // text node, add if non empty
        if (
          child.nodeValue &&
          child.nodeValue.replace(/^\s*(.*?)\s*$/, '$1') !== ''
        ) {
          nodes.push(child);
        }
      } else if (child.nodeType == 4) {
        // CDATA section, add it
        nodes.push(child);
      }
    }
    if (options && options.ignoreElementOrder) {
      nodes.sort(function (a, b) {
        return a.nodeName > b.nodeName ? 1 : a.nodeName < b.nodeName ? -1 : 0;
      });
    }
    return nodes;
  }
Assert value is within some tolerance of a number.
@param {number} n Number.
@param {number} tol Tolerance.
@return {expect.Assertion} The assertion.