You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@zeppelin.apache.org by fe...@apache.org on 2018/03/09 07:08:51 UTC
zeppelin git commit: [ZEPPELIN-3180] BUGFIX - save operation on
interpreter add whitespace to permissions
Repository: zeppelin
Updated Branches:
refs/heads/master 0267ecf76 -> 4fc048238
[ZEPPELIN-3180] BUGFIX - save operation on interpreter add whitespace to permissions
### What is this PR for?
This PR fixes a bug when unnecessary spaces are added to the permissions.
### What type of PR is it?
[Bug Fix]
### What is the Jira issue?
[ZEPPELIN-3180](https://issues.apache.org/jira/browse/ZEPPELIN-3180)
### Questions:
* Does the licenses files need update? no
* Is there breaking changes for older versions? no
* Does this needs documentation? no
Author: Savalek <de...@mail.ru>
Closes #2749 from Savalek/ZEPPELIN-3180 and squashes the following commits:
b24f1d4 [Savalek] Merge branch 'master' into ZEPPELIN-3180
b2f58fb [Savalek] Merge remote-tracking branch 'upstream/master' into ZEPPELIN-3180
84ee2cb [Savalek] Merge remote-tracking branch 'upstream/master' into ZEPPELIN-3180
28c537e [Savalek] [ZEPPELIN-3212] add test
0d4a900 [Savalek] [ZEPPELIN-3180] FIX - interpreter add whitespace to permissions
Project: http://git-wip-us.apache.org/repos/asf/zeppelin/repo
Commit: http://git-wip-us.apache.org/repos/asf/zeppelin/commit/4fc04823
Tree: http://git-wip-us.apache.org/repos/asf/zeppelin/tree/4fc04823
Diff: http://git-wip-us.apache.org/repos/asf/zeppelin/diff/4fc04823
Branch: refs/heads/master
Commit: 4fc0482385a150ab6712d7f44e00e37d16cd4bdf
Parents: 0267ecf
Author: Savalek <de...@mail.ru>
Authored: Tue Feb 27 14:08:18 2018 +0300
Committer: Felix Cheung <fe...@apache.org>
Committed: Thu Mar 8 23:08:46 2018 -0800
----------------------------------------------------------------------
zeppelin-web/e2e/home.spec.js | 48 ++++++++++++++++++++
.../app/interpreter/interpreter.controller.js | 3 ++
2 files changed, 51 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/zeppelin/blob/4fc04823/zeppelin-web/e2e/home.spec.js
----------------------------------------------------------------------
diff --git a/zeppelin-web/e2e/home.spec.js b/zeppelin-web/e2e/home.spec.js
index 7fc9499..299fbb5 100644
--- a/zeppelin-web/e2e/home.spec.js
+++ b/zeppelin-web/e2e/home.spec.js
@@ -1,4 +1,26 @@
describe('Home e2e Test', function() {
+ /*Common methods for interact with elements*/
+ let clickOn = function(elem) {
+ browser.actions().mouseMove(elem).click().perform()
+ }
+
+ let sendKeysToInput = function(input, keys) {
+ cleanInput(input)
+ input.sendKeys(keys)
+ }
+
+ let cleanInput = function(inputElem) {
+ inputElem.sendKeys(protractor.Key.chord(protractor.Key.CONTROL, "a"))
+ inputElem.sendKeys(protractor.Key.BACK_SPACE)
+ }
+
+ let scrollToElementAndClick = function(elem) {
+ browser.executeScript("arguments[0].scrollIntoView(false);", elem.getWebElement())
+ browser.sleep(100)
+ clickOn(elem)
+ }
+
+ //tests
it('should have a welcome message', function() {
browser.get('http://localhost:8080');
var welcomeElem = element(by.id('welcome'))
@@ -15,4 +37,30 @@ describe('Home e2e Test', function() {
var btn = element(by.cssContainingText('a', 'Create new note'))
expect(btn.isPresent()).toBe(true)
})
+
+ it('correct save permission in interpreter', function() {
+ var ownerName = 'admin'
+ var interpreterName = 'interpreter_e2e_test'
+ clickOn(element(by.xpath('//span[@class="username ng-binding"]')))
+ clickOn(element(by.xpath('//a[@href="#/interpreter"]')))
+ clickOn(element(by.xpath('//button[@ng-click="showAddNewSetting = !showAddNewSetting"]')))
+ sendKeysToInput(element(by.xpath('//input[@id="newInterpreterSettingName"]')), interpreterName)
+ clickOn(element(by.xpath('//select[@ng-model="newInterpreterSetting.group"]')))
+ browser.sleep(500)
+ browser.actions().sendKeys(protractor.Key.ARROW_DOWN).perform()
+ browser.actions().sendKeys(protractor.Key.ENTER).perform()
+ clickOn(element(by.xpath('//div[@ng-show="showAddNewSetting"]//input[@id="idShowPermission"]')))
+ sendKeysToInput(element(by.xpath('//div[@ng-show="showAddNewSetting"]//input[@class="select2-search__field"]')), ownerName)
+ browser.sleep(500)
+ browser.actions().sendKeys(protractor.Key.ENTER).perform()
+ scrollToElementAndClick(element(by.xpath('//span[@ng-click="addNewInterpreterSetting()"]')))
+ scrollToElementAndClick(element(by.xpath('//*[@id="' + interpreterName + '"]//span[@class="fa fa-pencil"]')))
+ scrollToElementAndClick(element(by.xpath('//*[@id="' + interpreterName + '"]//button[@type="submit"]')))
+ clickOn(element(by.xpath('//div[@class="bootstrap-dialog-footer-buttons"]//button[contains(text(), \'OK\')]')))
+ browser.get('http://localhost:8080/#/interpreter');
+ var text = element(by.xpath('//*[@id="' + interpreterName + '"]//li[contains(text(), \'admin\')]')).getText()
+ scrollToElementAndClick(element(by.xpath('//*[@id="' + interpreterName + '"]//span//span[@class="fa fa-trash"]')))
+ clickOn(element(by.xpath('//div[@class="bootstrap-dialog-footer-buttons"]//button[contains(text(), \'OK\')]')))
+ expect(text).toEqual(ownerName);
+ })
})
http://git-wip-us.apache.org/repos/asf/zeppelin/blob/4fc04823/zeppelin-web/src/app/interpreter/interpreter.controller.js
----------------------------------------------------------------------
diff --git a/zeppelin-web/src/app/interpreter/interpreter.controller.js b/zeppelin-web/src/app/interpreter/interpreter.controller.js
index 060c6b6..d220dba 100644
--- a/zeppelin-web/src/app/interpreter/interpreter.controller.js
+++ b/zeppelin-web/src/app/interpreter/interpreter.controller.js
@@ -379,6 +379,9 @@ function InterpreterCtrl($rootScope, $scope, $http, baseUrlSrv, ngToast, $timeou
setting.option.remote = true;
}
setting.option.owners = angular.element('#' + setting.name + 'Owners').val();
+ for (let i = 0; i < setting.option.owners.length; i++) {
+ setting.option.owners[i] = setting.option.owners[i].trim();
+ }
let request = {
option: angular.copy(setting.option),