blob: a83a66235790b5dfc3fae3f2fdf860ad228127bf [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Smoke Test - JDT/UI, Text, Search</title>
<link rel="stylesheet" href="http://dev.eclipse.org/default_style.css" type="text/css">
<style type="text/css">
<!--
li { margin-top: .1em; }
-->
</style>
</head>
<body>
<h1><font face="Arial,Helvetica">Smoke Test - JDT/UI, Text, Search</font></h1>
<a name="part1"></a>
<h3>Part 1 (of <a href="#part2">2</a>)</h3>
<h4>Setup</h4>
<ul>
<li>start eclipse<b>c</b>.exe with -consolelog -data X, where X is a new workspace i.e. points to not yet existent directory</li>
</ul>
<i>Note: Keep an eye on the console for error messages.</i>
<h4>Java Project Creation &amp; Source Import</h4>
<ul>
<li>Preferences &gt; Java &gt; <b>Installed JREs</b>: check detected system libraries &amp; source attachment for rt.jar</li>
<li>
<b>create</b> new Java project <b>JUnit</b>, verify:
<ul>
<li>the only open perspective is the Java perspective</li>
<li>the JUnit project contains a source folder 'src' and the JRE System Library</li>
<li><b>check the Java Build Path</b> by opening the properties page of the JUnit project:
<ul>
<li>the Java build path order should be the JRE System Library followed by the source folder</li>
</ul>
</li>
</ul>
</li>
<li>import <a href="junit3.8.1src.zip">junit3.8.1src.zip</a> (143 kb) into <i>JUnit/src</i></li>
</ul>
<h4>Package Explorer, Open Type, Navigation</h4>
<ul>
<li><b>verify the structure</b>: 12 packages with compilation units + empty package folder <i>junit.swingui.icons</i></li>
<li><b>double-click</b> on one of the <b>icons</b>
<ul><li>should open with the Internal Web Browser editor</li></ul>
</li>
<li>view menu &gt; Package Presentation &gt; <b>Hierarchical</b>
<ul><li>check that sub-packages are correctly displayed</li></ul>
</li>
<li>Navigate &gt; <b>Open Type</b>, open <i>AllTests - junit.tests</i></li>
<li><b>Show In</b> &gt; Package Explorer (Alt+Shift+W, P / Navigate menu / context menu)</li>
<li>enable <b>Link with Editor</b>
<ul><li>verify that it works</li></ul>
</li>
<li>drill down into the <i>rt.jar</i> and open <i>java &gt; awt &gt; <b>Adjustable.class</b> via <b>context menu &gt; Open</b></i>
<ul><li>verify that the source for <i>Adjustable</i> shows up and is read-only</li></ul>
</li>
<li><b>select a method</b> in the Outline</li>
<li>File &gt; <b>Close</b></li>
<li>click the <b>Back</b> arrow in the toolbar
<ul><li>verify that the previously selected method is selected again in the editor</li></ul>
</li>
<li>File &gt; <b>Close All</b></li>
<li>open the <b>Java Browsing</b> perspective
<ul>
<li>select <i><b>JUnit &gt; junit.extensions</b></i>, and double-click on <i><b>ExceptionTestCase</b></i></li>
<li>verify that the four views are now populated and the above elements selected</li>
<li>verify that the Java editor shows <i>ExceptionTestCase</i></li>
</ul>
</li>
<li><b>Quick Outline</b>, go to <i>run(TestResult) - junit.framework.Test</i></li>
<li><b>Quick Hierarchy</b></li>
<li>switch back to the <b>Java perspective</b></li>
</ul>
<h4>Editing</h4>
<ul>
<li>open <i>junit &gt; framework &gt; <b>TestCase.java</b></i> from the Package Explorer</li>
<li>verify:
<ul>
<li>Java editor with <i>TestCase.java</i> is <b>active</b> and has <b>focus</b></li>
<li><b>Outline</b> view shows the <b>decorators</b> for abstract, constructor, implemented and overridden methods</li>
<li><b>syntax coloring</b> in the Java editor is OK
<ul>
<li>field <b>fName is blue</b></li>
</ul>
</li>
</ul>
</li>
<li><b>select method</b> in the Outline view
<ul>
<li>verify that it is revealed in the Java editor and the magnet shows up</li>
</ul>
</li>
<li><b>reorder methods</b> via drag and drop in Outline view</li>
<li>use <b>Java Content Assist</b> on some type argument</li>
<li>use <b>Javadoc Content Assist</b> inside a Javadoc comment</li>
<li><b>Javadoc Hovers</b></li>
<li><b>Open Declaration (F3)</b></li>
<li><b>reconciling:</b>
<ul>
<li><b>add a method</b>
<ul>
<li>verify that it shows up in the Outline view</li>
</ul>
</li>
<li>add a <b>syntax error</b>
<ul>
<li>verify that the syntax error is underlined in red</li>
</ul>
</li>
<li>remove the syntax error</li>
<li>select the new method in the Outline view and select <b>Delete</b> from the context menu</li>
</ul>
</li>
<li>Refactor &gt; <b>Rename</b> a <b>local variable</b></li>
<li><b>Tab</b> key (with/without selection)</li>
<li><b>Edit &gt; Find/Replace...</b></li>
<li><b>Edit &gt; Undo</b></li>
<li><b>File &gt; Revert</b></li>
<li><b>Organize Imports</b></li>
<li><b>Source &gt; Generate Getter/Setter</b></li>
</ul>
<h4>Building</h4>
<ul>
<li>rebuild the <i>JUnit</i> project (<b>Project &gt; Clean...</b>) and choose <b>Clean all projects</b></li>
<li><b>no errors</b> should show up in the Problems view</li>
<li><b>add a syntax error</b> and <b>Save</b></li>
<li><b>errors</b> should show up in
<ul>
<li><b>Problems view</b></li>
<li><b>Package Explorer</b></li>
<li><b>Editor tab</b></li>
<li><b>Editor rulers</b></li>
<li><b>Editor text</b></li>
</ul>
</li>
<li>verify that the <b>error message</b> is shown in <b>hover</b> when moving the mouse over the marker</li>
<li>fix the error and save again
<ul>
<li>all the error markers and ticks should disappear</li>
</ul>
</li>
</ul>
<h4>Type Hierarchy</h4>
<ul>
<li><b>on type</b>, e.g. <i>TestCase</i>
<ul>
<li><b>Subtype Hierarchy</b></li>
<li><b>Lock View and Show Members in Hierarchy</b></li>
<li><b>Open</b> method and type from hierarchy</li>
</ul>
</li>
<li><b>on package</b>, e.g. <i>junit.framework</i></li>
</ul>
<h4>Call Hierarchy</h4>
<ul>
<li>on a method</li>
</ul>
<h4>Creation, Moving</h4>
<ul>
<li>switch back to the Package Explorer view</li>
<li>use creation wizards: <b>New Package</b>, <b>New Class</b></li>
<li>move a class using <b>Refactor &gt; Move...</b> and <b>drag&amp;drop</b></li>
<li><b>Refactor &gt; Rename</b> <i>TestCase.java</i> to <i>ToastCase.java</i> - click <b>Finish</b> on the dialog.</li>
<li>verify that there are <b>no compile errors</b></li>
<li><b>Undo (Ctrl+Z)</b></li>
</ul>
<h4>Launching / Debugging</h4>
<ul>
<li><b>launch</b> <i>junit.samples/VectorTest.java</i> as <b>Java Application</b>
<ul>
<li>verify that the Console view opens and at the end shows:<br>
<code>OK (6 tests)</code></li>
</ul>
</li>
<li>set a <b>breakpoint</b> and <b>debug</b> the <i>VectorTest</i> launch configuration
<ul>
<li>verify that the breakpoint is first unverified and then gets the check mark</li>
<li>Eclipse should ask to switch to Debug perspective</li>
</ul>
</li>
</ul>
<h4>Bugs</h4>
<ul>
<li>verify a recently fixed
<a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&amp;classification=Eclipse&amp;product=JDT&amp;component=Text&amp;component=UI&amp;chfieldfrom=7d&amp;chfieldto=Now&amp;chfield=resolution&amp;chfieldvalue=FIXED&amp;bug_status=RESOLVED&amp;order=bugs.bug_severity%2Cbugs.short_desc&amp;cmdtype=doit">
JDT{Text, UI}</a> bug
</li>
</ul>
<hr> <!-- ================================== -->
<a name="part2"></a>
<h3>Part 2</h3>
<ul>
<li>set up workspace as in <a href="#part1">Part 1</a></li>
<li>switch back to the Java perspective</li>
</ul>
<h4>Search</h4>
<ul>
<li>Text / File Search
<ul>
<li>open <b>Search</b> dialog by clicking the <b>tool bar button</b></li>
<li><b>File Search</b></li>
<li>Containing text: <i>TestCase</i></li>
<li>File name patterns: <b>Choose...</b>, check <i>*.java</i>, click <b>OK</b></li>
<li>click <b>Search</b></li>
<li>verify that:
<ul>
<li>Search view becomes <i>visible</i> and gets <i>focus</i></li>
<li>view title is <i>italic</i> during search</li>
<li>first <i>match revealed</i> in tree</li>
</ul>
</li>
<li>press <b>Ctrl+.</b> to go to the first match</li>
<li>verify that
<ul>
<li>file is <i>opened</i></li>
<li><i>marker</i> is at correct position</li>
<li><i>selection</i> is OK</li>
<li>editor did <i>not</i> take <i>focus</i></li>
</ul>
</li>
<li>turn the Search view into a fast view</li>
<li>in the Search view click the <b>Show Next Match</b> button (arrow down) to go to the next match
<ul>
<li>verify that the search view stays active and open</li>
</ul>
</li>
</ul>
<br>
</li>
<li>Java Search
<ul>
<li>open <b>junit.framework.Assert</b></li>
<li><b>select method fail()</b> in Outline view</li>
<li>open Search dialog by pressing <b>Ctrl+H</b></li>
<li>verify that
<ul>
<li>the search string is <i>junit.framework.Assert.fail()</i></li>
<li><i>Method</i> and <i>References</i> radio button are checked</li>
</ul>
</li>
<li>click <b>Search</b></li>
<li>verify that
<ul>
<li>old search result disappears</li>
<li>there are 25 search matches</li>
</ul>
</li>
<li>switch to the <b>previous</b> (text) search results in the Search view</li>
</ul>
</li>
</ul>
<h4>Refactoring</h4>
<ul>
<li><b>Extract Method</b>
<ul>
<li>open <i>junit.swingui.AboutDialog</i> and select lines 63 to 67 (inclusive)</li>
<li><b>Refactor &gt; Extract Method...</b> with <b>Preview &gt;</b></li>
</ul>
</li>
<li><b>Rename Method</b>
<ul>
<li>open <i>junit.framework.Test</i></li>
<li>select <i>Case</i> in the declaration of method <i>countTestCases()</i></li>
<li><b>Alt+Shift+R</b></li>
<li><b>Delete</b></li>
<li><b>Enter</b></li>
<li>verify:
<ul>
<li>progress shown in workbench window</li>
<li>no preview</li>
<li>no compile errors</li>
</ul>
</li>
</ul>
</li>
<li><b>Undo</b>
<ul>
<li>verify that <b>Edit &gt; Redo</b> is disabled in the workbench menu</li>
<li>select <b>Edit &gt; Undo</b> from the workbench menu</li>
<li>verify that there are no compiler errors</li>
</ul>
</li>
<li><b>Clean Up</b>
<ul>
<li><b>Source &gt; Clean Up</b> the whole project</li>
<li><b>Use custom profile</b></li>
<li>check all clean ups on the <i>Code Style</i> tab</li>
<li>check all clean ups on the <i>Code Organizing</i> tab</li>
<li><b>Finish</b></li>
<li>verify that there are <b>no compiler errors</b></li>
</ul>
</li>
</ul>
<h4>Java Structure Compare</h4>
<ul>
<li><b>disable auto-build</b></li>
<li>select package <i>junit.runner</i></li>
<li><b>Show In &gt; Navigator</b></li>
<li><b>copy <i>runner</i></b> into folder <i>junit</i> (name it <i>runner2</i>)</li>
<li>compare both folders (context menu: <b>Compare With &gt; Each Other</b>)
<ul>
<li>Information dialog: <i>There are no differences between the selected inputs.</i></li>
</ul>
</li>
<li>in folder <i>runner2</i> <b>delete file <i>Sorter.java</i></b></li>
<li>in <i>runner</i> open <i><b>TestCaseClassLoader.java</b></i> and make these changes:
<ul>
<li><b>add</b> a new method <i>void foo(){}</i></li>
<li><b>delete</b> method <i>getResource(String)</i></li>
<li><b>change body</b> of the method <i>isExcluded(String)</i></li>
</ul>
</li>
<li><b>Save</b></li>
<li>compare both folders <i>runner</i> and <i>runner2</i> (context menu: <b>Compare
With &gt; Each Other</b>)</li>
<li><b>verify</b> in compare editor:
<ul>
<li><b>addition</b> of <i>Sorter.java</i></li>
<li><b>change</b> in <i>TestCaseClassLoader.java</i></li>
<li>double-clicking <i>TestCaseClassLoader.java</i> shows <b>Java Structure Compare</b></li>
<li>selecting <i>isExcluded()</i> shows method compare</li>
</ul>
</li>
<li><b>close</b> the compare editor</li>
<li><b>delete</b> the <i>runner2</i> folder</li>
</ul>
<h4>Replace and Restore of Method from Local History</h4>
<ul>
<li>open <i><b>TestCaseClassLoader</b></i></li>
<li>in <b>Outline</b>, select method <i>isExcluded(String)</i></li>
<li><b>Replace With &gt; Element from Local History...</b></li>
<li>on type <i>TestCaseClassLoader</i>, execute <b>Restore from Local History...</b></li>
</ul>
<h4>
JAR Packager</h4>
<ul>
<li>select the <i>JUnit</i> project</li>
<li><b>context menu &gt; Export...</b></li>
<li>select <b>Java &gt; JAR file</b></li>
<li><b>export and verify</b> the exported .jar</li>
</ul>
<h4>JUnit Integration</h4>
<ul>
<li>in the Package Explorer, select <i>junit.samples.SimpleTest</i></li>
<li><b>context menu &gt; Run As &gt; JUnit Test</b>
<ul>
<li>verify that the JUnit view is opened and shows errors and failures</li>
</ul>
</li>
<li><b>double-click on a failure</b> in the Failure Trace
<ul>
<li>verify that the editor shows up and reveals the failure location</li>
</ul>
</li>
</ul>
<h4>Bugs</h4>
<ul>
<li>verify a recently fixed
<a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&amp;classification=Eclipse&amp;product=Platform&amp;component=Search&amp;component=Text&amp;chfieldfrom=7d&amp;chfieldto=Now&amp;chfield=resolution&amp;chfieldvalue=FIXED&amp;bug_status=RESOLVED&amp;order=bugs.bug_severity%2Cbugs.short_desc&amp;cmdtype=doit">
Platform{Search, Text}</a> bug
</li>
</ul>
</body>
</html>