The CVS component contains the following plug-ins:
- org.eclipse.team.cvs.core - contains implementations of Team/Core API along with classes related to the Core component of the CVS functionality. Here is a summary by package:
- org.eclipse.team.internal.ccvs.core - contains the CVS repository provider (CVSTeamProvider) and related classes along with the various Subscriber implementations (workspace, compare and merge). It also contains several interfaces related to CVS functionality.
- org.eclipse.team.internal.ccvs.core.client - contains the classes related to running low level CVS commands (e.g update, commit).
- org.eclipse.team.internal.ccvs.core.client.listeners - contains listeners that enhance the features of various commands.
- org.eclipse.team.internal.ccvs.core.connection - contains the code responsible for making server connections.
- org.eclipse.team.internal.ccvs.core.filehistory - contains implementations related to the Team file history API.
- org.eclipse.team.internal.ccvs.core.filesystem - contains an implementation of a CVS remote EFS.
- org.eclipse.team.internal.ccvs.core.mapping - contains the CVS Change Set related classes.
- org.eclipse.team.internal.ccvs.core.resources - contains implementations of the CVS resource API for both local and remote resource trees.
- org.eclipse.team.internal.ccvs.core.syncinfo - contains the code related to synchronization information management (e.g. CVS meta-data).
- org.eclipse.team.internal.ccvs.core.util - contains varius utilities classes
- org.eclipse.team.cvs.ui - contains implementations of the Team/UI API along with classes for CVS specific functionality. Here is a summary by package:
- org.eclipse.team.internal.ccvs.ui - contains various UI related classes.
- org.eclipse.team.internal.ccvs.ui.actions - contains the main CVS actions.
- org.eclipse.team.internal.ccvs.ui.console - contains the code related to the CVS console.
- org.eclipse.team.internal.ccvs.ui.mappings - contains the actions, participants, etc. related to the logical model support.
- org.eclipse.team.internal.ccvs.ui.model - contains the UI model used in the Repositories view and other CSV views and dialogs.
- org.eclipse.team.internal.ccvs.ui.operations - contains the main CVS operations that correspond to the Core level commands found in the org.eclipse.team.internal.ccvs.core.client package.
- org.eclipse.team.internal.ccvs.ui.repo - contains the classes related to the Repositories view.
- org.eclipse.team.internal.ccvs.ui.subscriber - contains the code (actions, participants, etc.) for the non-model based Syncyhronizations.
- org.eclipse.team.internal.ccvs.ui.tags - contains the code related to tag management
- org.eclipse.team.internal.ccvs.ui.wizards - contains the code for various wizards
- org.eclipse.team.cvs.ssh - contains an implementation of SSH version 1 which is kept for compatibility with SSH 1 servers.
- org.eclipse.team.cvs.ssh2 - provides the SSH version 2 (extssh) connection method. This plug-in uses the Jsch SSH2 library to provide SSH support.
- org.eclipse.team.tests.cvs.core - contains the automated CVS tests
It also consists of a feature project
There is also a CVS mailing list
Here's how to find bugs:
- New bugs that require triage have a
- Bugs for which help is appreciated are marked with the helpwanted keyword
- Bugs that are targeted for a particular release of milestones are tagged with that milestone.
- Once triaged, Bugs are categorized in the following manner using the bracketed category identifier as a Summary prefix:
- [Actions] - bugs that deal with CVS actions.
- [Annotate View] - bugs that deal with the Annotate View
- [Change Sets] - bugs that deal with Change Sets.
- [Commands] - bugs that deal with the CVS command infrastrucutre.
- [Connection] - bugs that deal with connecting to CVS
- [Console View] - bugs that deal with the Console View.
- [Decorators] - bugs that deal with CVS decorators.
- [History] - bugs that deal with the CVS implementation of the History API
- [History View] - bugs that deal with the CVS implementation of the History View page
- [Misc] - bugs that defy categorization.
- [Model Support] - bugs that deal with the model API
- [Modules] - bugs that deal with CVS Modules
- [Operations] - bugs that deal with CVS operations.
- [Patch] - bugs that deal with Patching
- [Preferences] - bugs that deal with the CVS preference page
- [Repo View] - bugs that deal with the Repo View.
- [Resources] - bugs that deal with CVS Resource
- [Subscriber] - bugs that deal with the Subscriber API
- [Sync Info] - bugs that deal with the Sync info infrastrcuture
- [Sync View] - bugs that deal with the Sync View
- [Tags] - bugs that deal with Tags
- [Tests] - bugs that deal with CVS JUnit tests
- [Watch/Edit] - bugs that deal with the Watch/Edit feature
- [Wizards] - bugs that deal with the CVS Wizards
The 3.2 test plan provides many manual test scenarios.
Running the CVS Automated Tests using JUnit
Follow these steps to run the CVS tests:
- To load the Team/CVS test plug-ins, check out the following plug-ins from :pserver:firstname.lastname@example.org:/cvsroot/eclipse repository:
- The CVS tests require a repository to test with so you will need to set up a test repository.
- The org.eclipse.team.tests.cvs.core contains a couple of sample launch configurations:
- CVS UI Tests: runs the tests related to the CVS/UI plug-in configured for windows
- CVS UI Tests (Linux): same as above but configured for Linux
- CVS Core Tests: runs the tests related to the CVS/Core plug-in
- The Windows configuration is set up to use C:\eclipse as the test area. To configure the tests to use your test repository, perform the following steps:
- copy the repository.properties file from the org.eclipse.team.tests.cvs.core plug-in to the C:\eclipse.
- Open the file and modify the repository property to contain the location string that identifies your test repository. This string should be of the format :method:user:password@host:/repo/path (the other fields are used to tailor the tests in other ways but the defaults should work fine).
- From the Run menu, choose Run.. and then select CVS UI Tests to run the tests.
Working with the Manual Test Plan
The test plan is kept in the org.eclipse.team.tests.cvs.core plug-in as a set of HTML pages link together using a table of contents in the Eclipse Help format. The table of contents file (toc.xml) is managed using a modified version of the Help TOC viewer plug-in from the Eclipse 3.0 FAQ book.
To install the TOC viewer plug-in and the test plan files:
- Download the modified viewer plug-in from here.
- Put the plug-in in the plugins directory of your Eclipse install.
- Restart Eclipse
- Load the org.eclipse.team.tests.cvs.core from dev.eclipse.org:/cvsroot/eclipse
To edit entries in the test plan:
- Open the Toc.xml Explorer view using CTRL-3 or go to Window>Show View>Other and Expand the Documentation Support folder to find the view.
- Expand the CVS Testing and other folders to find the entry you want to edit.
- Double-click on the entry to open it in a text editor. (Note that folder entries can also have a page associated with them)
- Edit the html as desired and save
To create a new entry:
- Select the entry to act as the parent of the new entry (this can be a folder that already has children or a leaf node, which will subsequently become a folder).
- From the context menu, choose Create New Topic
- You will be prompted for the title. Enter the title for the new topic and click OK
- You will then be prompted for the file name prefix. Enter something appropriate and click OK.
- A new topic will be created with the name <prefix>0001.html and a text editor on the topic will be opened
- edit the html and save when done
To generate a new test plan:
- Select the top level entry CVS Testing and choose Generate PDF from the context menu.
- Refresh the org.eclipse.team.tests.cvs.core project so the new file appears
- Contrary to the action name, this actually creates a file named toc.html at the root of the project.
- Open the file to confirm that your changes were included