import it.issue.IssueSearchTest;
import it.issue.IssueTrackingTest;
import it.issue.IssueWorkflowTest;
-import it.issue.ManualRulesTest;
import it.issue.NewIssuesMeasureTest;
import it.measure.NewDebtRatioMeasureTest;
import it.measure.TechnicalDebtMeasureVariationTest;
import it.measureFilter.MeasureFiltersTest;
+import it.rule.ManualRulesTest;
import it.test.CoverageTest;
import it.test.CoverageTrackingTest;
import it.test.NewCoverageTest;
+++ /dev/null
-/*
- * SonarQube
- * Copyright (C) 2009-2016 SonarSource SA
- * mailto:contact AT sonarsource DOT com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-package it.issue;
-
-import com.sonar.orchestrator.selenium.Selenese;
-import java.sql.Connection;
-import java.sql.SQLException;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Test;
-import util.selenium.SeleneseTest;
-
-public class ManualRulesTest extends AbstractIssueTest {
-
- @BeforeClass
- public static void setup() throws Exception {
- ORCHESTRATOR.resetData();
- deleteManualRules();
- }
-
- @AfterClass
- public static void purgeManualRules() {
- deleteManualRules();
- }
-
- @Test
- public void testManualRules() {
- Selenese selenese = Selenese
- .builder()
- .setHtmlTestsInClasspath("manual-rules",
- "/issue/ManualRulesTest/create_edit_delete_manual_rule.html"
- ).build();
- new SeleneseTest(selenese).runOn(ORCHESTRATOR);
- }
-
- protected static void deleteManualRules() {
- try {
- Connection connection = ORCHESTRATOR.getDatabase().openConnection();
- connection.prepareStatement("DELETE FROM rules WHERE rules.plugin_name='manual'").execute();
- } catch (SQLException e) {
- throw new IllegalStateException("Fail to remove manual rules", e);
- }
- }
-
-}
--- /dev/null
+/*
+ * SonarQube
+ * Copyright (C) 2009-2016 SonarSource SA
+ * mailto:contact AT sonarsource DOT com
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+package it.rule;
+
+import com.sonar.orchestrator.Orchestrator;
+import com.sonar.orchestrator.selenium.Selenese;
+import it.Category2Suite;
+import java.sql.Connection;
+import java.sql.SQLException;
+import org.junit.AfterClass;
+import org.junit.Before;
+import org.junit.ClassRule;
+import org.junit.Test;
+import util.selenium.SeleneseTest;
+
+public class ManualRulesTest {
+
+ @ClassRule
+ public static final Orchestrator ORCHESTRATOR = Category2Suite.ORCHESTRATOR;
+
+ @Before
+ public void setup() throws Exception {
+ ORCHESTRATOR.resetData();
+ deleteManualRules();
+ }
+
+ @AfterClass
+ public static void purgeManualRules() {
+ deleteManualRules();
+ }
+
+ @Test
+ public void manual_rules() {
+ new SeleneseTest(Selenese.builder().setHtmlTestsInClasspath("manual-rules",
+ "/rule/ManualRulesTest/create_edit_delete_manual_rule.html"
+ ).build()
+ ).runOn(ORCHESTRATOR);
+ }
+
+ protected static void deleteManualRules() {
+ try {
+ Connection connection = ORCHESTRATOR.getDatabase().openConnection();
+ connection.prepareStatement("DELETE FROM rules WHERE rules.plugin_name='manual'").execute();
+ } catch (SQLException e) {
+ throw new IllegalStateException("Fail to remove manual rules", e);
+ }
+ }
+
+}
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head profile="http://selenium-ide.openqa.org/profiles/test-case">
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
- <title>create_edit_delete_manual_rule</title>
-</head>
-<body>
-<table cellpadding="1" cellspacing="1" border="1">
- <tbody>
- <tr>
- <td>open</td>
- <td>/sessions/new</td>
- <td></td>
-</tr>
-<tr>
- <td>type</td>
- <td>login</td>
- <td>admin</td>
-</tr>
-<tr>
- <td>type</td>
- <td>password</td>
- <td>admin</td>
-</tr>
-<tr>
- <td>clickAndWait</td>
- <td>commit</td>
- <td></td>
-</tr>
-<tr>
- <td>open</td>
- <td>/coding_rules</td>
- <td></td>
-</tr>
-<tr>
- <td>waitForElementPresent</td>
- <td>css=.js-create-manual-rule</td>
- <td></td>
-</tr>
-<tr>
- <td>click</td>
- <td>css=.js-create-manual-rule</td>
- <td></td>
-</tr>
-<tr>
- <td>waitForVisible</td>
- <td>coding-rules-manual-rule-creation-create</td>
- <td></td>
-</tr>
-<tr>
- <td>type</td>
- <td>name=name</td>
- <td>New rule</td>
-</tr>
-<tr>
- <td>type</td>
- <td>name=key</td>
- <td>New_rule</td>
-</tr>
-<tr>
- <td>type</td>
- <td>name=markdown_description</td>
- <td>This is a new rule</td>
-</tr>
-<tr>
- <td>click</td>
- <td>coding-rules-manual-rule-creation-create</td>
- <td></td>
-</tr>
-<tr>
- <td>waitForElementPresent</td>
- <td>css=.coding-rules-detail-header</td>
- <td></td>
-</tr>
-<tr>
- <td>assertText</td>
- <td>css=.coding-rule-details</td>
- <td>glob:*New rule*This is a new rule*</td>
-</tr>
-<tr>
- <td>click</td>
- <td>coding-rules-detail-manual-rule-change</td>
- <td></td>
-</tr>
-<tr>
- <td>waitForVisible</td>
- <td>coding-rules-manual-rule-creation-create</td>
- <td></td>
-</tr>
-<tr>
- <td>type</td>
- <td>name=markdown_description</td>
- <td>Description updated</td>
-</tr>
-<tr>
- <td>click</td>
- <td>coding-rules-manual-rule-creation-create</td>
- <td></td>
-</tr>
-<tr>
- <td>waitForText</td>
- <td>css=.coding-rule-details</td>
- <td>glob:*New rule*Description updated*</td>
-</tr>
-<tr>
- <td>click</td>
- <td>coding-rules-detail-rule-delete</td>
- <td></td>
-</tr>
-<tr>
- <td>waitForVisible</td>
- <td>css=[data-confirm="yes"]</td>
- <td></td>
-</tr>
-<tr>
- <td>click</td>
- <td>css=[data-confirm="yes"]</td>
- <td></td>
-</tr>
-<tr>
- <td>waitForNotText</td>
- <td>css=.search-navigator-workspace-list</td>
- <td>glob:*New rule*</td>
-</tr>
-</tbody>
-</table>
-</body>
-</html>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+ <title>create_edit_delete_manual_rule</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+ <tbody>
+ <tr>
+ <td>open</td>
+ <td>/sessions/new</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>type</td>
+ <td>login</td>
+ <td>admin</td>
+ </tr>
+ <tr>
+ <td>type</td>
+ <td>password</td>
+ <td>admin</td>
+ </tr>
+ <tr>
+ <td>clickAndWait</td>
+ <td>commit</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>open</td>
+ <td>/coding_rules</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>waitForElementPresent</td>
+ <td>css=.js-create-manual-rule</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>click</td>
+ <td>css=.js-create-manual-rule</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>waitForVisible</td>
+ <td>coding-rules-manual-rule-creation-create</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>type</td>
+ <td>name=name</td>
+ <td>New rule</td>
+ </tr>
+ <tr>
+ <td>type</td>
+ <td>name=key</td>
+ <td>New_rule</td>
+ </tr>
+ <tr>
+ <td>type</td>
+ <td>name=markdown_description</td>
+ <td>This is a new rule</td>
+ </tr>
+ <tr>
+ <td>click</td>
+ <td>coding-rules-manual-rule-creation-create</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>waitForElementPresent</td>
+ <td>css=.coding-rules-detail-header</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>assertText</td>
+ <td>css=.coding-rule-details</td>
+ <td>glob:*New rule*This is a new rule*</td>
+ </tr>
+ <tr>
+ <td>click</td>
+ <td>coding-rules-detail-manual-rule-change</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>waitForVisible</td>
+ <td>coding-rules-manual-rule-creation-create</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>type</td>
+ <td>name=markdown_description</td>
+ <td>Description updated</td>
+ </tr>
+ <tr>
+ <td>click</td>
+ <td>coding-rules-manual-rule-creation-create</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>waitForText</td>
+ <td>css=.coding-rule-details</td>
+ <td>glob:*New rule*Description updated*</td>
+ </tr>
+ <tr>
+ <td>click</td>
+ <td>coding-rules-detail-rule-delete</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>waitForVisible</td>
+ <td>css=[data-confirm="yes"]</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>click</td>
+ <td>css=[data-confirm="yes"]</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>waitForNotText</td>
+ <td>css=.search-navigator-workspace-list</td>
+ <td>glob:*New rule*</td>
+ </tr>
+ </tbody>
+</table>
+</body>
+</html>