m.put("message", new String[] {"Hi there"});
m.put("sender", new String[] {"foo@example.com"});
m.put("cost", new String[] {"1.23"});
m.put("ccMyself", new String[] {"true"});
m.put("value", new String[] {"1234"});
Form f = injector.getInstance(ContactForm.class).bind(m).setId(null);
f.isValid();
String expected = "<tr><th>Subject</th><td><ul class=\"errorlist\"><li>This field is required.</li></ul><input type=\"text\" name=\"subject\" /></td></tr>\n" +
"<tr><th>Message</th><td><input type=\"text\" name=\"message\" value=\"Hi there\" /></td></tr>\n" +
"<tr><th>Sender</th><td><input type=\"text\" name=\"sender\" value=\"foo@example.com\" /></td></tr>\n" +
"<tr><th>Cost</th><td><input type=\"text\" name=\"cost\" value=\"1.23\" /></td></tr>\n" +
"<tr><th>Carbon Copy Myself</th><td><input type=\"checkbox\" name=\"ccMyself\" checked=\"checked\" /></td></tr>\n" +
"<tr><th>The Value</th><td><input type=\"text\" name=\"value\" value=\"1234\" />" +
"<input type=\"hidden\" name=\"hiddenField\" value=\"hidden value\" />\n</td></tr>\n";
assertEquals(expected, f.asTable());
}