You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(80) |
Nov
(42) |
Dec
(3) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(11) |
Feb
(50) |
Mar
(70) |
Apr
(102) |
May
(28) |
Jun
(45) |
Jul
(14) |
Aug
(75) |
Sep
(17) |
Oct
(15) |
Nov
(11) |
Dec
(4) |
2003 |
Jan
(16) |
Feb
(19) |
Mar
(21) |
Apr
(20) |
May
(29) |
Jun
(7) |
Jul
(5) |
Aug
|
Sep
|
Oct
(2) |
Nov
(3) |
Dec
(3) |
2004 |
Jan
(5) |
Feb
(4) |
Mar
(1) |
Apr
(1) |
May
(1) |
Jun
(1) |
Jul
(7) |
Aug
(1) |
Sep
(6) |
Oct
(6) |
Nov
(1) |
Dec
(2) |
2005 |
Jan
(4) |
Feb
(4) |
Mar
(15) |
Apr
(1) |
May
|
Jun
(4) |
Jul
(6) |
Aug
(6) |
Sep
|
Oct
(4) |
Nov
(2) |
Dec
(4) |
2006 |
Jan
|
Feb
(91) |
Mar
(47) |
Apr
(7) |
May
(4) |
Jun
(9) |
Jul
(1) |
Aug
|
Sep
(5) |
Oct
(36) |
Nov
(95) |
Dec
(12) |
2007 |
Jan
(11) |
Feb
(31) |
Mar
(45) |
Apr
(11) |
May
(9) |
Jun
(1) |
Jul
(146) |
Aug
(15) |
Sep
|
Oct
(3) |
Nov
(6) |
Dec
(1) |
2008 |
Jan
(2) |
Feb
(1) |
Mar
(1) |
Apr
(1) |
May
(1) |
Jun
(3) |
Jul
(2) |
Aug
(19) |
Sep
(1) |
Oct
(10) |
Nov
|
Dec
(8) |
2009 |
Jan
(3) |
Feb
(1) |
Mar
(4) |
Apr
(8) |
May
(5) |
Jun
(4) |
Jul
(2) |
Aug
(1) |
Sep
(2) |
Oct
(13) |
Nov
(13) |
Dec
(4) |
2010 |
Jan
(1) |
Feb
(2) |
Mar
(1) |
Apr
(2) |
May
|
Jun
(1) |
Jul
(3) |
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
(1) |
2011 |
Jan
(1) |
Feb
(4) |
Mar
(3) |
Apr
(4) |
May
|
Jun
(12) |
Jul
(16) |
Aug
(4) |
Sep
(7) |
Oct
|
Nov
|
Dec
|
2012 |
Jan
|
Feb
|
Mar
(2) |
Apr
|
May
(2) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2013 |
Jan
|
Feb
|
Mar
(4) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2014 |
Jan
(5) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(3) |
Dec
|
From: Erich G. <eri...@ac...> - 2001-11-03 09:40:27
|
At 11:45 AM 11/2/2001 -0800, Vladimir Bossicard wrote: >> The rename (junit -> org.junit) sounds fine for 4.0. +1 > > >If I were a reasonable person, I would say -1: >- it will break all already written tests >- problems when people are working with different versions of JUnit >- problems for 3rd party that have written class extending the framework These are valid concerns. It is the 2nd package rename we are doing for JUnit and experience from the first one shows that it takes time until clients decide to do migration. We have several options to ease the migration for clients: 1) backward compatible stub classes Given that JUnit is small and clients typically depend on a small set of classes only (TestCase, TestSuite) it should be possible to make the package rename in backward compatible way. The idea would be to have a stub class in the old package that derive from the ones in the new package. For example, junit.framework.TestCase becomes a stub class that descends from org.junit.framework.TestCase. We have done this when renamed junit.ui to junit.awtui. 2) provide a package renaming/migration script with 4.0 3) users can leverage existing tools with refactoring support. >- moving files in CVS is a mess we have two options, we punt the existing version history of files or we copy the contents of the CVS directories into the new location. This is not too messy but it requires that you can login onto the repository server. I haven't tried this on SourceForge yet. >but my theory is "if errors were made, they have to be corrected sooner >or later. And the sooner the better". I agree it is basically a fix now or later decision, where later might be never. >So be more radical than just (junit -> org.junit). If it shall be a >mess, let's make it a complete mess! > >As I proposed a few months ago, let's completely reorganize the CVS tree >by taking example from other projects. I personally find that the >Jakarta projects have a nice source hierarchy. People willing to >participate shouldn't spend hours figuring out where things are. Making the project layout more consistent with Jakarta projects would be goodness. The current layout was a first attempt for organizing the code, but there is definitly room for improvement. >So finally +1 (but a HUGE 1) > >-Vladimir > >-- >Vladimir Bossicard >www.bossicard.com > > >_______________________________________________ >Junit-devel mailing list >Jun...@li... >https://lists.sourceforge.net/lists/listinfo/junit-devel > > > |
From: Kent B. <kb...@us...> - 2001-11-02 20:12:48
|
Update of /cvsroot/junit/junit/junit/tests/framework In directory usw-pr-cvs1:/tmp/cvs-serv17671/junit/junit/tests/framework Log Message: Directory /cvsroot/junit/junit/junit/tests/framework added to the repository |
From: Kent B. <kb...@us...> - 2001-11-02 20:12:48
|
Update of /cvsroot/junit/junit/junit/tests/extensions In directory usw-pr-cvs1:/tmp/cvs-serv17671/junit/junit/tests/extensions Log Message: Directory /cvsroot/junit/junit/junit/tests/extensions added to the repository |
From: Kent B. <kb...@us...> - 2001-11-02 20:12:46
|
Update of /cvsroot/junit/junit/junit/tests/runner In directory usw-pr-cvs1:/tmp/cvs-serv17671/junit/junit/tests/runner Log Message: Directory /cvsroot/junit/junit/junit/tests/runner added to the repository |
From: Vladimir B. <vla...@bo...> - 2001-11-02 19:47:09
|
> The rename (junit -> org.junit) sounds fine for 4.0. +1 If I were a reasonable person, I would say -1: - it will break all already written tests - problems when people are working with different versions of JUnit - problems for 3rd party that have written class extending the framework - moving files in CVS is a mess but my theory is "if errors were made, they have to be corrected sooner or later. And the sooner the better". So be more radical than just (junit -> org.junit). If it shall be a mess, let's make it a complete mess! As I proposed a few months ago, let's completely reorganize the CVS tree by taking example from other projects. I personally find that the Jakarta projects have a nice source hierarchy. People willing to participate shouldn't spend hours figuring out where things are. So finally +1 (but a HUGE 1) -Vladimir -- Vladimir Bossicard www.bossicard.com |
From: Kent B. <ken...@cs...> - 2001-11-02 19:19:20
|
The rename (junit -> org.junit) sounds fine for 4.0. +1 How about the test packages? I'll go ahead and do that right now, then we can have a 3.8. Kent |
From: <jjw...@ke...> - 2001-11-02 02:28:47
|
View results here -> http://kenny.sir-toby.com:8080/junitBuild/BuildServlet?log200111011712L3.7.16 |
From: Erik M. <em...@us...> - 2001-11-02 01:38:25
|
Update of /cvsroot/junit/junit/junit/swingui In directory usw-pr-cvs1:/tmp/cvs-serv15032 Modified Files: TestRunner.java Log Message: Make rerunTest identical in awtui.TestRunner and swingui.TestRunner. Index: TestRunner.java =================================================================== RCS file: /cvsroot/junit/junit/junit/swingui/TestRunner.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -d -r1.9 -r1.10 --- TestRunner.java 2001/10/29 19:47:45 1.9 +++ TestRunner.java 2001/11/02 01:38:21 1.10 @@ -29,7 +29,7 @@ protected JFrame fFrame; private Thread fRunner; private TestResult fTestResult; - + private JComboBox fSuiteCombo; private ProgressBar fProgressIndicator; private DefaultListModel fFailures; @@ -50,19 +50,19 @@ private static final String TESTCOLLECTOR_KEY= "TestCollectorClass"; private static final String FAILUREDETAILVIEW_KEY= "FailureViewClass"; - + public TestRunner() { - } - + } + public static void main(String[] args) { new TestRunner().start(args); } - + public static void run(Class test) { String args[]= { test.getName() }; main(args); } - + public void testFailed(final int status, final Test test, final Throwable t) { SwingUtilities.invokeLater( new Runnable() { @@ -81,11 +81,11 @@ } ); } - + public void testStarted(String testName) { postInfo("Running: "+testName); } - + public void testEnded(String stringName) { synchUI(); SwingUtilities.invokeLater( @@ -99,7 +99,7 @@ } ); } - + public void setSuite(String suiteName) { fSuiteCombo.getEditor().setItem(suiteName); } @@ -117,35 +117,35 @@ fSuiteCombo.setSelectedIndex(0); pruneHistory(); } - + private void pruneHistory() { int historyLength= getPreference("maxhistory", HISTORY_LENGTH); if (historyLength < 1) historyLength= 1; - for (int i= fSuiteCombo.getItemCount()-1; i > historyLength-1; i--) + for (int i= fSuiteCombo.getItemCount()-1; i > historyLength-1; i--) fSuiteCombo.removeItemAt(i); } - + private void appendFailure(String kind, Test test, Throwable t) { fFailures.addElement(new TestFailure(test, t)); - if (fFailures.size() == 1) + if (fFailures.size() == 1) revealFailure(test); } - + private void revealFailure(Test test) { for (Enumeration e= fTestRunViews.elements(); e.hasMoreElements(); ) { TestRunView v= (TestRunView) e.nextElement(); v.revealFailure(test); } } - + protected void aboutToStart(final Test testSuite) { for (Enumeration e= fTestRunViews.elements(); e.hasMoreElements(); ) { TestRunView v= (TestRunView) e.nextElement(); v.aboutToStart(testSuite, fTestResult); } } - + protected void runFinished(final Test testSuite) { SwingUtilities.invokeLater( new Runnable() { @@ -162,7 +162,7 @@ protected CounterPanel createCounterPanel() { return new CounterPanel(); } - + protected JPanel createFailedPanel() { JPanel failedPanel= new JPanel(new GridLayout(0, 1, 0, 2)); fRerunButton= new JButton("Run"); @@ -177,10 +177,10 @@ failedPanel.add(fRerunButton); return failedPanel; } - + protected FailureDetailView createFailureDetailView() { String className= BaseTestRunner.getPreference(FAILUREDETAILVIEW_KEY); - if (className != null) { + if (className != null) { Class viewClass= null; try { viewClass= Class.forName(className); @@ -209,7 +209,7 @@ ); mi1.setMnemonic('A'); menu.add(mi1); - + menu.addSeparator(); JMenuItem mi2= new JMenuItem(" Exit "); mi2.addActionListener( @@ -224,14 +224,14 @@ return menu; } - + protected JFrame createFrame(String title) { JFrame frame= new JFrame("JUnit"); - Image icon= loadFrameIcon(); + Image icon= loadFrameIcon(); if (icon != null) frame.setIconImage(icon); frame.getContentPane().setLayout(new BorderLayout(0, 0)); - + frame.addWindowListener( new WindowAdapter() { public void windowClosing(WindowEvent e) { @@ -241,22 +241,22 @@ ); return frame; } - + protected JLabel createLogo() { JLabel label; Icon icon= getIconResource(BaseTestRunner.class, "logo.gif"); - if (icon != null) + if (icon != null) label= new JLabel(icon); else label= new JLabel("JV"); label.setToolTipText("JUnit Version "+Version.id()); return label; } - + protected void createMenus(JMenuBar mb) { mb.add(createJUnitMenu()); } - + protected JCheckBox createUseLoaderCheckBox() { boolean useLoader= useReloadingTestSuiteLoader(); JCheckBox box= new JCheckBox("Reload classes every run", useLoader); @@ -265,11 +265,11 @@ box.setVisible(false); return box; } - + protected JButton createQuitButton() { // spaces required to avoid layout flicker // Exit is shorter than Stop that shows in the same column - JButton quit= new JButton(" Exit "); + JButton quit= new JButton(" Exit "); quit.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { @@ -279,7 +279,7 @@ ); return quit; } - + protected JButton createRunButton() { JButton run= new JButton("Run"); run.setEnabled(true); @@ -292,7 +292,7 @@ ); return run; } - + protected Component createBrowseButton() { JButton browse= new JButton("..."); browse.setToolTipText("Select a Test class"); @@ -303,18 +303,18 @@ } } ); - return browse; + return browse; } - + protected StatusLine createStatusLine() { return new StatusLine(420); } - + protected JComboBox createSuiteCombo() { JComboBox combo= new JComboBox(); combo.setEditable(true); combo.setLightWeightPopupEnabled(false); - + combo.getEditor().getEditorComponent().addKeyListener( new KeyAdapter() { public void keyTyped(KeyEvent e) { @@ -340,18 +340,18 @@ ); return combo; } - + protected JTabbedPane createTestRunViews() { JTabbedPane pane= new JTabbedPane(JTabbedPane.BOTTOM); FailureRunView lv= new FailureRunView(this); fTestRunViews.addElement(lv); lv.addTab(pane); - + TestHierarchyRunView tv= new TestHierarchyRunView(this); fTestRunViews.addElement(tv); tv.addTab(pane); - + pane.addChangeListener( new ChangeListener() { public void stateChanged(ChangeEvent e) { @@ -361,47 +361,47 @@ ); return pane; } - + public void testViewChanged() { TestRunView view= (TestRunView)fTestRunViews.elementAt(fTestViewTab.getSelectedIndex()); view.activate(); } - + protected TestResult createTestResult() { return new TestResult(); } - - protected JFrame createUI(String suiteName) { - JFrame frame= createFrame("JUnit"); + + protected JFrame createUI(String suiteName) { + JFrame frame= createFrame("JUnit"); JMenuBar mb= new JMenuBar(); createMenus(mb); frame.setJMenuBar(mb); - + JLabel suiteLabel= new JLabel("Test class name:"); fSuiteCombo= createSuiteCombo(); fRun= createRunButton(); frame.getRootPane().setDefaultButton(fRun); Component browseButton= createBrowseButton(); - + fUseLoadingRunner= createUseLoaderCheckBox(); fProgressIndicator= new ProgressBar(); fCounterPanel= createCounterPanel(); - + JLabel failureLabel= new JLabel("Errors and Failures:"); fFailures= new DefaultListModel(); - - fTestViewTab= createTestRunViews(); + + fTestViewTab= createTestRunViews(); JPanel failedPanel= createFailedPanel(); - + fFailureView= createFailureDetailView(); JScrollPane tracePane= new JScrollPane(fFailureView.getComponent(), JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); fStatusLine= createStatusLine(); fQuitButton= createQuitButton(); fLogo= createLogo(); - + JPanel panel= new JPanel(new GridBagLayout()); - + addGrid(panel, suiteLabel, 0, 0, 2, GridBagConstraints.HORIZONTAL, 1.0, GridBagConstraints.WEST); addGrid(panel, fSuiteCombo, 0, 1, 1, GridBagConstraints.HORIZONTAL, 1.0, GridBagConstraints.WEST); addGrid(panel, browseButton, 1, 1, 1, GridBagConstraints.NONE, 0.0, GridBagConstraints.WEST); @@ -410,20 +410,20 @@ addGrid(panel, fUseLoadingRunner, 0, 2, 3, GridBagConstraints.NONE, 1.0, GridBagConstraints.WEST); addGrid(panel, new JSeparator(), 0, 3, 3, GridBagConstraints.HORIZONTAL, 1.0, GridBagConstraints.WEST); - + addGrid(panel, fProgressIndicator, 0, 4, 2, GridBagConstraints.HORIZONTAL, 1.0, GridBagConstraints.WEST); addGrid(panel, fLogo, 2, 4, 1, GridBagConstraints.NONE, 0.0, GridBagConstraints.NORTH); addGrid(panel, fCounterPanel, 0, 5, 2, GridBagConstraints.NONE, 0.0, GridBagConstraints.CENTER); JSplitPane splitter= new JSplitPane(JSplitPane.VERTICAL_SPLIT, fTestViewTab, tracePane); - addGrid(panel, splitter, 0, 6, 2, GridBagConstraints.BOTH, 1.0, GridBagConstraints.WEST); + addGrid(panel, splitter, 0, 6, 2, GridBagConstraints.BOTH, 1.0, GridBagConstraints.WEST); addGrid(panel, failedPanel, 2, 6, 1, GridBagConstraints.HORIZONTAL, 0.0, GridBagConstraints.NORTH/*CENTER*/); - + addGrid(panel, fStatusLine, 0, 8, 2, GridBagConstraints.HORIZONTAL, 1.0, GridBagConstraints.CENTER); addGrid(panel, fQuitButton, 2, 8, 1, GridBagConstraints.HORIZONTAL, 0.0, GridBagConstraints.CENTER); - + frame.setContentPane(panel); frame.pack(); frame.setLocation(200, 200); @@ -448,17 +448,17 @@ return ""; return (String)fSuiteCombo.getEditor().getItem(); } - + public ListModel getFailures() { return fFailures; } - + public void insertUpdate(DocumentEvent event) { textChanged(); } - + public void browseTestClasses() { - TestCollector collector= createTestCollector(); + TestCollector collector= createTestCollector(); TestSelector selector= new TestSelector(fFrame, collector); if (selector.isEmpty()) { JOptionPane.showMessageDialog(fFrame, "No Test Cases found.\nCheck that the configured \'TestCollector\' is supported on this platform."); @@ -472,7 +472,7 @@ TestCollector createTestCollector() { String className= BaseTestRunner.getPreference(TESTCOLLECTOR_KEY); - if (className != null) { + if (className != null) { Class collectorClass= null; try { collectorClass= Class.forName(className); @@ -483,14 +483,14 @@ } return new SimpleTestCollector(); } - + private Image loadFrameIcon() { ImageIcon icon= (ImageIcon)getIconResource(BaseTestRunner.class, "smalllogo.gif"); if (icon != null) return icon.getImage(); return null; } - + private void loadHistory(JComboBox combo) throws IOException { BufferedReader br= new BufferedReader(new FileReader(getSettingsFile())); int itemCount= 0; @@ -507,12 +507,12 @@ br.close(); } } - + private File getSettingsFile() { String home= System.getProperty("user.home"); return new File(home,".junitsession"); } - + private void postInfo(final String message) { SwingUtilities.invokeLater( new Runnable() { @@ -522,7 +522,7 @@ } ); } - + private void postStatus(final String status) { SwingUtilities.invokeLater( new Runnable() { @@ -532,18 +532,18 @@ } ); } - + public void removeUpdate(DocumentEvent event) { textChanged(); } - + private void rerun() { TestRunView view= (TestRunView)fTestRunViews.elementAt(fTestViewTab.getSelectedIndex()); Test rerunTest= view.getSelectedTest(); if (rerunTest != null) rerunTest(rerunTest); } - + private void rerunTest(Test test) { if (!(test instanceof TestCase)) { showInfo("Could not reload "+ test.toString()); @@ -553,22 +553,22 @@ try { Class reloadedTestClass= getLoader().reload(test.getClass()); Class[] classArgs= { String.class }; - Object[] args= new Object[]{((TestCase)test).getName()}; Constructor constructor= reloadedTestClass.getConstructor(classArgs); - reloadedTest=(Test)constructor.newInstance(args); + Object[] args= new Object[]{((TestCase)test).getName()}; + reloadedTest= (Test)constructor.newInstance(args); } catch(Exception e) { showInfo("Could not reload "+ test.toString()); return; } TestResult result= new TestResult(); reloadedTest.run(result); - + String message= reloadedTest.toString(); if(result.wasSuccessful()) showInfo(message+" was successful"); - else if (result.errorCount() == 1) - showStatus(message+" had an error"); - else + else if (result.errorCount() == 1) + showStatus(message+" had an error"); + else showStatus(message+" had a failure"); } @@ -579,7 +579,7 @@ fFailureView.clear(); fFailures.clear(); } - + /** * runs a suite. * @deprecated use runSuite() instead @@ -587,13 +587,13 @@ public void run() { runSuite(); } - + protected void runFailed(String message) { showStatus(message); fRun.setText("Run"); fRunner= null; } - + synchronized public void runSuite() { if (fRunner != null) { fTestResult.stop(); @@ -602,40 +602,40 @@ reset(); showInfo("Load Test Case..."); final String suiteName= getSuiteText(); - final Test testSuite= getTest(suiteName); + final Test testSuite= getTest(suiteName); if (testSuite != null) { addToHistory(suiteName); doRunTest(testSuite); } } } - + private boolean shouldReload() { return !inVAJava() && fUseLoadingRunner.isSelected(); } - + synchronized protected void runTest(final Test testSuite) { if (fRunner != null) { fTestResult.stop(); } else { - reset(); + reset(); if (testSuite != null) { doRunTest(testSuite); } } } - + private void doRunTest(final Test testSuite) { setButtonLabel(fRun, "Stop"); fRunner= new Thread("TestRunner-Thread") { public void run() { - TestRunner.this.start(testSuite); + TestRunner.this.start(testSuite); postInfo("Running..."); - + long startTime= System.currentTimeMillis(); testSuite.run(fTestResult); - + if (fTestResult.shouldStop()) { postStatus("Stopped"); } else { @@ -670,7 +670,7 @@ bw.close(); } } - + private void setButtonLabel(final JButton button, final String label) { SwingUtilities.invokeLater( new Runnable() { @@ -680,7 +680,7 @@ } ); } - + private void setLabelValue(final JTextField label, final int value) { SwingUtilities.invokeLater( new Runnable() { @@ -690,7 +690,7 @@ } ); } - + public void handleTestSelected(Test test) { fRerunButton.setEnabled(test != null && (test instanceof TestCase)); showFailureDetail(test); @@ -709,22 +709,22 @@ } fFailureView.clear(); } - + private void showInfo(String message) { fStatusLine.showInfo(message); } - + private void showStatus(String status) { fStatusLine.showError(status); } - + /** * Starts the TestRunner */ - public void start(String[] args) { + public void start(String[] args) { String suiteName= processArguments(args); fFrame= createUI(suiteName); - fFrame.pack(); + fFrame.pack(); fFrame.setVisible(true); if (suiteName != null) { @@ -732,7 +732,7 @@ runSuite(); } } - + private void start(final Test test) { SwingUtilities.invokeLater( new Runnable() { @@ -744,7 +744,7 @@ } ); } - + /** * Wait until all the events are processed in the event thread */ @@ -753,13 +753,13 @@ SwingUtilities.invokeAndWait( new Runnable() { public void run() {} - } + } ); } catch (Exception e) { } } - + /** * Terminates the TestRunner */ @@ -772,27 +772,27 @@ } System.exit(0); } - + public void textChanged() { fRun.setEnabled(getSuiteText().length() > 0); clearStatus(); } - + protected void clearStatus() { fStatusLine.clear(); } - + public static Icon getIconResource(Class clazz, String name) { URL url= clazz.getResource(name); if (url == null) { System.err.println("Warning: could not load \""+name+"\" icon"); return null; - } + } return new ImageIcon(url); } - + private void about() { - AboutDialog about= new AboutDialog(fFrame); + AboutDialog about= new AboutDialog(fFrame); about.show(); } } |
From: Erik M. <em...@us...> - 2001-11-02 01:37:56
|
Update of /cvsroot/junit/junit/junit/awtui In directory usw-pr-cvs1:/tmp/cvs-serv14935 Modified Files: TestRunner.java Log Message: Make rerunTest identical in awtui.TestRunner and swingui.TestRunner. Index: TestRunner.java =================================================================== RCS file: /cvsroot/junit/junit/junit/awtui/TestRunner.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- TestRunner.java 2001/10/29 19:47:45 1.7 +++ TestRunner.java 2001/11/02 01:37:53 1.8 @@ -9,7 +9,7 @@ import java.awt.event.*; import java.awt.image.*; import java.io.*; - + /** * An AWT based user interface to run tests. * Enter the name of a class which either provides a static @@ -25,7 +25,7 @@ protected Vector fFailedTests; protected Thread fRunner; protected TestResult fTestResult; - + protected TextArea fTraceArea; protected TextField fSuiteField; protected Button fRun; @@ -39,21 +39,21 @@ protected Button fRerunButton; protected TextField fStatusLine; protected Checkbox fUseLoadingRunner; - + protected static Font PLAIN_FONT= new Font("dialog", Font.PLAIN, 12); private static final int GAP= 4; private static final String SUITE_METHODNAME= "suite"; - + public TestRunner() { } - + private void about() { AboutDialog about= new AboutDialog(fFrame); about.setModal(true); about.setLocation(300, 300); about.setVisible(true); } - + public void testStarted(String testName) { showInfo("Running: "+testName); } @@ -77,7 +77,7 @@ break; } } - + protected void addGrid(Panel p, Component co, int x, int y, int w, int fill, double wx, int anchor) { GridBagConstraints c= new GridBagConstraints(); c.gridx= x; c.gridy= y; @@ -90,19 +90,19 @@ c.insets= new Insets(y == 0 ? GAP : 0, x == 0 ? GAP : 0, GAP, GAP); p.add(co, c); } - + private void appendFailure(String kind, Test test, Throwable t) { kind+= ": " + test; String msg= t.getMessage(); if (msg != null) { - kind+= ":" + truncate(msg); + kind+= ":" + truncate(msg); } fFailureList.add(kind); fExceptions.addElement(t); fFailedTests.addElement(test); if (fFailureList.getItemCount() == 1) { fFailureList.select(0); - failureSelected(); + failureSelected(); } } /** @@ -120,7 +120,7 @@ } ); menu.add(mi); - + menu.addSeparator(); mi= new MenuItem("Exit"); mi.addActionListener( @@ -133,24 +133,24 @@ menu.add(mi); return menu; } - + protected void createMenus(MenuBar mb) { mb.add(createJUnitMenu()); } protected TestResult createTestResult() { return new TestResult(); } - - protected Frame createUI(String suiteName) { + + protected Frame createUI(String suiteName) { Frame frame= new Frame("JUnit"); - Image icon= loadFrameIcon(); + Image icon= loadFrameIcon(); if (icon != null) frame.setIconImage(icon); frame.setLayout(new BorderLayout(0, 0)); frame.setBackground(SystemColor.control); final Frame finalFrame= frame; - + frame.addWindowListener( new WindowAdapter() { public void windowClosing(WindowEvent e) { @@ -158,12 +158,12 @@ System.exit(0); } } - ); + ); MenuBar mb = new MenuBar(); createMenus(mb); frame.setMenuBar(mb); - + //---- first section Label suiteLabel= new Label("Test class name:"); @@ -200,32 +200,32 @@ fUseLoadingRunner= new Checkbox("Reload classes every run", useLoader); if (inVAJava()) fUseLoadingRunner.setVisible(false); - + //---- second section - fProgressIndicator= new ProgressBar(); + fProgressIndicator= new ProgressBar(); - //---- third section + //---- third section fNumberOfErrors= new Label("0000", Label.RIGHT); fNumberOfErrors.setText("0"); fNumberOfErrors.setFont(PLAIN_FONT); - + fNumberOfFailures= new Label("0000", Label.RIGHT); fNumberOfFailures.setText("0"); fNumberOfFailures.setFont(PLAIN_FONT); - + fNumberOfRuns= new Label("0000", Label.RIGHT); fNumberOfRuns.setText("0"); fNumberOfRuns.setFont(PLAIN_FONT); - + Panel numbersPanel= new Panel(new FlowLayout()); numbersPanel.add(new Label("Runs:")); numbersPanel.add(fNumberOfRuns); numbersPanel.add(new Label(" Errors:")); numbersPanel.add(fNumberOfErrors); numbersPanel.add(new Label(" Failures:")); numbersPanel.add(fNumberOfFailures); - + //---- fourth section Label failureLabel= new Label("Errors and Failures:"); - + fFailureList= new List(5); fFailureList.addItemListener( new ItemListener() { @@ -246,7 +246,7 @@ Panel failedPanel= new Panel(new GridLayout(0, 1, 0, 2)); failedPanel.add(fRerunButton); - + fTraceArea= new TextArea(); fTraceArea.setRows(5); fTraceArea.setColumns(60); @@ -265,15 +265,15 @@ } } ); - + // --------- fLogo= new Logo(); - + //---- overall layout Panel panel= new Panel(new GridBagLayout()); - + addGrid(panel, suiteLabel, 0, 0, 2, GridBagConstraints.HORIZONTAL, 1.0, GridBagConstraints.WEST); - + addGrid(panel, fSuiteField, 0, 1, 2, GridBagConstraints.HORIZONTAL, 1.0, GridBagConstraints.WEST); addGrid(panel, fRun, 2, 1, 1, GridBagConstraints.HORIZONTAL, 0.0, GridBagConstraints.CENTER); addGrid(panel, fUseLoadingRunner, 0, 2, 2, GridBagConstraints.NONE, 1.0, GridBagConstraints.WEST); @@ -286,15 +286,15 @@ addGrid(panel, fFailureList, 0, 6, 2, GridBagConstraints.BOTH, 1.0, GridBagConstraints.WEST); addGrid(panel, failedPanel, 2, 6, 1, GridBagConstraints.HORIZONTAL, 0.0, GridBagConstraints.CENTER); addGrid(panel, fTraceArea, 0, 7, 2, GridBagConstraints.BOTH, 1.0, GridBagConstraints.WEST); - + addGrid(panel, fStatusLine, 0, 8, 2, GridBagConstraints.HORIZONTAL, 1.0, GridBagConstraints.CENTER); addGrid(panel, fQuitButton, 2, 8, 1, GridBagConstraints.HORIZONTAL, 0.0, GridBagConstraints.CENTER); - + frame.add(panel, BorderLayout.CENTER); frame.pack(); return frame; } - + public void failureSelected() { fRerunButton.setEnabled(isErrorSelected()); showErrorTrace(); @@ -303,7 +303,7 @@ private boolean isErrorSelected() { return fFailureList.getSelectedIndex() != -1; } - + private Image loadFrameIcon() { Toolkit toolkit= Toolkit.getDefaultToolkit(); try { @@ -313,26 +313,30 @@ } return null; } - + public Thread getRunner() { return fRunner; } - + public static void main(String[] args) { new TestRunner().start(args); } - + public static void run(Class test) { - String args[]= { test.getName() }; + String args[]= { test.getName() }; main(args); } - + public void rerun() { int index= fFailureList.getSelectedIndex(); if (index == -1) return; - + Test test= (Test)fFailedTests.elementAt(index); + rerunTest(test); + } + + private void rerunTest(Test test) { if (!(test instanceof TestCase)) { showInfo("Could not reload "+ test.toString()); return; @@ -343,14 +347,14 @@ Class[] classArgs= { String.class }; Constructor constructor= reloadedTestClass.getConstructor(classArgs); Object[] args= new Object[]{((TestCase)test).getName()}; - reloadedTest=(Test)constructor.newInstance(args); + reloadedTest= (Test)constructor.newInstance(args); } catch(Exception e) { showInfo("Could not reload "+ test.toString()); return; } TestResult result= new TestResult(); reloadedTest.run(result); - + String message= reloadedTest.toString(); if(result.wasSuccessful()) showInfo(message+" was successful"); @@ -359,7 +363,7 @@ else showStatus(message+" had a failure"); } - + protected void reset() { setLabelValue(fNumberOfErrors, 0); setLabelValue(fNumberOfFailures, 0); @@ -379,13 +383,13 @@ public void run() { runSuite(); } - + protected void runFailed(String message) { showStatus(message); fRun.setLabel("Run"); fRunner= null; } - + synchronized public void runSuite() { if (fRunner != null) { fTestResult.stop(); @@ -394,7 +398,7 @@ fRun.setLabel("Stop"); showInfo("Initializing..."); reset(); - + showInfo("Load Test Case..."); final Test testSuite= getTest(fSuiteField.getText()); @@ -405,10 +409,10 @@ fTestResult.addListener(TestRunner.this); fProgressIndicator.start(testSuite.countTestCases()); showInfo("Running..."); - + long startTime= System.currentTimeMillis(); testSuite.run(fTestResult); - + if (fTestResult.shouldStop()) { showStatus("Stopped"); } else { @@ -426,38 +430,38 @@ } } } - + private boolean shouldReload() { return !inVAJava() && fUseLoadingRunner.getState(); } - + private void setLabelValue(Label label, int value) { label.setText(Integer.toString(value)); label.invalidate(); label.getParent().validate(); } - + public void setSuiteName(String suite) { fSuiteField.setText(suite); } - + private void showErrorTrace() { int index= fFailureList.getSelectedIndex(); if (index == -1) return; - + Throwable t= (Throwable) fExceptions.elementAt(index); fTraceArea.setText(getFilteredTrace(t)); } - + private void showInfo(String message) { fStatusLine.setFont(PLAIN_FONT); fStatusLine.setForeground(Color.black); fStatusLine.setText(message); } - + protected void clearStatus() { showStatus(""); } @@ -471,11 +475,11 @@ * Starts the TestRunner */ public void start(String[] args) { - String suiteName= processArguments(args); + String suiteName= processArguments(args); fFrame= createUI(suiteName); fFrame.setLocation(200, 200); fFrame.setVisible(true); - + if (suiteName != null) { setSuiteName(suiteName); runSuite(); |
From: Erich G. <eri...@ac...> - 2001-11-01 22:46:37
|
I'm catching-up with mail... >> P.S. How do I back out a CVS version? I'm using Eclipse select the files, do a replace with version of the previous version, then do a synchronize, and release the files. This will release the old version into HEAD. Almost like in the Envy days, or may be not, well it is some time ago. --erich At 04:46 PM 10/23/2001 -0500, Erik Meade wrote: >I have no idea how to do it from eclipse. If you tell me the files and >version numbers you want I can do it. > >Erik > >> -----Original Message----- >> From: jun...@li... >> [mailto:jun...@li...]On Behalf Of Kent Beck >> Sent: Monday, October 22, 2001 7:04 PM >> To: Vladimir Bossicard >> Cc: jun...@li... >> Subject: RE: [Junit-devel] getName() >> >> >> You are absolutely right that the choice of formatting should be a job for >> the UI. Looking at the current getName, it looks like that does what you >> want already. Can you rewrite the test cases so it is exactly right? >> >> Kent >> P.S. How do I back out a CVS version? I'm using Eclipse, so I don't have a >> command line, which I couldn't use anyway without looking up the commands. >> Sigh... Spoiled by modern development environments again. > > >_______________________________________________ >Junit-devel mailing list >Jun...@li... >https://lists.sourceforge.net/lists/listinfo/junit-devel > > > |
From: Erich G. <eri...@ac...> - 2001-11-01 21:13:42
|
sorry for the delayed answer.... I've demonstrated the JUnit plugin at OOPSLA and we will make it available within the next couple of weeks as part of the Eclipse 2.0 stream. --erich At 08:02 AM 10/27/2001 +0100, Ringo De Smet wrote: >Hello, > >On the Eclipse (http://www.eclipse.org) newsgroup I posted that >I was interested in making some plugins to integrate JUnit into >it. My idea was to be able to trigger an action "Run tests" when >the selected class in the JDT extended TestCase or had a suite() >method available. Christophe Elek from OTI replied that he would >not be surprised if Erich Gamma was already thinking on doing >such a thing. >Erich, can you shed some light on this one? Are you already >developing this? Do you want help, feedback on preliminary >versions, etc? Always glad to help! > >Ringo > >===== >NOTE: My email address has changed!! >Bigfoot is changing their service offering. The free service is limited to 25 emails a day which is too low for me. I will stop using Bigfoot which means that both my BigFoot email addresses will become invalid after 15 September 2001. Here are the new email adresses: >HOME: rid...@us... >WORK: Rin...@me... > >____________________________________________________________ >Nokia Game is on again. >Go to http://uk.yahoo.com/nokiagame/ and join the new >all media adventure before November 3rd. > >_______________________________________________ >Junit-devel mailing list >Jun...@li... >https://lists.sourceforge.net/lists/listinfo/junit-devel > > > |
From: <jjw...@ke...> - 2001-10-31 20:44:38
|
View results here -> http://kenny.sir-toby.com:8080/junitBuild/BuildServlet?log200110311121L3.7.15 |
From: Erik M. <em...@us...> - 2001-10-31 19:54:36
|
Update of /cvsroot/junit/junit/junit/runner In directory usw-pr-cvs1:/tmp/cvs-serv15365 Modified Files: excluded.properties Log Message: Added net.jini.* to list of excluded classes. Index: excluded.properties =================================================================== RCS file: /cvsroot/junit/junit/junit/runner/excluded.properties,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- excluded.properties 2001/10/20 00:47:47 1.2 +++ excluded.properties 2001/10/31 19:54:34 1.3 @@ -8,4 +8,5 @@ excluded.4=sunw.* excluded.5=java.* excluded.6=com.w3c.* -excluded.7=org.xml.* \ No newline at end of file +excluded.7=org.xml.* +excluded.8=net.jini.* \ No newline at end of file |
From: Erik M. <em...@ge...> - 2001-10-31 19:48:23
|
Uncle Bob and I paired on this patch. At this point the awtui and swingui's TestRunner's rerunTest methods are identical. So where do we put it? Index: awtui/TestRunner.java =================================================================== RCS file: /cvsroot/junit/junit/junit/awtui/TestRunner.java,v retrieving revision 1.7 diff -u -w -r1.7 TestRunner.java --- awtui/TestRunner.java 2001/10/29 19:47:45 1.7 +++ awtui/TestRunner.java 2001/10/31 19:43:33 @@ -333,6 +333,10 @@ return; Test test= (Test)fFailedTests.elementAt(index); + rerunTest(test); + } + + private void rerunTest(Test test) { if (!(test instanceof TestCase)) { showInfo("Could not reload "+ test.toString()); return; Index: swingui/TestRunner.java =================================================================== RCS file: /cvsroot/junit/junit/junit/swingui/TestRunner.java,v retrieving revision 1.9 diff -u -w -r1.9 TestRunner.java --- swingui/TestRunner.java 2001/10/29 19:47:45 1.9 +++ swingui/TestRunner.java 2001/10/31 19:43:33 @@ -553,8 +553,8 @@ try { Class reloadedTestClass= getLoader().reload(test.getClass()); Class[] classArgs= { String.class }; - Object[] args= new Object[]{((TestCase)test).getName()}; Constructor constructor= reloadedTestClass.getConstructor(classArgs); + Object[] args= new Object[]{((TestCase)test).getName()}; reloadedTest=(Test)constructor.newInstance(args); } catch(Exception e) { showInfo("Could not reload "+ test.toString()); |
From: <jjw...@ke...> - 2001-10-30 21:54:16
|
View results here -> http://kenny.sir-toby.com:8080/junitBuild/BuildServlet?log200110301311L3.7.14 |
From: Erik M. <em...@us...> - 2001-10-30 21:04:28
|
Update of /cvsroot/junit/junit/doc/testinfected In directory usw-pr-cvs1:/tmp/cvs-serv910 Modified Files: testing.htm Log Message: Changed the usage of the word log so as not to imply a log file. Index: testing.htm =================================================================== RCS file: /cvsroot/junit/junit/doc/testinfected/testing.htm,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- testing.htm 2001/10/23 23:45:30 1.4 +++ testing.htm 2001/10/30 21:04:26 1.5 @@ -170,14 +170,14 @@ practice to also override the method hashCode whenever you override method equals. However, we want to get back to our test case. <p>With an equals method in hand we can verify the outcome of testSimpleAdd. -In JUnit you do so by a calling +In JUnit you do so by a calling <A HREF="../../javadoc/junit/framework/Assert.html#assertTrue(boolean)">Assert.assertTrue</a>, -which triggers a failure that is logged by JUnit when the argument isn't +which triggers a failure that is recorded by JUnit when the argument isn't true. Since assertions for equality are very common, there is also an Assert.assertEquals convenience method. In addition to testing for equality -with equals, it logs the printed value of the two objects in the case they +with equals, it reports the printed value of the two objects in the case they differ. This lets us immediately see why a test failed in a JUnit test -result report. The value is logged as a string representation created by +result report. The value a string representation created by the toString converter method. There are <a href="../../javadoc/junit/framework/Assert.html"> other asertXXXX variants</a> not discussed here. @@ -185,8 +185,8 @@ for setting-up the tests. It would be nice to reuse some of this test set-up code. In other words, we would like to have a common fixture for running the tests. With JUnit you can do so by storing the fixture's objects in -instance variables of your -<a href="../../javadoc/junit/framework/TestCase.html">TestCase</a> +instance variables of your +<a href="../../javadoc/junit/framework/TestCase.html">TestCase</a> subclass and initialize them by overridding the setUp method. The symmetric operation to setUp is tearDown which you can override to clean up the test fixture at the end of a test. Each test @@ -253,7 +253,7 @@ <p>As the last step to getting both test cases to run together, we have to define a test suite. In JUnit this requires the definition of a static method called suite. The suite method is like a main method that is specialized -to run tests. Inside suite you add the tests to be run to a +to run tests. Inside suite you add the tests to be run to a <a href="../../javadoc/junit/framework/TestSuite.html">TestSuite</a> object and return it. A TestSuite can run a collection of tests. TestSuite and TestCase both implement an interface called Test which defines the methods |
From: Erik M. <em...@ge...> - 2001-10-29 21:05:17
|
Adding getName to the Test interface and implementing it in those classes which implement Test and don't already have getName(). If this is going to go into the Halloween release we need to move on it... Erik Index: junit/extensions/TestDecorator.java =================================================================== RCS file: /cvsroot/junit/junit/junit/extensions/TestDecorator.java,v retrieving revision 1.4 diff -u -r1.4 TestDecorator.java --- junit/extensions/TestDecorator.java 2001/10/24 04:21:17 1.4 +++ junit/extensions/TestDecorator.java 2001/10/29 20:55:57 @@ -35,4 +35,8 @@ public Test getTest() { return fTest; } + + public String getName() { + return fTest.getName(); + } } Index: junit/framework/Test.java =================================================================== RCS file: /cvsroot/junit/junit/junit/framework/Test.java,v retrieving revision 1.3 diff -u -r1.3 Test.java --- junit/framework/Test.java 2001/10/24 04:21:17 1.3 +++ junit/framework/Test.java 2001/10/29 20:55:57 @@ -14,4 +14,8 @@ * Runs a test and collects its result in a TestResult instance. */ public abstract void run(TestResult result); + /** + * Returns the name of the test. + */ + public abstract String getName(); } Index: junit/tests/TestImplementorTest.java =================================================================== RCS file: /cvsroot/junit/junit/junit/tests/TestImplementorTest.java,v retrieving revision 1.2 diff -u -r1.2 TestImplementorTest.java --- junit/tests/TestImplementorTest.java 2001/10/22 21:12:02 1.2 +++ junit/tests/TestImplementorTest.java 2001/10/29 20:56:01 @@ -29,8 +29,8 @@ result.endTest(this); } - public String getDisplayName() { - return ""; + public String getName() { + return fTestCase.getName(); } } |
From: <jjw...@ke...> - 2001-10-29 20:44:04
|
View results here -> http://kenny.sir-toby.com:8080/junitBuild/BuildServlet?log200110291132L3.7.13 |
From: Erik M. <em...@us...> - 2001-10-29 19:54:34
|
Update of /cvsroot/junit/junit/junit/framework In directory usw-pr-cvs1:/tmp/cvs-serv13792/framework Modified Files: TestCase.java Log Message: Fix for bug#469815. Documentation bug. Index: TestCase.java =================================================================== RCS file: /cvsroot/junit/junit/junit/framework/TestCase.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- TestCase.java 2001/10/24 04:21:17 1.6 +++ TestCase.java 2001/10/29 19:54:31 1.7 @@ -41,8 +41,8 @@ * In the static way you override the runTest method and define the method to * be invoked. A convenient way to do so is with an anonymous inner class. * <pre> - * Test test= new MathTest("add") { - * public void runTest() { + * TestCase test= new MathTest("add") { + * protected void runTest() { * testAdd(); * } * }; @@ -53,7 +53,7 @@ * In this case the name of the test case has to correspond to the test method * to be run. * <pre> - * Test= new MathTest("testAdd"); + * TestCase= new MathTest("testAdd"); * test.run(); * </pre> * The tests to be run can be collected into a TestSuite. JUnit provides |
From: Erik M. <em...@us...> - 2001-10-29 19:47:49
|
Update of /cvsroot/junit/junit/junit/swingui In directory usw-pr-cvs1:/tmp/cvs-serv12207/swingui Modified Files: TestRunner.java Log Message: Fix for bug #471102, replaced GridBagConstrants.HORIZONTAL to NONE. Index: TestRunner.java =================================================================== RCS file: /cvsroot/junit/junit/junit/swingui/TestRunner.java,v retrieving revision 1.8 retrieving revision 1.9 diff -u -d -r1.8 -r1.9 --- TestRunner.java 2001/10/21 02:30:18 1.8 +++ TestRunner.java 2001/10/29 19:47:45 1.9 @@ -407,7 +407,7 @@ addGrid(panel, browseButton, 1, 1, 1, GridBagConstraints.NONE, 0.0, GridBagConstraints.WEST); addGrid(panel, fRun, 2, 1, 1, GridBagConstraints.HORIZONTAL, 0.0, GridBagConstraints.CENTER); - addGrid(panel, fUseLoadingRunner, 0, 2, 3, GridBagConstraints.HORIZONTAL, 1.0, GridBagConstraints.WEST); + addGrid(panel, fUseLoadingRunner, 0, 2, 3, GridBagConstraints.NONE, 1.0, GridBagConstraints.WEST); addGrid(panel, new JSeparator(), 0, 3, 3, GridBagConstraints.HORIZONTAL, 1.0, GridBagConstraints.WEST); @@ -795,6 +795,4 @@ AboutDialog about= new AboutDialog(fFrame); about.show(); } - - } |
From: Erik M. <em...@us...> - 2001-10-29 19:47:49
|
Update of /cvsroot/junit/junit/junit/awtui In directory usw-pr-cvs1:/tmp/cvs-serv12207/awtui Modified Files: TestRunner.java Log Message: Fix for bug #471102, replaced GridBagConstrants.HORIZONTAL to NONE. Index: TestRunner.java =================================================================== RCS file: /cvsroot/junit/junit/junit/awtui/TestRunner.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- TestRunner.java 2001/10/21 02:30:18 1.6 +++ TestRunner.java 2001/10/29 19:47:45 1.7 @@ -276,7 +276,7 @@ addGrid(panel, fSuiteField, 0, 1, 2, GridBagConstraints.HORIZONTAL, 1.0, GridBagConstraints.WEST); addGrid(panel, fRun, 2, 1, 1, GridBagConstraints.HORIZONTAL, 0.0, GridBagConstraints.CENTER); - addGrid(panel, fUseLoadingRunner, 0, 2, 2, GridBagConstraints.HORIZONTAL, 1.0, GridBagConstraints.WEST); + addGrid(panel, fUseLoadingRunner, 0, 2, 2, GridBagConstraints.NONE, 1.0, GridBagConstraints.WEST); addGrid(panel, fProgressIndicator, 0, 3, 2, GridBagConstraints.HORIZONTAL, 1.0, GridBagConstraints.WEST); addGrid(panel, fLogo, 2, 3, 1, GridBagConstraints.NONE, 0.0, GridBagConstraints.NORTH); |
From: <jjw...@ke...> - 2001-10-27 23:03:19
|
View results here -> http://kenny.sir-toby.com:8080/junitBuild/BuildServlet?log200110271509L3.7.12 |
From: Erik M. <em...@ge...> - 2001-10-27 22:15:45
|
Thanks to the quick work of moorman, of the SF support staff, we are in business. Erik > -----Original Message----- > From: jun...@li... > [mailto:jun...@li...]On Behalf Of Erik Meade > Sent: Saturday, October 27, 2001 4:32 PM > To: JUnit-Devel > Subject: RE: [Junit-devel] CVS activity emailed to this list > > > I've run into a problem with this and submitted a support request. Until > this > is resolved you may see the following when checking anything into CVS: > > sh: /cvsroot/junit/CVSROOT/syncmail: Permission denied > > This has no effect on your commit, it is just syncmail not > executing. More > information is available in the support request: > > http://sourceforge.net/tracker/?func=detail&aid=475663&group_id=1& > atid=20000 > 1 > > I don't want to disable syncmail in an effort to make things as easy as > possible > for the support team. > > Erik > > > -----Original Message----- > > From: jun...@li... > > [mailto:jun...@li...]On Behalf Of Erik Meade > > Sent: Thursday, October 25, 2001 4:16 PM > > To: JUnit-Devel > > Subject: [Junit-devel] CVS activity emailed to this list > > > > > > If folks don't have too many objections I would like to take a stab at > > setting up synchmail to send emails about CVS activity to this list. > > > > The last few days I have felt kind of odd seeing build results without > > indication of what was changed. (faq.htm and testing.htm) > > > > More info can be found at: > > > > http://sourceforge.net/docman/display_doc.php?docid=772&group_id=1 > > > > Erik > > > > > > _______________________________________________ > > Junit-devel mailing list > > Jun...@li... > > https://lists.sourceforge.net/lists/listinfo/junit-devel > > > _______________________________________________ > Junit-devel mailing list > Jun...@li... > https://lists.sourceforge.net/lists/listinfo/junit-devel |
From: Erik M. <em...@us...> - 2001-10-27 22:14:21
|
Update of /cvsroot/junit/junit/doc/faq In directory usw-pr-cvs1:/tmp/cvs-serv16875 Modified Files: faq.htm Log Message: Answered: Why do I get an error with the GUI TestRunners but not the textui.TestRunner? Index: faq.htm =================================================================== RCS file: /cvsroot/junit/junit/doc/faq/faq.htm,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- faq.htm 2001/10/25 02:49:12 1.6 +++ faq.htm 2001/10/27 22:14:19 1.7 @@ -31,7 +31,10 @@ <a href="#I want to debug when a test">I want to debug when a test fails</a></li> <li> -<a href="#ClassCastException">Why do I get a ClassCastException while calling EJB's from junit?</a></li> +<a href="#ClassCastException">Why do I get a ClassCastException while calling EJB's from JUnit?</a></li> + +<li> +<a href="#ClassLoader">Why do I get an error with the GUI TestRunners, but not with the textui.TestRunner?</a></li> <li> <a href="#assert">In Java 1.4, 'assert' is a keyword. Won't this conflict with JUnit's assert() method? If so, what can be done about it?</a></li> @@ -150,7 +153,7 @@ "patch" the junit.util.excluded.properties file with the CLASSPATH, that is, put your customized version of this file in the class path before the junit.jar. In this way your version will be loaded instead of the one that -comes with junit.</li> +comes with JUnit.</li> </ul> <h2> @@ -164,12 +167,20 @@ <h2> <a NAME="ClassCastException"></a>Why do I get a ClassCastException while -calling EJB's from junit?</h2> +calling EJB's from JUnit?</h2> <i>submitted by Jens Schumann</i><br> -The custom classloader causes this exception. Either use excluded.properties +The custom class loader causes this exception. Either use excluded.properties as described above in <a href="#ClassNotFoundException">ClassNotFoundException</a> or turn off reloading. + +<h2> +<a NAME="ClassLoader"></a>Why do I get an error with the GUI TestRunners, but not with the textui.TestRunner? +</h2> +By default the GUI TestRunners use a custom class loader which reloads classes ever run so you don't have to +shutdown the GUI for your changes to be loaded. Since the junit.textui.TestRunner does shutdown after every +run, it does not use the custom class loader. Some classes cause errors when they are reloaded. Either use excluded.properties +as described above in <a href="#ClassNotFoundException">ClassNotFoundException</a> or turn off reloading. <h2> <a NAME="assert"></a>In Java 1.4, 'assert' is a keyword. Won't this conflict with JUnit's assert() method? If so, what can be done about it? |
From: Erik M. <em...@ge...> - 2001-10-27 21:30:31
|
I've run into a problem with this and submitted a support request. Until this is resolved you may see the following when checking anything into CVS: sh: /cvsroot/junit/CVSROOT/syncmail: Permission denied This has no effect on your commit, it is just syncmail not executing. More information is available in the support request: http://sourceforge.net/tracker/?func=detail&aid=475663&group_id=1&atid=20000 1 I don't want to disable syncmail in an effort to make things as easy as possible for the support team. Erik > -----Original Message----- > From: jun...@li... > [mailto:jun...@li...]On Behalf Of Erik Meade > Sent: Thursday, October 25, 2001 4:16 PM > To: JUnit-Devel > Subject: [Junit-devel] CVS activity emailed to this list > > > If folks don't have too many objections I would like to take a stab at > setting up synchmail to send emails about CVS activity to this list. > > The last few days I have felt kind of odd seeing build results without > indication of what was changed. (faq.htm and testing.htm) > > More info can be found at: > > http://sourceforge.net/docman/display_doc.php?docid=772&group_id=1 > > Erik > > > _______________________________________________ > Junit-devel mailing list > Jun...@li... > https://lists.sourceforge.net/lists/listinfo/junit-devel |