#################################################################################
#  Copyright (c) 2021 Red Hat, Inc.
#
#  This program and the accompanying materials
#  are made available under the terms of the Eclipse Public License 2.0
#  which accompanies this distribution, and is available at
#  https://www.eclipse.org/legal/epl-2.0/
#
#  SPDX-License-Identifier: EPL-2.0
#
#  Contributors:
#      Red Hat Inc. - initial API and implementation
#################################################################################
pluginName=Plug-in Development Unit Test support
providerName=Eclipse.org

JUnitPluginLaunchDelegate.name=Eclipse JUnit Plug-in Unit Test Launcher
JUnitPluginLaunchDelegate.description=The Eclipse JUnit Plug-in Unit Test Launcher supports running and debugging Unit test suites for plug-in projects

RunJUnitPluginLaunchShortcut.description=Runs a set of Unit tests
DebugJUnitPluginLaunchShortcut.description=Debugs a set of Unit tests

Launch.label= JUnit Plug-in Test (generic Test view)

JUnitPluginTestShortcut.label= JUnit Plug-in Test (generic Test view)

JUnitPluginTabGroup.description.debug= Create a configuration that will launch a Unit test in debug mode.
JUnitPluginTabGroup.description.run= Create a configuration that will launch a Unit test.

