package org.jwildfire.swing; import java.awt.event.MouseListener; import javax.swing.JButton; import javax.swing.JTextPane; import org.junit.*; public class SystemInfoTest { @Test public void testSystemInfo() { SystemInfo si = new SystemInfo(); Assert.assertTrue(0<si.getMaxMemMB()); Assert.assertNotNull(si.getOsArch()); Assert.assertNotNull(si.getOsName()); Assert.assertNotNull(si.getOsVersion()); Assert.assertNotNull(0<si.getProcessors()); } @Test public void testSystemInfoInternalFrame() throws Exception { //SwingHelper.printTree(sif, 0); SystemInfoInternalFrame sif = new SystemInfoInternalFrame(); sif.setVisible(true); JButton comp = (JButton)SwingHelper.match(sif, "siif.okbutton"); JTextPane text = (JTextPane)SwingHelper.match(sif, "siif.text"); String text1=text.getText(); Assert.assertNotNull(text1); for(MouseListener ml:(MouseListener[])(comp.getListeners(MouseListener.class))) { if(ml!=null&&ml.getClass().getName().contains("SystemInfoInternalFrame")) ml.mouseClicked(null); } Assert.assertFalse("Expect SystemInfoInternalFrame to no longer be visible after click event",sif.isVisible()); byte b[] = new byte[4096*1024];//use 4 more MB sif.refresh(); //make sure it is not using same information Assert.assertNotEquals("Added "+b.length +"bytes, expect different stats",text1, text.getText()); } }