###############################################################################
# Copyright (c) 2000, 2006 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################
CopyTrace_action_label=Copy Trace
CopyTraceAction_problem=Problem Copying to Clipboard
CopyTraceAction_clipboard_busy=There was a problem when accessing the system clipboard. Retry?

CopyFailureList_action_label=Copy Failure List
CopyFailureList_problem=Problem Copying Failure List to Clipboard
CopyFailureList_clipboard_busy=There was a problem when accessing the system clipboard. Retry?

CounterPanel_label_runs=Runs: 
CounterPanel_label_errors=Errors: 
CounterPanel_label_failures=Failures: 
CounterPanel_runcount= {0}/{1}
CounterPanel_runcount_ignored= {0}/{1} ({2} ignored)

EnableStackFilterAction_action_label=Filter
EnableStackFilterAction_action_description=Filter the stack trace
EnableStackFilterAction_action_tooltip=Filter Stack Trace

ScrollLockAction_action_label=Scroll Lock
ScrollLockAction_action_tooltip=Scroll Lock



JUnitPreferencePage_description=JUnit settings (changes only apply to new test runs):
JUnitPreferencePage_addfilterbutton_label=Add &Filter
JUnitPreferencePage_addfilterbutton_tooltip=Type the Name of a New Stack Filter
JUnitPreferencePage_addtypebutton_label=Add &Class...
JUnitPreferencePage_addtypebutton_tooltip=Choose a Java Type and Add It to Stack Filters
JUnitPreferencePage_addpackagebutton_label=Add &Packages...
JUnitPreferencePage_addpackagebutton_tooltip=Choose Package(s) to Add to Stack Filters
JUnitPreferencePage_removefilterbutton_label=&Remove
JUnitPreferencePage_removefilterbutton_tooltip=Remove All Selected Stack Filters
JUnitPreferencePage_enableallbutton_label=&Enable All
JUnitPreferencePage_enableallbutton_tooltip=Enables All Stack Filters
JUnitContainerWizardPage_wizard_description=Select the JUnit version to use in this project.
JUnitContainerInitializer_description_junit4=JUnit 4
JUnitContainerInitializer_description_junit3=JUnit 3.8.1
JUnitPreferencePage_disableallbutton_label=Disa&ble All
JUnitPreferencePage_disableallbutton_tooltip=Disables All Stack Filters
JUnitPreferencePage_filter_label=&Stack trace filter patterns:
JUnitPreferencePage_invalidstepfilterreturnescape=Invalid stack filter. Press Enter to continue editing or Escape to cancel.
JUnitPreferencePage_addtypedialog_title=Add Class to Stack Filters
JUnitPreferencePage_addtypedialog_message=&Select a class to filter in the failure stack trace:
JUnitPreferencePage_addtypedialog_error_message=Could not open type selection dialog for stack filters.
JUnitContainerWizardPage_warning_java5_required=JUnit 4 requires a Java 5 project
JUnitPreferencePage_addpackagedialog_title=Add Packages to Stack Filters
JUnitPreferencePage_addpackagedialog_message=&Select a package to filter in the failure stack trace:
JUnitPreferencePage_enableassertionscheckbox_label=Enable assertions for new &JUnit launch configurations
JUnitPreferencePage_enableassertionscheckbox_tooltip=Defaults new JUnit test launch configurations with the VM Argument to enable assertions.
JUnitContainerWizardPage_error_version_not_available=The selected JUnit version is not available.

OpenEditorAction_action_label=&Go to File
OpenEditorAction_error_cannotopen_title=Cannot Open Editor
OpenEditorAction_error_cannotopen_message=Test class not found in selected project
OpenEditorAction_error_dialog_title=Error
OpenEditorAction_error_dialog_message=Cannot open editor
OpenEditorAction_message_cannotopen=Cannot open editor

OpenTestAction_error_title=Go To Test
OpenTestAction_error_methodNoFound=Method ''{0}'' not found. Opening the test class.


