testImagesAddedAndStartedAfterStart() {
    // Use synchronous image loading.
    makeLoaderSynchronous(loader);

    // Keep track of the total # of image loads.
    const loadRecordFn = recordFunction();
    events.listen(loader, EventType.LOAD, loadRecordFn);

    // Add more images once the first images finishes loading, and call start()
    // to get them going.
    events.listenOnce(loader, EventType.LOAD, (e) => {
      loader.addImage('extra_image', 'extra_image.gif');
      loader.addImage('extra_image2', 'extra_image2.gif');
      loader.start();
    });

    // Keep track of how many times COMPLETE was dispatched.
    const completeRecordFn = recordFunction();
    events.listen(loader, NetEventType.COMPLETE, completeRecordFn);

    // Start testing.  Make sure all 7 images loaded.
    loader.start();
    assertEquals(
        'COMPLETE should have been dispatched once.', 1,
        completeRecordFn.getCallCount());
    assertEquals(
        'All images should have been loaded',
        googObject.getCount(TEST_IMAGES) + 2, loadRecordFn.getCallCount());
  }
Verifies that more images can be added after an upload starts, and start()
can be called for them, resulting in just one COMPLETE event once all the
images have completed.