From 10dffb326a363d46346558420f7956f32587e4d3 Mon Sep 17 00:00:00 2001 From: Ethan Lozano Date: Sat, 14 Mar 2015 00:13:50 -0700 Subject: [PATCH] Added d3.map tests --- d3/d3-tests.ts | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/d3/d3-tests.ts b/d3/d3-tests.ts index 1a2b5f1c5..51c51f608 100644 --- a/d3/d3-tests.ts +++ b/d3/d3-tests.ts @@ -47,6 +47,37 @@ function testPieChart() { }); } +function testMapConstructor() { + //No arg constructor + var emptyMap: D3.Map = d3.map(); + + //Object constructor + var object:{[key: string]: number } = {a: 1, b: 2, c: 3}; + var objectMap: D3.Map = d3.map(object); + + //Array constructor + var numberArray: number[] = [1, 2, 3] + var numberArrayMap: D3.Map = d3.map(numberArray); + + //Array with keyFn constructor + var objectArray: {key: string}[] = [{key: "v1"}, {key: "v2"}, {key: "v3"}]; + var indexes: number[] = []; + //keyFn with index + var objectArrayMap1: D3.Map<{key: string}> + = d3.map<{key: string}>(objectArray, (o: {key: string}, index: number) => { + indexes.push(index); + return o.key; + }); + //keyFn without index + var objectArrayMap2: D3.Map<{key: string}> + = d3.map<{key: string}>(objectArray, (o: {key: string}) => { + return o.key; + }); + + //Map constructor + var duplicateMap: D3.Map = d3.map(numberArrayMap); +} + //Example from http://bl.ocks.org/3887051 interface GroupedData { State: string;