TestRunnerViewPart_jobName=Update JUnit
TestRunnerViewPart_history=&History...
TestRunnerViewPart_wrapperJobName=JUnit Starter Job
TestRunnerViewPart_stopaction_text=Stop JUnit Test
TestRunnerViewPart_select_test_run=&Select a test run:
TestRunnerViewPart_stopaction_tooltip=Stop JUnit Test Run
TestRunnerViewPart_show_failures_only=Show Failures Only
TestRunnerViewPart_rerunaction_label=Rerun Test
TestRunnerViewPart_rerunaction_tooltip=Rerun Test
TestRunnerViewPart_hierarchical_layout=Show Tests in &Hierarchy 
TestRunnerViewPart_rerunfailuresaction_label=Rerun Test - Failures First
TestRunnerViewPart_rerunfailuresaction_tooltip=Rerun Test - Failures First
TestRunnerViewPart_rerunFailedFirstLaunchConfigName={0} (Failed Tests first)
TestRunnerViewPart_error_cannotrerun=Could not rerun test
TestRunnerViewPart_message_terminated=Terminated
TestRunnerViewPart_cannotrerun_title=Rerun Test
TestRunnerViewPart_cannotrerurn_message=To rerun tests they must be launched under the debugger\nand \'Keep JUnit running\' must be set in the launch configuration.
TestRunnerViewPart_clear_history_label=&Clear Terminated
TestRunnerViewPart_label_failure=Failure Trace
TestRunnerViewPart_message_finish= Finished after {0} seconds
TestRunnerViewPart_max_remembered=&Maximum count of remembered test runs:
TestRunnerViewPart_message_stopped= Stopped
TestRunnerViewPart_message_stopping=Stopping...
TestRunnerViewPart_message_started= {0} - {1}
TestRunnerViewPart_configName=Rerun {0}
TestRunnerViewPart_layout_menu=Layout
TestRunnerViewPart_Launching=Launching {0}...
TestRunnerViewPart_test_runs=Test Runs
TestRunnerViewPart_toggle_vertical_label=&Vertical View Orientation
TestRunnerViewPart_toggle_horizontal_label=&Horizontal View Orientation
TestRunnerViewPart_activate_on_failure_only=Activate on &Error/Failure Only
TestRunnerViewPart_toggle_automatic_label=&Automatic View Orientation
TestRunnerViewPart_terminate_title=Rerun Test
TestRunnerViewPart_terminate_message=Terminate currently running tests?
TestRunnerViewPart_test_run_history=Test Run History...
TestRunnerViewPart_testName_startTime={0} ({1})

# The first parameter is the test name and the second is the JUnit version
TestRunnerViewPart_titleToolTip={0} [Runner: {1}]
TestSessionLabelProvider_testName_JUnitVersion={0} [Runner: {1}]

TestSessionLabelProvider_testMethodName_className={0} - {1}

JUnitBaseLaunchConfiguration_dialog_title=Problems Launching JUnit Tests
JUnitBaseLaunchConfiguration_error_invalidproject=Invalid project specified.
JUnitBaseLaunchConfiguration_error_input_element_deosn_not_exist=The input element of the launch configuration does not exist
JUnitBaseLaunchConfiguration_error_novmrunner=Internal error: JRE {0} does not specify a VM Runner
JUnitBaseLaunchConfiguration_error_notests=No tests found.
JUnitBaseLaunchConfiguration_error_notests_kind=No tests found with test runner ''{0}''.
JUnitBaseLaunchConfiguration_error_junitnotonpath=Cannot find 'junit.framework.TestCase' on project build path. JUnit 3 tests can only be run if JUnit is on the build path.
JUnitBaseLaunchConfiguration_error_junit4notonpath=Cannot find 'org.junit.Test' on project build path. JUnit 4 tests can only be run if JUnit 4 is on the build path.
JUnitBaseLaunchConfiguration_erro_unknowtestrunner=Could not evaluate test runner
JUnitBaseLaunchConfiguration_input_type_does_not_exist=The input type of the launch configuration does not exist

JUnitMainTab_label_oneTest=Run a s&ingle test
JUnitMainTab_label_project=&Project:
JUnitMainTab_label_browse=&Browse...
JUnitMainTab_label_test=T&est class:
JUnitMainTab_label_search=&Search...
JUnitMainTab_label_containerTest=Run &all tests in the selected project, package or source folder:
JUnitMainTab_label_keeprunning=&Keep JUnit running after a test run when debugging
JUnitMainTab_testdialog_title=Test Selection
JUnitMainTab_testdialog_message=Choose a test case or test suite:
JUnitMainTab_projectdialog_title=Project Selection
JUnitMainTab_projectdialog_message=Choose a project to constrain the search for main types:
JUnitMainTab_tab_label=Test
JUnitMainTab_label_defaultpackage=(default package)
JUnitMainTab_label_method=Test method: 
JUnitMainTab_Test_Loader=&Test runner:
JUnitMainTab_folderdialog_title=Folder Selection
JUnitMainTab_folderdialog_message=Choose a Project, Source Folder or Package:
JUnitMainTab_error_projectnotdefined=Project not specified
JUnitMainTab_error_projectnotexists=Project does not exist
JUnitMainTab_error_notJavaProject=Specified project is not a Java project
JUnitMainTab_error_testnotdefined=Test not specified
JUnitMainTab_error_testcasenotonpath=Cannot find class 'junit.framework.TestCase' on project build path.
JUnitContainerWizardPage_error_title=JUnit Library
JUnitContainerWizardPage_combo_label=&JUnit library version:
JUnitMainTab_error_invalidProjectName=''{0}'' is not a valid project name
JUnitContainerWizardPage_wizard_title=JUnit Library
JUnitContainerWizardPage_option_junit3=JUnit 3.8.1
JUnitContainerWizardPage_option_junit4=JUnit 4
JUnitContainerWizardPage_resolved_label=Current location:
JUnitLaunchShortcut_message_launchfailed=Launching of JUnit tests unexpectedly failed. Check log for details.
JUnitMainTab_error_noContainer=No project, source folder or package is specified

