text: /**
   * @generated-from ./$execute.test.js
   * This file is autogenerated from a template. Please do not edit it directly.
   * To rebuild it from its template use the command
   * > npm run generate
   * More information can be found in CONTRIBUTING.md
   */
  
  /* eslint-disable no-unused-vars,import/no-duplicates */
  
  import { asyncExecute } from '../../..';
  describe('asyncExecute', () => {
    it('executes forever', async () => {
      const iter = asyncExecute(() => 1);
      expect(await iter.next()).toEqual({
        value: 1,
        done: false,
      });
      expect(await iter.next()).toEqual({
        value: 1,
        done: false,
      });
      expect(await iter.next()).toEqual({
        value: 1,
        done: false,
      });
    });
    it('can be passed additional arguments', async () => {
      const iter = asyncExecute((a, b) => a + b + 1, 4, 6);
      expect(await iter.next()).toEqual({
        value: 11,
        done: false,
      });
      expect(await iter.next()).toEqual({
        value: 11,
        done: false,
      });
      expect(await iter.next()).toEqual({
        value: 11,
        done: false,
      });
    });
    it('executes forever (with promise value)', async () => {
      const iter = asyncExecute(() => Promise.resolve(1));
      expect(await iter.next()).toEqual({
        value: 1,
        done: false,
      });
      expect(await iter.next()).toEqual({
        value: 1,
        done: false,
      });
      expect(await iter.next()).toEqual({
        value: 1,
        done: false,
      });
    });
  });
  