Skip to content

Commit

Permalink
Merge pull request #2700 from hiveww/AMBARI-25011-trunk
Browse files Browse the repository at this point in the history
AMBARI-25011. Cover move_rm_config_initializer
  • Loading branch information
hiveww committed Dec 11, 2018
2 parents 7aa6fdb + 2eade4e commit 47882ab
Show file tree
Hide file tree
Showing 2 changed files with 88 additions and 0 deletions.
1 change: 1 addition & 0 deletions ambari-web/app/assets/test/tests.js
Expand Up @@ -252,6 +252,7 @@ var files = [
'test/utils/configs/database_test',
'test/utils/configs/config_initializer_test',
'test/utils/configs/add_component_config_initializer_test',
'test/utils/configs/move_rm_config_initializer_test',
'test/utils/configs/hosts_based_initializer_test',
'test/utils/configs/move_hm_config_initializer_test',
'test/utils/configs/move_namenode_config_initializer_test',
Expand Down
87 changes: 87 additions & 0 deletions ambari-web/test/utils/configs/move_rm_config_initializer_test.js
@@ -0,0 +1,87 @@
/**
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

var App = require('app');

describe('App.MoveRmConfigInitializer', function () {
var initializer;

describe('#_initAsRmHaDepended', function () {
var configProperty = Em.Object.create({value: 'test1:test2:test3'});
var localDb = {};
var dependencies = {targetHostName: 'test'};
var initializer = {rmHaShouldBeEnabled: true};

it('should not change property if isRMHaEnabled is not equal to initializer property', function () {
sinon.stub(App, 'get').returns(false);
var result = App.MoveRmConfigInitializer._initAsRmHaDepended(configProperty, localDb, dependencies, initializer);
expect(result.get('value')).to.be.equal('test1:test2:test3');
App.get.restore();
});

it('should change property if isRMHaEnabled is equal to initializer property', function () {
sinon.stub(App, 'get').returns(true);
var result = App.MoveRmConfigInitializer._initAsRmHaDepended(configProperty, localDb, dependencies, initializer);
expect(result.get('value')).to.be.equal('test:test2:test3');
App.get.restore();
});
});

describe('#_initAsRmHaHawq', function () {
var configProperty = Em.Object.create({value: 'test1:test2:test3'});
var localDb = {};
var dependencies = {
targetHostName: 'target-test',
sourceHostName: 'source-test',
rm1: 'source-test',
rm2: 'target-test'
};
var initializer = {rmHaShouldBeEnabled: true};

it('should not change property if isRMHaEnabled is not equal to initializer property', function () {
sinon.stub(App, 'get').returns(false);
var result = App.MoveRmConfigInitializer._initAsRmHaHawq(configProperty, localDb, dependencies, initializer);
expect(result.get('value')).to.be.equal('test1:test2:test3');
App.get.restore();
});

it('should change property if isRMHaEnabled is equal to initializer property and use 8030 port', function () {
sinon.stub(App, 'get').returns(true);
var result = App.MoveRmConfigInitializer._initAsRmHaHawq(configProperty, localDb, dependencies, initializer);
expect(result.get('value')).to.be.equal('target-test:8030,target-test:8030');
App.get.restore();
});

it('should change property if isRMHaEnabled is equal to initializer property and use 8032 port', function () {
var dependencies = {
targetHostName: 'target-test',
sourceHostName: 'target-test',
rm1: 'source-test',
rm2: 'test'
};
var configProperty = Em.Object.create({
name: 'yarn.resourcemanager.ha',
value: 'test1:test2:test3'
});
sinon.stub(App, 'get').returns(true);
var result = App.MoveRmConfigInitializer._initAsRmHaHawq(configProperty, localDb, dependencies, initializer);
expect(result.get('value')).to.be.equal('source-test:8032,target-test:8032');
App.get.restore();
});
});
});

0 comments on commit 47882ab

Please sign in to comment.