Add JS test harness