<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
   <meta name="Author" content="OTI Employee">
   <meta name="GENERATOR" content="Mozilla/4.75 [en] (Windows NT 5.0; U) [Netscape]">
   <title>File System Import</title>
</head>
<body>

<center>
<h1>
File System Import</h1></center>

<h2>
Purpose</h2>
The plan is to import a large number files/folders at a time, using the
file system wizard. The results should be indentical in layout and content
as the original source used.
<h2>
Setup</h2>

<ul>
<li>
Download the JUnit source code from www.junit.org and extract the contents
into a folder in the file system.</li>

<li>
Start the Eclipse workbench</li>

<li>
Create a new temporary "simple" project called "JUnit Test"</li>

<li>
Select File -> Import, select File System and press Next.</li>
</ul>

<h2>
Import into a new project</h2>

<ol>
<li>
Click the Browse button and select the directory where the source files
are located.</li>

<li>
Expand the folders in the tree view and until "junit" folder is visible
and check mark the box next to it</li>

<li>
Type in "JUnit Test" in the Folder field</li>

<li>
Press Finish</li>

<li>
Verify that the contents of the project match the same file and folder
structure as the source in the file system.</li>

<li>
Verify that the content of the files.</li>
</ol>

<h2>
Import into an existing project</h2>

<ol>
<li>
Click on the Directory drop down box and select the directory where the
source files are located</li>

<li>
Expand the folders in the tree view and until "junit" folder is visible
and check mark the box next to it</li>

<li>
Type in "JUnit Test" in the Folder field</li>

<li>
Check the option "Overwrite existing resources without warning"</li>

<li>
Press Finish</li>

<li>
Verify you were not prompted to overwrite files</li>

<li>
Verify that the contents of the project match the same file and folder
structure as the source in the file system.</li>

<li>
Verify that the content of the files.</li>
</ol>

<h2>
Cleanup</h2>

<ul>
<li>
Delete the temporary project "JUnit Test"</li>
</ul>

</body>
</html>
