From c525e88aede29f28fdafc9918baaede40c5dc8d4 Mon Sep 17 00:00:00 2001 From: Stas Vilchik Date: Fri, 15 Jul 2016 17:19:26 +0200 Subject: [PATCH] fix saving of new issue filter --- .../src/test/java/it/Category2Suite.java | 2 + .../test/java/it/issue/IssuesPageTest.java | 44 ++++++++ .../IssuesPageTest/save_new_issue_filter.html | 105 ++++++++++++++++++ .../src/main/js/apps/issues/models/filter.js | 2 +- 4 files changed, 152 insertions(+), 1 deletion(-) create mode 100644 it/it-tests/src/test/java/it/issue/IssuesPageTest.java create mode 100644 it/it-tests/src/test/resources/issue/IssuesPageTest/save_new_issue_filter.html diff --git a/it/it-tests/src/test/java/it/Category2Suite.java b/it/it-tests/src/test/java/it/Category2Suite.java index ad57842de3f..e30b9d043f6 100644 --- a/it/it-tests/src/test/java/it/Category2Suite.java +++ b/it/it-tests/src/test/java/it/Category2Suite.java @@ -36,6 +36,7 @@ import it.issue.IssuePurgeTest; import it.issue.IssueSearchTest; import it.issue.IssueTrackingTest; import it.issue.IssueWorkflowTest; +import it.issue.IssuesPageTest; import it.issue.NewIssuesMeasureTest; import it.qualityModel.MaintainabilityMeasureTest; import it.qualityModel.MaintainabilityRatingMeasureTest; @@ -84,6 +85,7 @@ import static util.ItUtils.xooPlugin; IssueSearchTest.class, IssueTrackingTest.class, IssueWorkflowTest.class, + IssuesPageTest.class, NewIssuesMeasureTest.class, // debt MaintainabilityMeasureTest.class, diff --git a/it/it-tests/src/test/java/it/issue/IssuesPageTest.java b/it/it-tests/src/test/java/it/issue/IssuesPageTest.java new file mode 100644 index 00000000000..b44df9ce131 --- /dev/null +++ b/it/it-tests/src/test/java/it/issue/IssuesPageTest.java @@ -0,0 +1,44 @@ +/* + * 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.Orchestrator; +import com.sonar.orchestrator.selenium.Selenese; +import it.Category2Suite; +import org.junit.ClassRule; +import org.junit.Test; +import org.junit.experimental.categories.Category; +import util.QaOnly; +import util.selenium.SeleneseTest; + +@Category(QaOnly.class) +public class IssuesPageTest { + + @ClassRule + public static Orchestrator orchestrator = Category2Suite.ORCHESTRATOR; + + @Test + public void save_new_issue_filter() throws Exception { + Selenese selenese = Selenese.builder().setHtmlTestsInClasspath("save_new_issue_filter", + "/issue/IssuesPageTest/save_new_issue_filter.html" + ).build(); + new SeleneseTest(selenese).runOn(orchestrator); + } +} diff --git a/it/it-tests/src/test/resources/issue/IssuesPageTest/save_new_issue_filter.html b/it/it-tests/src/test/resources/issue/IssuesPageTest/save_new_issue_filter.html new file mode 100644 index 00000000000..a7686cb8c58 --- /dev/null +++ b/it/it-tests/src/test/resources/issue/IssuesPageTest/save_new_issue_filter.html @@ -0,0 +1,105 @@ + + + + + + + save_new_issue_filter + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
save_new_issue_filter
open/sessions/login
typeloginadmin
typepasswordadmin
clickAndWaitcommit
waitForElementPresentcss=.js-user-authenticated
open/issues/search
waitForElementPresentcss=.js-facet[data-value="BUG"]
clickcss=.js-facet[data-value="BUG"]
waitForElementPresentcss=.js-facet.active[data-value="BUG"]
clickcss=.js-filter-save-as
waitForElementPresentcss=input[name="name"]
typenametest
typedescriptionsuper filter
clickcss=#save-as-submit
waitForTextcss=.issues-filters-name*test*
waitForTextcss=.search-navigator-filters-description*super filter*
waitForElementPresentcss=.js-facet.active[data-value="BUG"]
+ + diff --git a/server/sonar-web/src/main/js/apps/issues/models/filter.js b/server/sonar-web/src/main/js/apps/issues/models/filter.js index d976adf5349..b09fdbf61b0 100644 --- a/server/sonar-web/src/main/js/apps/issues/models/filter.js +++ b/server/sonar-web/src/main/js/apps/issues/models/filter.js @@ -21,7 +21,7 @@ import Backbone from 'backbone'; export default Backbone.Model.extend({ url () { - return window.baseUrl + '/api/issue_filters/show/' + this.id; + return window.baseUrl + '/api/issue_filters/show?id=' + this.id; }, parse (r) { -- 2.39.5