TestSearchEngine_message_searching=Searching for tests and suites...
JUnitLaunchShortcut_dialog_title=JUnit Launch
JUnitLaunchShortcut_message_notests=No JUnit tests found.
JUnitLaunchShortcut_dialog_title2=Test Selection
JUnitLaunchShortcut_message_selectTestToRun=Select Test to run
LaunchConfigChange_configDeleted=Launch configuration ''{0}'', which is affected by this change, was deleted.
LaunchConfigSetAttributeChange_name=Update attribute ''{0}'' on launch configuration ''{1}''
LaunchConfigRenameChange_name=Rename launch configuration ''{0}'' to ''{1}''
JUnitLaunchShortcut_message_selectTestToDebug=Select Test to debug
JUnitLaunchShortcut_message_selectConfiguration=Select a Test Configuration
JUnitLaunchShortcut_message_selectDebugConfiguration=Select JUnit configuration to debug
JUnitLaunchShortcut_message_selectRunConfiguration=Select JUnit configuration to run
ShowNextFailureAction_label=Next Failure
ShowNextFailureAction_tooltip=Next Failed Test
ShowPreviousFailureAction_label=Previous Failure
ShowPreviousFailureAction_tooltip=Previous Failed Test

GotoReferencedTestAction_dialog_message=Select a method, type, or compilation unit to open tests that refer to them.
GotoReferencedTestAction_dialog_title=Search Referring Tests
GotoReferencedTestAction_dialog_error_nomethod=Selection is not inside a type or method.
GotoReferencedTestAction_dialog_error=Test cannot be found
GotoReferencedTestAction_selectdialog_title=Select Test
GotoReferencedTestAction_dialog_select_message=Select a test that refers to ''{0}''.

TestMethodSelectionDialog_error_title=Select Test
TestMethodSelectionDialog_no_tests_title=Go to Test
TestMethodSelectionDialog_error_notfound_title=Find Test
TestMethodSelectionDialog_error_notfound_message=Could not find test
TestMethodSelectionDialog_select_dialog_title=Select Test
TestMethodSelectionDialog_dialog_title=Go to Referring Tests
TestMethodSelectionDialog_notfound_message=No tests found that reference ''{0}''.
TestMethodSelectionDialog_test_not_found=Cannot find ''{0}'' - make sure that JUnit is on the project''s classpath.
TestMethodSelectionDialog_testproject=Multiple projects contain ''{0}''. Select one project to be used when searching for tests.

Resources_outOfSyncResources= Some resources are out of sync
Resources_outOfSync= Resource ''{0}'' is out of sync with file system.
Resources_modifiedResources= There are modified resources
Resources_fileModified= File ''{0}'' has been modified since the beginning of the operation

ExpandAllAction_text=Expand All
ExpandAllAction_tooltip=Expand All Nodes

JUnitQuickFixProcessor_add_assert_description=Add static import ''org.junit.Assert.{0}''
JUnitQuickFixProcessor_add_assert_info=Adds a static import ''org.junit.Assert.{0}''.
JUnit4TestFinder_searching_description=Searching for JUnit 4 tests...

JUnitAddLibraryProposal_info=Adds JUnit 3.8.1 to the build path.
JUnitAddLibraryProposa_junit4_label=Add JUnit 4 to the build path
JUnitAddLibraryProposal_junit4_info=Adds JUnit 4 to the build path.
JUnitAddLibraryProposal_label=Add JUnit 3.8.1 to the build path
JUnitAddLibraryProposal_title=Add JUnit Library
JUnitAddLibraryProposal_cannotAdd=Cannot add the JUnit library to the build path.

CompareResultsAction_label=Compare Result
CompareResultsAction_description=Compare the actual and expected test result
CompareResultsAction_tooltip=Compare Actual With Expected Test Result

CompareResultDialog_title=Result Comparison
CompareResultDialog_labelOK=OK
CompareResultDialog_expectedLabel=Expected
CompareResultDialog_actualLabel=Actual

TypeRenameParticipant_name=JUnit Launch configuration participant
TypeRenameParticipant_change_name=JUnit Launch configuration update

RerunAction_label_run=&Run
RerunAction_label_debug=&Debug
JUnitContainerWizardPage_error_problem_configuring_container=Problem while configuring the JUnit container.
JUnitContainerInitializer_description_initializer_junit3=JUnit 3.8.1
JUnitContainerInitializer_description_initializer_junit4=JUnit 4
JUnitContainerInitializer_description_initializer_unresolved=Unresolved JUnit container
