tu.test("each - array", function() { var a = [1,2,3]; var sum = 0; util.each(a, function(n){ sum += n; }); util.assert(sum == 6, "should be 6"); }),
tu.test("each - List", function() { var list = new java.util.ArrayList(); list.add(1); list.add(2); list.add(3); var sum = 0; util.each(list, function(n){ sum += n.intValue(); }); util.assert(sum == 6, "should be 6"); }),
function visit(value) { if (util.isNothing(value)) return; if (util.isCollection(value)) { util.each(value, visit); } else if (value instanceof OsmPrimitive) { ret.add(value); } else { util.assert(false, "Unexpected object to add as OSM primitive, got {0}", value); } };
tu.expectAssertionError("string as collection", function() { util.each("1, 2, 3", function() {}); });
tu.test("each - four edge cases with null/undefined", function() { util.each(null, function() {}); util.each(undefined, function() {}); util.each([], null); util.each([], undefined); }),
function doit() { util.each(arguments, function(n) { sum += n; }); }
/* * Functional test for accessing the menu bar * * Load in the JOSM scripting console and run. */ var util = require("josm/util"); var ut = require("josm/unittest"); util.println("Number of menues in the menu bar: {0}", josm.menu.length); var editMenu = josm.menu.get(1); util.println("Got the edit menu: {0}", editMenu); util.each(josm.menu.menuNames, function(name) { var menu = josm.menu.get(name); util.println("Menu ''{0}'' -> got menu object {1}", name, menu); }); ut.expectAssertionError(function() { // negative index -> fail josm.menu.get(-1); }); ut.expectAssertionError(function() { // index out of range -> fail josm.menu.get(josm.menu.length); }); ut.expectAssertionError(function() { // unknown menu name -> fail josm.menu.get("no such menu");