diff --git a/tests/types/array.test.js b/tests/types/array.test.js
index <HASH>..<HASH> 100644
--- a/tests/types/array.test.js
+++ b/tests/types/array.test.js
@@ -4,6 +4,7 @@ import expect from 'expect';
 import ArrayType from '../../src/types/array';
 import { create } from '../../src/microstates';
 import { valueOf } from '../../src/meta';
+import { Store } from '../../index';
 
 describe("ArrayType", function() {
 
@@ -477,4 +478,15 @@ describe("ArrayType", function() {
       expect(array.remove(null)).toBe(array);
     });
   });
+
+  describe('within a Store', ()=> {
+    it('return undefined at the end of an iteration', ()=> {
+      let array = Store(create([Number], [1,2]));
+      let iterator = array[Symbol.iterator]();
+      iterator.next();
+      iterator.next();
+      expect(iterator.next().value).toBe(undefined);
+    });
+  });
+
 });
Cover the case of an iterable inside a store.