blob: 9718c00c797edcf883cb627b06148aba473d4653 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2008, 2015 Ketan Padegaonkar 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:
* Ketan Padegaonkar - initial API and implementation
* Patrick Tasse - Speed up SWTBot tests
*******************************************************************************/
package org.eclipse.swtbot.eclipse.finder.widgets.helpers;
import org.eclipse.swtbot.eclipse.finder.SWTWorkbenchBot;
import org.eclipse.swtbot.swt.finder.waits.Conditions;
import org.eclipse.swtbot.swt.finder.widgets.SWTBotMenu;
import org.eclipse.swtbot.swt.finder.widgets.SWTBotShell;
/**
* Screen object to create a new java class.
*
* @author Ketan Padegaonkar <KetanPadegaonkar [at] gmail [dot] com>
* @version $Id$
*/
public class NewJavaClass {
private SWTWorkbenchBot bot = new SWTWorkbenchBot();
public void createClass(String packageName, String className) {
if (!bot.activePerspective().getLabel().equals("Java")) {
SWTBotMenu windowMenu = bot.menu("Window");
SWTBotMenu perspectiveMenu = windowMenu.menu("Open Perspective");
SWTBotMenu javaPerspectiveMenu = perspectiveMenu.menu("Java");
if (javaPerspectiveMenu.isVisible() && javaPerspectiveMenu.isEnabled()) {
javaPerspectiveMenu.click();
}
}
bot.menu("File").menu("New").menu("Class").click();
SWTBotShell shell = bot.shell("New Java Class");
shell.activate();
bot.textWithLabel("Package:").setText(packageName);
bot.textWithLabel("Name:").setText(className);
bot.button("Finish").click();
bot.waitUntil(Conditions.shellCloses(shell));
}
}