diff options
author | Neil Guzman | 2013-12-13 21:06:43 +0000 |
---|---|---|
committer | Alexander Kurtakov | 2014-01-23 09:38:13 +0000 |
commit | a1bfcef3204c443cd48a7727638578d4bca48e3c (patch) | |
tree | 286813a92d9dd5de653446cc8177ed25339aa9fa /rpm/org.eclipse.linuxtools.rpm.createrepo.tests | |
parent | 4daca64c700c56f27c40094855b0f86d97b0be3c (diff) | |
download | org.eclipse.linuxtools-a1bfcef3204c443cd48a7727638578d4bca48e3c.tar.gz org.eclipse.linuxtools-a1bfcef3204c443cd48a7727638578d4bca48e3c.tar.xz org.eclipse.linuxtools-a1bfcef3204c443cd48a7727638578d4bca48e3c.zip |
RPM: createrepo tests for preference/property page
Testing classes within:
o org.eclipse.linuxtools.internal.rpm.createrepo.preference
Change-Id: I72295849ea1b6d068e80cabbcb9b4a7f71a61427
Signed-off-by: Neil Guzman <guzmann001@gmail.com>
Reviewed-on: https://git.eclipse.org/r/20958
Tested-by: Hudson CI
Reviewed-by: Alexander Kurtakov <akurtako@redhat.com>
IP-Clean: Alexander Kurtakov <akurtako@redhat.com>
Tested-by: Alexander Kurtakov <akurtako@redhat.com>
Diffstat (limited to 'rpm/org.eclipse.linuxtools.rpm.createrepo.tests')
5 files changed, 791 insertions, 1 deletions
diff --git a/rpm/org.eclipse.linuxtools.rpm.createrepo.tests/src/org/eclipse/linuxtools/internal/rpm/createrepo/preference/tests/CreaterepoDeltaPropertyPageTest.java b/rpm/org.eclipse.linuxtools.rpm.createrepo.tests/src/org/eclipse/linuxtools/internal/rpm/createrepo/preference/tests/CreaterepoDeltaPropertyPageTest.java new file mode 100644 index 0000000000..103bb79b2d --- /dev/null +++ b/rpm/org.eclipse.linuxtools.rpm.createrepo.tests/src/org/eclipse/linuxtools/internal/rpm/createrepo/preference/tests/CreaterepoDeltaPropertyPageTest.java @@ -0,0 +1,229 @@ +/******************************************************************************* + * Copyright (c) 2013 Red Hat Inc. 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: + * Neil Guzman - initial API and implementation + *******************************************************************************/ +package org.eclipse.linuxtools.internal.rpm.createrepo.preference.tests; + +import static org.junit.Assert.*; + +import java.io.IOException; + +import org.eclipse.core.runtime.CoreException; +import org.eclipse.core.runtime.preferences.IEclipsePreferences; +import org.eclipse.jface.preference.IPreferenceStore; +import org.eclipse.linuxtools.internal.rpm.createrepo.Activator; +import org.eclipse.linuxtools.internal.rpm.createrepo.Messages; +import org.eclipse.linuxtools.rpm.createrepo.CreaterepoPreferenceConstants; +import org.eclipse.linuxtools.rpm.createrepo.CreaterepoProject; +import org.eclipse.linuxtools.rpm.createrepo.tests.ICreaterepoTestConstants; +import org.eclipse.linuxtools.rpm.createrepo.tests.TestCreaterepoProject; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Tree; +import org.eclipse.swtbot.eclipse.finder.SWTWorkbenchBot; +import org.eclipse.swtbot.eclipse.finder.widgets.SWTBotView; +import org.eclipse.swtbot.swt.finder.exceptions.WidgetNotFoundException; +import org.eclipse.swtbot.swt.finder.matchers.WidgetMatcherFactory; +import org.eclipse.swtbot.swt.finder.widgets.SWTBotShell; +import org.eclipse.swtbot.swt.finder.widgets.SWTBotTree; +import org.junit.After; +import org.junit.AfterClass; +import org.junit.Before; +import org.junit.BeforeClass; +import org.junit.Test; +import org.osgi.service.prefs.BackingStoreException; + +/** + * Tests for CreaterepoDeltaPropertyPage class. + */ +public class CreaterepoDeltaPropertyPageTest { + + private static TestCreaterepoProject testProject; + private CreaterepoProject project; + private static SWTWorkbenchBot bot; + + /** + * Initialize the test project. + * + * @throws CoreException + */ + @BeforeClass + public static void setUpBeforeClass() throws CoreException { + testProject = new TestCreaterepoProject(); + assertTrue(testProject.getProject().exists()); + bot = new SWTWorkbenchBot(); + testProject.restoreDefaults(); + try { + bot.shell(ICreaterepoTestConstants.MAIN_SHELL).activate(); + } catch (WidgetNotFoundException e) { + // cannot activate main shell, continue anyways + } + openResourcePerspective(); + } + + /** + * Delete the project when tests are done. + * + * @throws CoreException + */ + @AfterClass + public static void tearDownAfterClass() throws CoreException { + testProject.dispose(); + assertFalse(testProject.getProject().exists()); + } + + /** + * Get the CreaterepoProject at the beginning of each test. + * + * @throws CoreException + * @throws IOException + */ + @Before + public void setUp() throws CoreException { + project = testProject.getCreaterepoProject(); + assertNotNull(project); + // before doing anything with SWTBot, activate the main shell + try { + bot.shell(ICreaterepoTestConstants.MAIN_SHELL).activate(); + } catch (WidgetNotFoundException e) { + // cannot activate main shell, continue anyways + } + openPropertyPage(); + } + + /** + * Restore the defaults for the general preference page. + * + * @throws BackingStoreException + */ + @After + public void tearDown() throws BackingStoreException { + try { + if (bot.shell(String.format(ICreaterepoTestConstants.PROPERTIES_SHELL, + ICreaterepoTestConstants.REPO_NAME)).isActive()) { + bot.shell(String.format(ICreaterepoTestConstants.PROPERTIES_SHELL, + ICreaterepoTestConstants.REPO_NAME)).close(); + } + } catch (WidgetNotFoundException e) { + // cannot close property shell + } + testProject.restoreDefaults(); + IEclipsePreferences pref = project.getEclipsePreferences(); + pref.clear(); + pref.flush(); + assertEquals(0, pref.keys().length); + } + + /** + * Test if all preferences modified in the deltas createrepo property + * page persist to project preferences. + */ + @Test + public void testChangePreferences() { + bot.checkBox(Messages.CreaterepoDeltaPropertyPage_booleanEnableLabel).click(); + bot.textWithLabel(Messages.CreaterepoDeltaPropertyPage_maxNumberOfDeltas).setText("9"); //$NON-NLS-1$ + bot.textWithLabel(Messages.CreaterepoDeltaPropertyPage_maxDeltaSize).setText("13"); //$NON-NLS-1$ + bot.button(ICreaterepoTestConstants.OK_BUTTON).click(); + openPropertyPage(); + IEclipsePreferences pref = project.getEclipsePreferences(); + IPreferenceStore prefStore = Activator.getDefault().getPreferenceStore(); + assertEquals(prefStore.getBoolean(CreaterepoPreferenceConstants.PREF_DELTA_ENABLE), + bot.checkBox(Messages.CreaterepoDeltaPropertyPage_booleanEnableLabel).isChecked()); + assertEquals(pref.getInt(CreaterepoPreferenceConstants.PREF_NUM_DELTAS, + prefStore.getInt(CreaterepoPreferenceConstants.PREF_NUM_DELTAS)), + Integer.parseInt(bot.textWithLabel(Messages.CreaterepoDeltaPropertyPage_maxNumberOfDeltas).getText())); + assertEquals(pref.getInt(CreaterepoPreferenceConstants.PREF_MAX_DELTA_SIZE, + prefStore.getInt(CreaterepoPreferenceConstants.PREF_MAX_DELTA_SIZE)), + Integer.parseInt(bot.textWithLabel(Messages.CreaterepoDeltaPropertyPage_maxDeltaSize).getText())); + } + + /** + * Test if all preferences modified in the deltas createrepo property + * page will reset to default. + */ + @Test + public void testRestoreDefaults() { + bot.checkBox(Messages.CreaterepoDeltaPropertyPage_booleanEnableLabel).click(); + bot.textWithLabel(Messages.CreaterepoDeltaPropertyPage_maxNumberOfDeltas).setText("9"); //$NON-NLS-1$ + bot.textWithLabel(Messages.CreaterepoDeltaPropertyPage_maxDeltaSize).setText("13"); //$NON-NLS-1$ + bot.button(ICreaterepoTestConstants.OK_BUTTON).click(); + openPropertyPage(); + bot.button(ICreaterepoTestConstants.DEFAULTS).click(); + bot.button(ICreaterepoTestConstants.OK_BUTTON).click(); + IEclipsePreferences pref = project.getEclipsePreferences(); + IPreferenceStore prefStore = Activator.getDefault().getPreferenceStore(); + assertTrue(prefStore.isDefault(CreaterepoPreferenceConstants.PREF_DELTA_ENABLE)); + assertEquals(pref.getInt(CreaterepoPreferenceConstants.PREF_NUM_DELTAS, + prefStore.getInt(CreaterepoPreferenceConstants.PREF_NUM_DELTAS)), + prefStore.getDefaultInt(CreaterepoPreferenceConstants.PREF_NUM_DELTAS)); + assertEquals(pref.getInt(CreaterepoPreferenceConstants.PREF_MAX_DELTA_SIZE, + prefStore.getInt(CreaterepoPreferenceConstants.PREF_MAX_DELTA_SIZE)), + prefStore.getDefaultInt(CreaterepoPreferenceConstants.PREF_MAX_DELTA_SIZE)); + } + + /** + * Test if all preferences stay the same as it was after pressing cancel + * instead of ok. + */ + @Test + public void testCancel() { + bot.checkBox(Messages.CreaterepoDeltaPropertyPage_booleanEnableLabel).click(); + bot.textWithLabel(Messages.CreaterepoDeltaPropertyPage_maxNumberOfDeltas).setText("9"); //$NON-NLS-1$ + bot.textWithLabel(Messages.CreaterepoDeltaPropertyPage_maxDeltaSize).setText("13"); //$NON-NLS-1$ + bot.button(ICreaterepoTestConstants.OK_BUTTON).click(); + openPropertyPage(); + bot.button(ICreaterepoTestConstants.DEFAULTS).click(); + bot.button(ICreaterepoTestConstants.CANCEL_BUTTON).click(); + openPropertyPage(); + IEclipsePreferences pref = project.getEclipsePreferences(); + IPreferenceStore prefStore = Activator.getDefault().getPreferenceStore(); + assertEquals(prefStore.getBoolean(CreaterepoPreferenceConstants.PREF_DELTA_ENABLE), + bot.checkBox(Messages.CreaterepoDeltaPropertyPage_booleanEnableLabel).isChecked()); + assertEquals(pref.getInt(CreaterepoPreferenceConstants.PREF_NUM_DELTAS, + prefStore.getInt(CreaterepoPreferenceConstants.PREF_NUM_DELTAS)), + Integer.parseInt(bot.textWithLabel(Messages.CreaterepoDeltaPropertyPage_maxNumberOfDeltas).getText())); + assertEquals(pref.getInt(CreaterepoPreferenceConstants.PREF_MAX_DELTA_SIZE, + prefStore.getInt(CreaterepoPreferenceConstants.PREF_MAX_DELTA_SIZE)), + Integer.parseInt(bot.textWithLabel(Messages.CreaterepoDeltaPropertyPage_maxDeltaSize).getText())); + } + + /** + * Open the resource perspective. + */ + private static void openResourcePerspective() { + // turn on the resource perspective + bot.menu(ICreaterepoTestConstants.WINDOW).menu(ICreaterepoTestConstants.SHOW_VIEW) + .menu(ICreaterepoTestConstants.OTHER).click(); + SWTBotShell shell = bot.shell(ICreaterepoTestConstants.SHOW_VIEW); + shell.activate(); + bot.tree().expandNode(ICreaterepoTestConstants.GENERAL_NODE).select(ICreaterepoTestConstants.NAVIGATOR); + bot.button(ICreaterepoTestConstants.OK_BUTTON).click(); + } + + /** + * Open the property page. + */ + private void openPropertyPage() { + SWTBotView view = bot.viewByTitle(ICreaterepoTestConstants.NAVIGATOR); + view.show(); + // select the .repo file from the package explorer and open its properties + Composite packageExplorer = (Composite)view.getWidget(); + assertNotNull(packageExplorer); + Tree swtTree = bot.widget(WidgetMatcherFactory.widgetOfType(Tree.class), packageExplorer); + assertNotNull(swtTree); + SWTBotTree botTree = new SWTBotTree(swtTree); + botTree.expandNode(ICreaterepoTestConstants.PROJECT_NAME).getNode(ICreaterepoTestConstants.REPO_NAME) + .contextMenu(ICreaterepoTestConstants.PROPERTIES).click(); + // get a handle of the property shell + SWTBotShell propertyShell = bot.shell(String.format(ICreaterepoTestConstants.PROPERTIES_SHELL, + ICreaterepoTestConstants.REPO_NAME)); + propertyShell.activate(); + bot.tree().expandNode(ICreaterepoTestConstants.CREATEREPO_CATEGORY).getNode(ICreaterepoTestConstants.DELTAS).select(); + } + +} diff --git a/rpm/org.eclipse.linuxtools.rpm.createrepo.tests/src/org/eclipse/linuxtools/internal/rpm/createrepo/preference/tests/CreaterepoGeneralPropertyPageTest.java b/rpm/org.eclipse.linuxtools.rpm.createrepo.tests/src/org/eclipse/linuxtools/internal/rpm/createrepo/preference/tests/CreaterepoGeneralPropertyPageTest.java new file mode 100644 index 0000000000..9d7cb0e5ce --- /dev/null +++ b/rpm/org.eclipse.linuxtools.rpm.createrepo.tests/src/org/eclipse/linuxtools/internal/rpm/createrepo/preference/tests/CreaterepoGeneralPropertyPageTest.java @@ -0,0 +1,312 @@ +/******************************************************************************* + * Copyright (c) 2013 Red Hat Inc. 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: + * Neil Guzman - initial API and implementation + *******************************************************************************/ +package org.eclipse.linuxtools.internal.rpm.createrepo.preference.tests; + +import static org.junit.Assert.*; + +import java.io.IOException; + +import org.eclipse.core.runtime.CoreException; +import org.eclipse.core.runtime.preferences.IEclipsePreferences; +import org.eclipse.jface.preference.IPreferenceStore; +import org.eclipse.linuxtools.internal.rpm.createrepo.Activator; +import org.eclipse.linuxtools.internal.rpm.createrepo.Messages; +import org.eclipse.linuxtools.rpm.createrepo.CreaterepoPreferenceConstants; +import org.eclipse.linuxtools.rpm.createrepo.CreaterepoProject; +import org.eclipse.linuxtools.rpm.createrepo.ICreaterepoChecksums; +import org.eclipse.linuxtools.rpm.createrepo.ICreaterepoCompressionTypes; +import org.eclipse.linuxtools.rpm.createrepo.tests.ICreaterepoTestConstants; +import org.eclipse.linuxtools.rpm.createrepo.tests.TestCreaterepoProject; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Tree; +import org.eclipse.swtbot.eclipse.finder.SWTWorkbenchBot; +import org.eclipse.swtbot.eclipse.finder.widgets.SWTBotView; +import org.eclipse.swtbot.swt.finder.exceptions.WidgetNotFoundException; +import org.eclipse.swtbot.swt.finder.junit.SWTBotJunit4ClassRunner; +import org.eclipse.swtbot.swt.finder.matchers.WidgetMatcherFactory; +import org.eclipse.swtbot.swt.finder.widgets.SWTBotShell; +import org.eclipse.swtbot.swt.finder.widgets.SWTBotTree; +import org.junit.After; +import org.junit.AfterClass; +import org.junit.Before; +import org.junit.BeforeClass; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.osgi.service.prefs.BackingStoreException; + +/** + * Tests for CreaterepoGeneralPropertyPage class. + */ +@RunWith(SWTBotJunit4ClassRunner.class) +public class CreaterepoGeneralPropertyPageTest { + + private static TestCreaterepoProject testProject; + private CreaterepoProject project; + private static SWTWorkbenchBot bot; + + /** + * Initialize the test project. + * + * @throws CoreException + */ + @BeforeClass + public static void setUpBeforeClass() throws CoreException { + testProject = new TestCreaterepoProject(); + assertTrue(testProject.getProject().exists()); + bot = new SWTWorkbenchBot(); + testProject.restoreDefaults(); + try { + bot.shell(ICreaterepoTestConstants.MAIN_SHELL).activate(); + } catch (WidgetNotFoundException e) { + // cannot activate main shell, continue anyways + } + openResourcePerspective(); + } + + /** + * Delete the project when tests are done. + * + * @throws CoreException + */ + @AfterClass + public static void tearDownAfterClass() throws CoreException { + testProject.dispose(); + assertFalse(testProject.getProject().exists()); + } + + /** + * Get the CreaterepoProject at the beginning of each test. + * + * @throws CoreException + * @throws IOException + */ + @Before + public void setUp() throws CoreException { + project = testProject.getCreaterepoProject(); + assertNotNull(project); + // before doing anything with SWTBot, activate the main shell + try { + bot.shell(ICreaterepoTestConstants.MAIN_SHELL).activate(); + } catch (WidgetNotFoundException e) { + // cannot activate main shell, continue anyways + } + openPropertyPage(); + } + + /** + * Restore the defaults for the general preference page. + * + * @throws BackingStoreException + */ + @After + public void tearDown() throws BackingStoreException { + try { + if (bot.shell(String.format(ICreaterepoTestConstants.PROPERTIES_SHELL, + ICreaterepoTestConstants.REPO_NAME)).isActive()) { + bot.shell(String.format(ICreaterepoTestConstants.PROPERTIES_SHELL, + ICreaterepoTestConstants.REPO_NAME)).close(); + } + } catch (WidgetNotFoundException e) { + // cannot close property shell + } + testProject.restoreDefaults(); + IEclipsePreferences pref = project.getEclipsePreferences(); + pref.clear(); + pref.flush(); + assertEquals(0, pref.keys().length); + } + + /** + * Test if all preferences modified in the general createrepo property + * page persist to project preferences. + */ + @Test + public void testChangePreferences() { + bot.checkBox(Messages.CreaterepoGeneralPropertyPage_projectSettings).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanChecksumName).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanGenerateSQLDB).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanIgnoreSymlinks).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanPrettyXML).click(); + bot.textWithLabel(Messages.CreaterepoPreferencePage_numWorkers).setText("9"); //$NON-NLS-1$ + bot.textWithLabel(Messages.CreaterepoPreferencePage_numChangelogLimit).setText("13"); //$NON-NLS-1$ + bot.checkBox(Messages.CreaterepoPreferencePage_booleanCheckTS).click(); + bot.radio(ICreaterepoChecksums.SHA512).click(); + bot.radio(ICreaterepoCompressionTypes.XZ).click(); + bot.button(ICreaterepoTestConstants.OK_BUTTON).click(); + openPropertyPage(); + IEclipsePreferences pref = project.getEclipsePreferences(); + IPreferenceStore prefStore = Activator.getDefault().getPreferenceStore(); + assertEquals(prefStore.getBoolean(CreaterepoPreferenceConstants.PREF_GENERAL_ENABLED), + bot.checkBox(Messages.CreaterepoGeneralPropertyPage_projectSettings).isChecked()); + assertEquals(pref.getBoolean(CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME, + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME)), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanChecksumName).isChecked()); + assertEquals(pref.getBoolean(CreaterepoPreferenceConstants.PREF_GENERATE_DB, + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_GENERATE_DB)), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanGenerateSQLDB).isChecked()); + assertEquals(pref.getBoolean(CreaterepoPreferenceConstants.PREF_IGNORE_SYMLINKS, + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_IGNORE_SYMLINKS)), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanIgnoreSymlinks).isChecked()); + assertEquals(pref.getBoolean(CreaterepoPreferenceConstants.PREF_PRETTY_XML, + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_PRETTY_XML)), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanPrettyXML).isChecked()); + assertEquals(pref.getInt(CreaterepoPreferenceConstants.PREF_WORKERS, + prefStore.getInt(CreaterepoPreferenceConstants.PREF_WORKERS)), + Integer.parseInt(bot.textWithLabel(Messages.CreaterepoPreferencePage_numWorkers).getText())); + assertEquals(pref.getInt(CreaterepoPreferenceConstants.PREF_CHANGELOG_LIMIT, + prefStore.getInt(CreaterepoPreferenceConstants.PREF_CHANGELOG_LIMIT)), + Integer.parseInt(bot.textWithLabel(Messages.CreaterepoPreferencePage_numChangelogLimit).getText())); + assertEquals(pref.getBoolean(CreaterepoPreferenceConstants.PREF_CHECK_TS, + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_CHECK_TS)), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanCheckTS).isChecked()); + assertTrue(bot.radio(pref.get(CreaterepoPreferenceConstants.PREF_CHECKSUM, + prefStore.getDefaultString(CreaterepoPreferenceConstants.PREF_CHECKSUM))).isSelected()); + assertTrue(bot.radio(pref.get(CreaterepoPreferenceConstants.PREF_COMPRESSION_TYPE, + prefStore.getDefaultString(CreaterepoPreferenceConstants.PREF_COMPRESSION_TYPE))).isSelected()); + } + + /** + * Test if all preferences modified in the general createrepo property + * page will reset to default. + */ + @Test + public void testRestoreDefaults() { + bot.checkBox(Messages.CreaterepoGeneralPropertyPage_projectSettings).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanChecksumName).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanGenerateSQLDB).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanIgnoreSymlinks).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanPrettyXML).click(); + bot.textWithLabel(Messages.CreaterepoPreferencePage_numWorkers).setText("9"); //$NON-NLS-1$ + bot.textWithLabel(Messages.CreaterepoPreferencePage_numChangelogLimit).setText("13"); //$NON-NLS-1$ + bot.checkBox(Messages.CreaterepoPreferencePage_booleanCheckTS).click(); + bot.radio(ICreaterepoChecksums.SHA512).click(); + bot.radio(ICreaterepoCompressionTypes.XZ).click(); + bot.button(ICreaterepoTestConstants.OK_BUTTON).click(); + openPropertyPage(); + bot.button(ICreaterepoTestConstants.DEFAULTS).click(); + bot.button(ICreaterepoTestConstants.OK_BUTTON).click(); + IEclipsePreferences pref = project.getEclipsePreferences(); + IPreferenceStore prefStore = Activator.getDefault().getPreferenceStore(); + assertTrue(prefStore.isDefault(CreaterepoPreferenceConstants.PREF_GENERAL_ENABLED)); + assertEquals(pref.getBoolean(CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME, + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME)), + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME)); + assertEquals(pref.getBoolean(CreaterepoPreferenceConstants.PREF_GENERATE_DB, + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_GENERATE_DB)), + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_GENERATE_DB)); + assertEquals(pref.getBoolean(CreaterepoPreferenceConstants.PREF_IGNORE_SYMLINKS, + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_IGNORE_SYMLINKS)), + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_IGNORE_SYMLINKS)); + assertEquals(pref.getBoolean(CreaterepoPreferenceConstants.PREF_PRETTY_XML, + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_PRETTY_XML)), + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_PRETTY_XML)); + assertEquals(pref.getInt(CreaterepoPreferenceConstants.PREF_WORKERS, + prefStore.getInt(CreaterepoPreferenceConstants.PREF_WORKERS)), + prefStore.getDefaultInt(CreaterepoPreferenceConstants.PREF_WORKERS)); + assertEquals(pref.getInt(CreaterepoPreferenceConstants.PREF_CHANGELOG_LIMIT, + prefStore.getInt(CreaterepoPreferenceConstants.PREF_CHANGELOG_LIMIT)), + prefStore.getDefaultInt(CreaterepoPreferenceConstants.PREF_CHANGELOG_LIMIT)); + assertEquals(pref.getBoolean(CreaterepoPreferenceConstants.PREF_CHECK_TS, + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_CHECK_TS)), + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_CHECK_TS)); + assertEquals(pref.get(CreaterepoPreferenceConstants.PREF_CHECKSUM, prefStore.getDefaultString(CreaterepoPreferenceConstants.PREF_CHECKSUM)), + prefStore.getDefaultString(CreaterepoPreferenceConstants.PREF_CHECKSUM)); + assertEquals(pref.get(CreaterepoPreferenceConstants.PREF_COMPRESSION_TYPE, prefStore.getDefaultString(CreaterepoPreferenceConstants.PREF_COMPRESSION_TYPE)), + prefStore.getDefaultString(CreaterepoPreferenceConstants.PREF_COMPRESSION_TYPE)); + } + + /** + * Test if all preferences stay the same as it was after pressing cancel + * instead of ok. + */ + @Test + public void testCancel() { + bot.checkBox(Messages.CreaterepoGeneralPropertyPage_projectSettings).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanChecksumName).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanGenerateSQLDB).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanIgnoreSymlinks).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanPrettyXML).click(); + bot.textWithLabel(Messages.CreaterepoPreferencePage_numWorkers).setText("9"); //$NON-NLS-1$ + bot.textWithLabel(Messages.CreaterepoPreferencePage_numChangelogLimit).setText("13"); //$NON-NLS-1$ + bot.checkBox(Messages.CreaterepoPreferencePage_booleanCheckTS).click(); + bot.radio(ICreaterepoChecksums.SHA512).click(); + bot.radio(ICreaterepoCompressionTypes.XZ).click(); + bot.button(ICreaterepoTestConstants.OK_BUTTON).click(); + openPropertyPage(); + bot.button(ICreaterepoTestConstants.DEFAULTS).click(); + bot.button(ICreaterepoTestConstants.CANCEL_BUTTON).click(); + openPropertyPage(); + IEclipsePreferences pref = project.getEclipsePreferences(); + IPreferenceStore prefStore = Activator.getDefault().getPreferenceStore(); + assertEquals(prefStore.getBoolean(CreaterepoPreferenceConstants.PREF_GENERAL_ENABLED), + bot.checkBox(Messages.CreaterepoGeneralPropertyPage_projectSettings).isChecked()); + assertEquals(pref.getBoolean(CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME, + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME)), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanChecksumName).isChecked()); + assertEquals(pref.getBoolean(CreaterepoPreferenceConstants.PREF_GENERATE_DB, + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_GENERATE_DB)), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanGenerateSQLDB).isChecked()); + assertEquals(pref.getBoolean(CreaterepoPreferenceConstants.PREF_IGNORE_SYMLINKS, + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_IGNORE_SYMLINKS)), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanIgnoreSymlinks).isChecked()); + assertEquals(pref.getBoolean(CreaterepoPreferenceConstants.PREF_PRETTY_XML, + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_PRETTY_XML)), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanPrettyXML).isChecked()); + assertEquals(pref.getInt(CreaterepoPreferenceConstants.PREF_WORKERS, + prefStore.getInt(CreaterepoPreferenceConstants.PREF_WORKERS)), + Integer.parseInt(bot.textWithLabel(Messages.CreaterepoPreferencePage_numWorkers).getText())); + assertEquals(pref.getInt(CreaterepoPreferenceConstants.PREF_CHANGELOG_LIMIT, + prefStore.getInt(CreaterepoPreferenceConstants.PREF_CHANGELOG_LIMIT)), + Integer.parseInt(bot.textWithLabel(Messages.CreaterepoPreferencePage_numChangelogLimit).getText())); + assertEquals(pref.getBoolean(CreaterepoPreferenceConstants.PREF_CHECK_TS, + prefStore.getDefaultBoolean(CreaterepoPreferenceConstants.PREF_CHECK_TS)), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanCheckTS).isChecked()); + assertTrue(bot.radio(pref.get(CreaterepoPreferenceConstants.PREF_CHECKSUM, + prefStore.getDefaultString(CreaterepoPreferenceConstants.PREF_CHECKSUM))).isSelected()); + assertTrue(bot.radio(pref.get(CreaterepoPreferenceConstants.PREF_COMPRESSION_TYPE, + prefStore.getDefaultString(CreaterepoPreferenceConstants.PREF_COMPRESSION_TYPE))).isSelected()); + } + + /** + * Open the resource perspective. + */ + private static void openResourcePerspective() { + // turn on the resource perspective + bot.menu(ICreaterepoTestConstants.WINDOW).menu(ICreaterepoTestConstants.SHOW_VIEW) + .menu(ICreaterepoTestConstants.OTHER).click(); + SWTBotShell shell = bot.shell(ICreaterepoTestConstants.SHOW_VIEW); + shell.activate(); + bot.tree().expandNode(ICreaterepoTestConstants.GENERAL_NODE).select(ICreaterepoTestConstants.NAVIGATOR); + bot.button(ICreaterepoTestConstants.OK_BUTTON).click(); + } + + /** + * Open the property page. + */ + private void openPropertyPage() { + SWTBotView view = bot.viewByTitle(ICreaterepoTestConstants.NAVIGATOR); + view.show(); + // select the .repo file from the package explorer and open its properties + Composite packageExplorer = (Composite)view.getWidget(); + assertNotNull(packageExplorer); + Tree swtTree = bot.widget(WidgetMatcherFactory.widgetOfType(Tree.class), packageExplorer); + assertNotNull(swtTree); + SWTBotTree botTree = new SWTBotTree(swtTree); + botTree.expandNode(ICreaterepoTestConstants.PROJECT_NAME).getNode(ICreaterepoTestConstants.REPO_NAME) + .contextMenu(ICreaterepoTestConstants.PROPERTIES).click(); + // get a handle of the property shell + SWTBotShell propertyShell = bot.shell(String.format(ICreaterepoTestConstants.PROPERTIES_SHELL, + ICreaterepoTestConstants.REPO_NAME)); + propertyShell.activate(); + bot.tree().expandNode(ICreaterepoTestConstants.CREATEREPO_CATEGORY).select(); + } + +} diff --git a/rpm/org.eclipse.linuxtools.rpm.createrepo.tests/src/org/eclipse/linuxtools/internal/rpm/createrepo/preference/tests/CreaterepoPreferencePageTest.java b/rpm/org.eclipse.linuxtools.rpm.createrepo.tests/src/org/eclipse/linuxtools/internal/rpm/createrepo/preference/tests/CreaterepoPreferencePageTest.java new file mode 100644 index 0000000000..068e41a015 --- /dev/null +++ b/rpm/org.eclipse.linuxtools.rpm.createrepo.tests/src/org/eclipse/linuxtools/internal/rpm/createrepo/preference/tests/CreaterepoPreferencePageTest.java @@ -0,0 +1,240 @@ +/******************************************************************************* + * Copyright (c) 2013 Red Hat Inc. 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: + * Neil Guzman - initial API and implementation + *******************************************************************************/ +package org.eclipse.linuxtools.internal.rpm.createrepo.preference.tests; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; + +import java.io.IOException; + +import org.eclipse.core.runtime.CoreException; +import org.eclipse.jface.preference.IPreferenceStore; +import org.eclipse.linuxtools.internal.rpm.createrepo.Activator; +import org.eclipse.linuxtools.internal.rpm.createrepo.Messages; +import org.eclipse.linuxtools.rpm.createrepo.CreaterepoPreferenceConstants; +import org.eclipse.linuxtools.rpm.createrepo.CreaterepoProject; +import org.eclipse.linuxtools.rpm.createrepo.ICreaterepoChecksums; +import org.eclipse.linuxtools.rpm.createrepo.ICreaterepoCompressionTypes; +import org.eclipse.linuxtools.rpm.createrepo.tests.ICreaterepoTestConstants; +import org.eclipse.linuxtools.rpm.createrepo.tests.TestCreaterepoProject; +import org.eclipse.swtbot.eclipse.finder.SWTWorkbenchBot; +import org.eclipse.swtbot.swt.finder.exceptions.WidgetNotFoundException; +import org.eclipse.swtbot.swt.finder.junit.SWTBotJunit4ClassRunner; +import org.eclipse.swtbot.swt.finder.widgets.SWTBotShell; +import org.junit.After; +import org.junit.AfterClass; +import org.junit.Before; +import org.junit.BeforeClass; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.osgi.service.prefs.BackingStoreException; + +/** + * Tests for CreaterepoPreferencePage class. + */ +@RunWith(SWTBotJunit4ClassRunner.class) +public class CreaterepoPreferencePageTest { + + private static TestCreaterepoProject testProject; + private CreaterepoProject project; + private static SWTWorkbenchBot bot; + + /** + * Initialize the test project. + * + * @throws CoreException + */ + @BeforeClass + public static void setUpBeforeClass() throws CoreException { + testProject = new TestCreaterepoProject(); + assertTrue(testProject.getProject().exists()); + bot = new SWTWorkbenchBot(); + testProject.restoreDefaults(); + try { + bot.shell(ICreaterepoTestConstants.MAIN_SHELL).activate(); + } catch (WidgetNotFoundException e) { + // cannot activate main shell, continue anyways + } + } + + /** + * Delete the project when tests are done. + * + * @throws CoreException + */ + @AfterClass + public static void tearDownAfterClass() throws CoreException { + testProject.dispose(); + assertFalse(testProject.getProject().exists()); + } + + /** + * Get the CreaterepoProject at the beginning of each test. + * + * @throws CoreException + * @throws IOException + */ + @Before + public void setUp() throws CoreException { + project = testProject.getCreaterepoProject(); + assertNotNull(project); + // before doing anything with SWTBot, activate the main shell + try { + bot.shell(ICreaterepoTestConstants.MAIN_SHELL).activate(); + } catch (WidgetNotFoundException e) { + // cannot activate main shell, continue anyways + } + openPreferencePage(); + } + + /** + * Restore the defaults for the general preference page. + * + * @throws BackingStoreException + */ + @After + public void tearDown() throws BackingStoreException { + try { + if (bot.shell(ICreaterepoTestConstants.PREFERENCES).isActive()) { + bot.shell(ICreaterepoTestConstants.PREFERENCES).close(); + } + } catch (WidgetNotFoundException e) { + // cannot close preference shell + } + testProject.restoreDefaults(); + } + + /** + * Test if all preferences modified in the general createrepo preference + * page persist to workspace preferences. + */ + @Test + public void testChangePreferences() { + bot.checkBox(Messages.CreaterepoPreferencePage_booleanChecksumName).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanGenerateSQLDB).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanIgnoreSymlinks).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanPrettyXML).click(); + bot.textWithLabel(Messages.CreaterepoPreferencePage_numWorkers).setText("9"); //$NON-NLS-1$ + bot.textWithLabel(Messages.CreaterepoPreferencePage_numChangelogLimit).setText("13"); //$NON-NLS-1$ + bot.checkBox(Messages.CreaterepoPreferencePage_booleanCheckTS).click(); + bot.radio(ICreaterepoChecksums.SHA512).click(); + bot.radio(ICreaterepoCompressionTypes.XZ).click(); + bot.button(ICreaterepoTestConstants.OK_BUTTON).click(); + openPreferencePage(); + // verify the changes + IPreferenceStore prefStore = Activator.getDefault().getPreferenceStore(); + assertEquals(prefStore.getBoolean(CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanChecksumName).isChecked()); + assertEquals(prefStore.getBoolean(CreaterepoPreferenceConstants.PREF_GENERATE_DB), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanGenerateSQLDB).isChecked()); + assertEquals(prefStore.getBoolean(CreaterepoPreferenceConstants.PREF_IGNORE_SYMLINKS), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanIgnoreSymlinks).isChecked()); + assertEquals(prefStore.getBoolean(CreaterepoPreferenceConstants.PREF_PRETTY_XML), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanPrettyXML).isChecked()); + assertEquals(prefStore.getInt(CreaterepoPreferenceConstants.PREF_WORKERS), + Integer.parseInt(bot.textWithLabel(Messages.CreaterepoPreferencePage_numWorkers).getText())); + assertEquals(prefStore.getInt(CreaterepoPreferenceConstants.PREF_CHANGELOG_LIMIT), + Integer.parseInt(bot.textWithLabel(Messages.CreaterepoPreferencePage_numChangelogLimit).getText())); + assertEquals(prefStore.getBoolean(CreaterepoPreferenceConstants.PREF_CHECK_TS), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanCheckTS).isChecked()); + assertTrue(bot.radio(prefStore.getString(CreaterepoPreferenceConstants.PREF_CHECKSUM)).isSelected()); + assertTrue(bot.radio(prefStore.getString(CreaterepoPreferenceConstants.PREF_COMPRESSION_TYPE)).isSelected()); + } + + /** + * Test if the restore defaults button resets the workspace preference settings back + * to its defaults. + */ + @Test + public void testRestoreDefaults() { + bot.checkBox(Messages.CreaterepoPreferencePage_booleanChecksumName).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanGenerateSQLDB).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanIgnoreSymlinks).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanPrettyXML).click(); + bot.textWithLabel(Messages.CreaterepoPreferencePage_numWorkers).setText("9"); //$NON-NLS-1$ + bot.textWithLabel(Messages.CreaterepoPreferencePage_numChangelogLimit).setText("13"); //$NON-NLS-1$ + bot.checkBox(Messages.CreaterepoPreferencePage_booleanCheckTS).click(); + bot.radio(ICreaterepoChecksums.SHA512).click(); + bot.radio(ICreaterepoCompressionTypes.XZ).click(); + bot.button(ICreaterepoTestConstants.OK_BUTTON).click(); + openPreferencePage(); + bot.button(ICreaterepoTestConstants.DEFAULTS).click(); + bot.button(ICreaterepoTestConstants.OK_BUTTON).click(); + // veryify the changes + IPreferenceStore prefStore = Activator.getDefault().getPreferenceStore(); + assertTrue(prefStore.isDefault(CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME)); + assertTrue(prefStore.isDefault(CreaterepoPreferenceConstants.PREF_GENERATE_DB)); + assertTrue(prefStore.isDefault(CreaterepoPreferenceConstants.PREF_IGNORE_SYMLINKS)); + assertTrue(prefStore.isDefault(CreaterepoPreferenceConstants.PREF_PRETTY_XML)); + assertTrue(prefStore.isDefault(CreaterepoPreferenceConstants.PREF_WORKERS)); + assertTrue(prefStore.isDefault(CreaterepoPreferenceConstants.PREF_CHANGELOG_LIMIT)); + assertTrue(prefStore.isDefault(CreaterepoPreferenceConstants.PREF_CHECK_TS)); + assertTrue(prefStore.isDefault(CreaterepoPreferenceConstants.PREF_CHECKSUM)); + assertTrue(prefStore.isDefault(CreaterepoPreferenceConstants.PREF_COMPRESSION_TYPE)); + assertTrue(prefStore.isDefault(CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME)); + assertTrue(prefStore.isDefault(CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME)); + assertTrue(prefStore.isDefault(CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME)); + } + + /** + * Test if all preferences stay the same as it was after pressing cancel + * instead of ok. + */ + @Test + public void testCancel() { + bot.checkBox(Messages.CreaterepoPreferencePage_booleanChecksumName).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanGenerateSQLDB).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanIgnoreSymlinks).click(); + bot.checkBox(Messages.CreaterepoPreferencePage_booleanPrettyXML).click(); + bot.textWithLabel(Messages.CreaterepoPreferencePage_numWorkers).setText("9"); //$NON-NLS-1$ + bot.textWithLabel(Messages.CreaterepoPreferencePage_numChangelogLimit).setText("13"); //$NON-NLS-1$ + bot.checkBox(Messages.CreaterepoPreferencePage_booleanCheckTS).click(); + bot.radio(ICreaterepoChecksums.SHA512).click(); + bot.radio(ICreaterepoCompressionTypes.XZ).click(); + bot.button(ICreaterepoTestConstants.OK_BUTTON).click(); + openPreferencePage(); + bot.button(ICreaterepoTestConstants.DEFAULTS).click(); + bot.button(ICreaterepoTestConstants.CANCEL_BUTTON).click(); + openPreferencePage(); + // verify the changes + IPreferenceStore prefStore = Activator.getDefault().getPreferenceStore(); + assertEquals(prefStore.getBoolean(CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanChecksumName).isChecked()); + assertEquals(prefStore.getBoolean(CreaterepoPreferenceConstants.PREF_GENERATE_DB), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanGenerateSQLDB).isChecked()); + assertEquals(prefStore.getBoolean(CreaterepoPreferenceConstants.PREF_IGNORE_SYMLINKS), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanIgnoreSymlinks).isChecked()); + assertEquals(prefStore.getBoolean(CreaterepoPreferenceConstants.PREF_PRETTY_XML), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanPrettyXML).isChecked()); + assertEquals(prefStore.getInt(CreaterepoPreferenceConstants.PREF_WORKERS), + Integer.parseInt(bot.textWithLabel(Messages.CreaterepoPreferencePage_numWorkers).getText())); + assertEquals(prefStore.getInt(CreaterepoPreferenceConstants.PREF_CHANGELOG_LIMIT), + Integer.parseInt(bot.textWithLabel(Messages.CreaterepoPreferencePage_numChangelogLimit).getText())); + assertEquals(prefStore.getBoolean(CreaterepoPreferenceConstants.PREF_CHECK_TS), + bot.checkBox(Messages.CreaterepoPreferencePage_booleanCheckTS).isChecked()); + assertTrue(bot.radio(prefStore.getString(CreaterepoPreferenceConstants.PREF_CHECKSUM)).isSelected()); + assertTrue(bot.radio(prefStore.getString(CreaterepoPreferenceConstants.PREF_COMPRESSION_TYPE)).isSelected()); + } + + /** + * Open the preference page. + */ + private void openPreferencePage() { + // open the preferences window + bot.menu(ICreaterepoTestConstants.WINDOW).menu(ICreaterepoTestConstants.PREFERENCES).click(); + SWTBotShell shell = bot.shell(ICreaterepoTestConstants.PREFERENCES); + shell.activate(); + bot.tree().select(ICreaterepoTestConstants.CREATEREPO_CATEGORY); + } + +} diff --git a/rpm/org.eclipse.linuxtools.rpm.createrepo.tests/src/org/eclipse/linuxtools/rpm/createrepo/tests/AllTests.java b/rpm/org.eclipse.linuxtools.rpm.createrepo.tests/src/org/eclipse/linuxtools/rpm/createrepo/tests/AllTests.java index ba1b260aaf..07f5f24abc 100644 --- a/rpm/org.eclipse.linuxtools.rpm.createrepo.tests/src/org/eclipse/linuxtools/rpm/createrepo/tests/AllTests.java +++ b/rpm/org.eclipse.linuxtools.rpm.createrepo.tests/src/org/eclipse/linuxtools/rpm/createrepo/tests/AllTests.java @@ -14,7 +14,10 @@ import org.eclipse.linuxtools.internal.rpm.createrepo.form.tests.CreaterepoImpor import org.eclipse.linuxtools.internal.rpm.createrepo.form.tests.CreaterepoMetadataPageTest; import org.eclipse.linuxtools.internal.rpm.createrepo.form.tests.CreaterepoRepoFormEditorTest; import org.eclipse.linuxtools.internal.rpm.createrepo.listener.tests.CreaterepoResourceListenerTest; +import org.eclipse.linuxtools.internal.rpm.createrepo.preference.tests.CreaterepoDeltaPropertyPageTest; +import org.eclipse.linuxtools.internal.rpm.createrepo.preference.tests.CreaterepoGeneralPropertyPageTest; import org.eclipse.linuxtools.internal.rpm.createrepo.preference.tests.CreaterepoPreferenceInitializationTest; +import org.eclipse.linuxtools.internal.rpm.createrepo.preference.tests.CreaterepoPreferencePageTest; import org.eclipse.linuxtools.internal.rpm.createrepo.tests.CreaterepoCommandCreatorTest; import org.eclipse.linuxtools.internal.rpm.createrepo.tests.CreaterepoTest; import org.eclipse.linuxtools.internal.rpm.createrepo.tree.tests.CreaterepoTreeCategoryTest; @@ -29,7 +32,8 @@ import org.junit.runners.Suite.SuiteClasses; CreaterepoProjectTest.class, CreaterepoTreeCategoryTest.class, CreaterepoTreeTest.class, CreaterepoWizardTest.class, CreaterepoTest.class, CreaterepoPreferenceInitializationTest.class, CreaterepoRepoFormEditorTest.class, CreaterepoImportRPMsPageTest.class, CreaterepoMetadataPageTest.class, - CreaterepoResourceListenerTest.class, CreaterepoCommandCreatorTest.class}) + CreaterepoResourceListenerTest.class, CreaterepoCommandCreatorTest.class, + CreaterepoPreferencePageTest.class, CreaterepoGeneralPropertyPageTest.class, CreaterepoDeltaPropertyPageTest.class}) public class AllTests { //Nothing here as annotation is important } diff --git a/rpm/org.eclipse.linuxtools.rpm.createrepo.tests/src/org/eclipse/linuxtools/rpm/createrepo/tests/ICreaterepoTestConstants.java b/rpm/org.eclipse.linuxtools.rpm.createrepo.tests/src/org/eclipse/linuxtools/rpm/createrepo/tests/ICreaterepoTestConstants.java index 2166080df4..2a7244113d 100644 --- a/rpm/org.eclipse.linuxtools.rpm.createrepo.tests/src/org/eclipse/linuxtools/rpm/createrepo/tests/ICreaterepoTestConstants.java +++ b/rpm/org.eclipse.linuxtools.rpm.createrepo.tests/src/org/eclipse/linuxtools/rpm/createrepo/tests/ICreaterepoTestConstants.java @@ -31,8 +31,12 @@ public interface ICreaterepoTestConstants { String CANCEL_BUTTON = "Cancel"; //$NON-NLS-1$ String WINDOW = "Window"; //$NON-NLS-1$ String SHOW_VIEW = "Show View"; //$NON-NLS-1$ + String PREFERENCES = "Preferences"; //$NON-NLS-1$ String OK_BUTTON = "OK"; //$NON-NLS-1$ String OPEN = "Open"; //$NON-NLS-1$ + String DEFAULTS = "Restore Defaults"; //$NON-NLS-1$ + String PROPERTIES = "Properties"; //$NON-NLS-1$ + String PROPERTIES_SHELL = "Properties for %s"; //$NON-NLS-1$ /* * Views @@ -71,6 +75,7 @@ public interface ICreaterepoTestConstants { /* * Preferences used */ + String DELTAS = "Deltas"; //$NON-NLS-1$ String[] PREFS_ARRAY = { CreaterepoPreferenceConstants.PREF_DISTRO_TAG, CreaterepoPreferenceConstants.PREF_CONTENT_TAG, |