11import { Expect , Test , TestCase } from "alsatian" ;
2- import * as util from "../src/util" ;
2+ import * as util from "../../ src/util" ;
33
44export class MapTests {
55 @Test ( "map constructor" )
@@ -19,6 +19,15 @@ export class MapTests {
1919 Expect ( result ) . toBe ( true ) ;
2020 }
2121
22+ @Test ( "map iterable constructor map" )
23+ public mapIterableConstructor2 ( ) {
24+ const lua = util . transpileString ( `let mymap = new Map(new Map([["a", "c"],["b", "d"]]));
25+ return mymap.has("a") && mymap.has("b");` ) ;
26+ const result = util . executeLua ( lua ) ;
27+
28+ Expect ( result ) . toBe ( true ) ;
29+ }
30+
2231 @Test ( "map clear" )
2332 public mapClear ( ) {
2433 const mapTS = `let mymap = new Map([["a", "c"],["b", "d"]]); mymap.clear();` ;
@@ -39,12 +48,22 @@ export class MapTests {
3948 Expect ( contains ) . toBe ( true ) ;
4049 }
4150
51+ @Test ( "map entries" )
52+ public mapEntries ( ) {
53+ const lua = util . transpileString ( `let mymap = new Map([[5, 2],[6, 3],[7, 4]]);
54+ let count = 0;
55+ for (var [key, value] of mymap.entries()) { count += key + value; }
56+ return count;` ) ;
57+ const result = util . executeLua ( lua ) ;
58+ Expect ( result ) . toBe ( 27 ) ;
59+ }
60+
4261 @Test ( "map foreach" )
4362 public mapForEach ( ) {
4463 const lua = util . transpileString (
4564 `let mymap = new Map([["a", 2],["b", 3],["c", 4]]);
4665 let count = 0;
47- mymap.forEach(i => { count += i; } );
66+ mymap.forEach(i => count += i);
4867 return count;`
4968 ) ;
5069
0 commit comments