testGetCountBehavior() {
    const tree = new AvlTree();
    tree.add(1);
    tree.remove(1);
    assertEquals(0, tree.getCount());

    const values = ['bill', 'blake', 'elliot', 'jacob', 'john', 'myles', 'ted'];

    // Insert strings into tree out of order
    tree.add('frodo');
    tree.add(values[4]);
    tree.add(values[3]);
    tree.add(values[0]);
    tree.add(values[6]);
    tree.add('samwise');
    tree.add(values[5]);
    tree.add(values[1]);
    tree.add(values[2]);
    tree.add('pippin');
    assertEquals(10, tree.getCount());
    assertEquals(
        tree.root_.left.count + tree.root_.right.count + 1, tree.getCount());

    // Remove strings from tree
    assertEquals('samwise', tree.remove('samwise'));
    assertEquals('pippin', tree.remove('pippin'));
    assertEquals('frodo', tree.remove('frodo'));
    assertEquals(null, tree.remove('merry'));
    assertEquals(7, tree.getCount());

    assertEquals(
        tree.root_.left.count + tree.root_.right.count + 1, tree.getCount());
  }
Verifies correct behavior of getCount(). See http://b/4347755
     @suppress {visibility} suppression added to enable type checking