PageRenderTime 47ms CodeModel.GetById 19ms RepoModel.GetById 0ms app.codeStats 0ms

/src/test/java/it/com/burningcode/jira/plugin/IntegrationTestWatcherFieldSettings.java

https://bitbucket.org/rbarham/jira-watcher-field-plugin
Java | 69 lines | 52 code | 14 blank | 3 comment | 0 complexity | 6bf1ef53889eb49f9d7976cc33c33ef4 MD5 | raw file
  1. package it.com.burningcode.jira.plugin;
  2. import com.atlassian.integrationtesting.runner.restore.Restore;
  3. import com.atlassian.jira.functest.framework.Administration;
  4. import com.atlassian.jira.functest.framework.BaseJiraFuncTest;
  5. import com.atlassian.jira.functest.framework.LoginAs;
  6. import com.atlassian.jira.functest.framework.assertions.Assertions;
  7. import com.burningcode.jira.plugin.WatcherFieldSettings;
  8. import org.junit.Test;
  9. import javax.inject.Inject;
  10. import static com.atlassian.jira.functest.framework.FunctTestConstants.*;
  11. import static it.com.burningcode.jira.IntegrationTestHelper.EXPORT_WITH_FIELD;
  12. @LoginAs(user = "admin")
  13. public class IntegrationTestWatcherFieldSettings extends BaseJiraFuncTest {
  14. @Inject
  15. public Administration administration;
  16. @Inject
  17. protected Assertions assertions;
  18. protected void assertBooleanSettingChange(final String setting, final boolean currentValue, final boolean newValue) {
  19. final String currentValueStr = String.valueOf(currentValue);
  20. final String newValueStr = String.valueOf(newValue);
  21. navigation.gotoResource("WatcherFieldSettings.jspa");
  22. tester.clickLink("edit_watcher_field_settings");
  23. tester.assertRadioOptionSelected(setting, currentValueStr);
  24. tester.setFormElement(setting, newValueStr);
  25. tester.assertRadioOptionSelected(setting, newValueStr);
  26. tester.submit("Update");
  27. navigation.gotoResource("EditWatcherFieldSettings!default.jspa");
  28. tester.assertRadioOptionSelected(setting, newValueStr);
  29. }
  30. /**
  31. * Test to verify Issue #11 is fixed
  32. */
  33. @Test
  34. @Restore(EXPORT_WITH_FIELD)
  35. public void testSettingsLink() {
  36. navigation.gotoAdmin();
  37. navigation.clickLinkWithExactText("Add-ons");
  38. assertions.getTextAssertions().assertTextPresent("Watcher Field Settings");
  39. }
  40. @Test
  41. @Restore(EXPORT_WITH_FIELD)
  42. public void testChangeSettings() {
  43. assertBooleanSettingChange(WatcherFieldSettings.ignoreUserPermissions, false, true);
  44. assertBooleanSettingChange(WatcherFieldSettings.ignoreWatcherPermissions, false, true);
  45. assertBooleanSettingChange(WatcherFieldSettings.ignoreDeactivatedWatchers, false, true);
  46. }
  47. @Test
  48. @Restore(EXPORT_WITH_FIELD)
  49. public void testAccessWithoutPermissions() {
  50. administration.usersAndGroups().addUser(FRED_USERNAME, FRED_PASSWORD, FRED_FULLNAME, FRED_EMAIL, false);
  51. navigation.login(FRED_USERNAME);
  52. navigation.gotoResource("WatcherFieldSettings.jspa");
  53. assertions.getTextAssertions().assertTextPresent("Access Denied");
  54. }
  55. }