|
@@ -644,4 +644,148 @@ describe('App.upgradeWizardView', function () {
|
|
|
});
|
|
|
});
|
|
|
|
|
|
+ describe('#getSkippedServiceChecks()', function () {
|
|
|
+
|
|
|
+ var cases = [
|
|
|
+ {
|
|
|
+ isFinalizeItem: false,
|
|
|
+ areSkippedServiceChecksLoaded: false,
|
|
|
+ ajaxSendCallCount: 0,
|
|
|
+ areSkippedServiceChecksLoadedResult: false,
|
|
|
+ title: 'no ajax request should be sent away from Finalize step'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ isFinalizeItem: false,
|
|
|
+ areSkippedServiceChecksLoaded: true,
|
|
|
+ ajaxSendCallCount: 0,
|
|
|
+ areSkippedServiceChecksLoadedResult: false,
|
|
|
+ title: 'no ajax request should be sent if data is already loaded'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ isFinalizeItem: true,
|
|
|
+ areSkippedServiceChecksLoaded: false,
|
|
|
+ ajaxSendCallCount: 1,
|
|
|
+ areSkippedServiceChecksLoadedResult: true,
|
|
|
+ title: 'ajax request should be sent on Finalize step'
|
|
|
+ }
|
|
|
+ ];
|
|
|
+
|
|
|
+ beforeEach(function () {
|
|
|
+ view.set('controller.upgradeId', 1);
|
|
|
+ sinon.stub(App.ajax, 'send').returns({
|
|
|
+ complete: function (callback) {
|
|
|
+ callback();
|
|
|
+ }
|
|
|
+ });
|
|
|
+ });
|
|
|
+
|
|
|
+ afterEach(function () {
|
|
|
+ App.ajax.send.restore();
|
|
|
+ });
|
|
|
+
|
|
|
+ cases.forEach(function (item) {
|
|
|
+ it(item.title, function () {
|
|
|
+ view.set('areSkippedServiceChecksLoaded', item.areSkippedServiceChecksLoaded);
|
|
|
+ view.reopen({
|
|
|
+ isFinalizeItem: item.isFinalizeItem
|
|
|
+ });
|
|
|
+ view.propertyDidChange('isFinalizeItem');
|
|
|
+ expect(App.ajax.send.callCount).to.equal(item.ajaxSendCallCount);
|
|
|
+ expect(view.get('areSkippedServiceChecksLoaded')).to.equal(item.areSkippedServiceChecksLoadedResult);
|
|
|
+ if (item.ajaxSendCallCount) {
|
|
|
+ expect(App.ajax.send.firstCall.args[0].data.upgradeId).to.equal(1);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ });
|
|
|
+
|
|
|
+ });
|
|
|
+
|
|
|
+ describe('#getSkippedServiceChecksSuccessCallback()', function () {
|
|
|
+
|
|
|
+ var data = {
|
|
|
+ items: [
|
|
|
+ {
|
|
|
+ upgrade_items: [
|
|
|
+ {
|
|
|
+ tasks: [
|
|
|
+ {
|
|
|
+ Tasks: {
|
|
|
+ command_detail: 'SERVICE_CHECK HDFS'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ upgrade_items: [
|
|
|
+ {
|
|
|
+ tasks: [
|
|
|
+ {
|
|
|
+ Tasks: {
|
|
|
+ command_detail: 'SERVICE_CHECK ZOOKEEPER'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ tasks: [
|
|
|
+ {
|
|
|
+ Tasks: {
|
|
|
+ command_detail: 'SERVICE_CHECK YARN'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {},
|
|
|
+ {
|
|
|
+ tasks: []
|
|
|
+ },
|
|
|
+ {
|
|
|
+ tasks: [
|
|
|
+ {
|
|
|
+ Tasks: null
|
|
|
+ },
|
|
|
+ {
|
|
|
+ Tasks: {
|
|
|
+ command_detail: 'SERVICE_CHECK HIVE'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ tasks: [
|
|
|
+ {
|
|
|
+ Tasks: {
|
|
|
+ command_detail: null
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ Tasks: {
|
|
|
+ command_detail: 'SERVICE_CHECK YARN'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ tasks: [
|
|
|
+ {
|
|
|
+ Tasks: {
|
|
|
+ command_detail: 'RESTART HDFS'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ };
|
|
|
+
|
|
|
+ it('should set an array of service names from tha latest service checks step', function () {
|
|
|
+ view.getSkippedServiceChecksSuccessCallback(data);
|
|
|
+ expect(view.get('skippedServiceChecks')).to.eql(['ZooKeeper', 'YARN', 'Hive']);
|
|
|
+ });
|
|
|
+
|
|
|
+ });
|
|
|
+
|
|
|
});
|