diff --git a/hashtable/hashtable-tests.ts b/hashtable/hashtable-tests.ts
new file mode 100644
index 000000000..891d43123
--- /dev/null
+++ b/hashtable/hashtable-tests.ts
@@ -0,0 +1,25 @@
+///
+
+class Point {
+ constructor(public x: number, public y: number) {
+ }
+}
+
+function hashPoint(p: Point) {
+ return "Point:" + p.x + "," + p.y;
+}
+
+function pointsEqual(p1: Point, p2: Point) {
+ return p1.x === p2.x && p1.y === p2.y;
+}
+
+var coloursForPoints = new Hashtable({ hashCode: hashPoint, equals: pointsEqual });
+
+function getColourAt(x, y) {
+ var point = new Point(x, y);
+ return coloursForPoints.get(point);
+}
+
+coloursForPoints.put(new Point(1, 2), "green");
+
+alert(getColourAt(1, 2)); // Alerts green
\ No newline at end of file