* @param harness the test harness (<code>null</code> not permitted).
*/
public void test(TestHarness harness)
{
DefaultMetalTheme t = new DefaultMetalTheme();
FontUIResource f = t.getSystemTextFont();
harness.check(f, new FontUIResource("Dialog", Font.PLAIN, 12));
FontUIResource f2 = t.getSystemTextFont();
harness.check(f == f2);
// setting defaults property doesn't affect this font...
UIManager.put("swing.boldMetal", Boolean.TRUE);
f = t.getSystemTextFont();
harness.check(f, new FontUIResource("Dialog", Font.PLAIN, 12));
// ...but is picked up by new themes
DefaultMetalTheme t2 = new DefaultMetalTheme();
f = t2.getSystemTextFont();
harness.check(f, new FontUIResource("Dialog", Font.PLAIN, 12));
// set it to false
UIManager.put("swing.boldMetal", Boolean.FALSE);
DefaultMetalTheme t3 = new DefaultMetalTheme();
f = t3.getSystemTextFont();
harness.check(f, new FontUIResource("Dialog", Font.PLAIN, 12));
// clear it again
UIManager.put("swing.boldMetal", null);
DefaultMetalTheme t4 = new DefaultMetalTheme();
f = t4.getSystemTextFont();
harness.check(f, new FontUIResource("Dialog", Font.PLAIN, 12));
}