ambari-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From onechipore...@apache.org
Subject [04/12] AMBARI-5737. Tests folder structure should be equal to app folder structure. (onechiporenko)
Date Mon, 12 May 2014 17:24:04 GMT
http://git-wip-us.apache.org/repos/asf/ambari/blob/1d0fe34b/ambari-web/test/installer/step6_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/installer/step6_test.js b/ambari-web/test/installer/step6_test.js
deleted file mode 100644
index 536503f..0000000
--- a/ambari-web/test/installer/step6_test.js
+++ /dev/null
@@ -1,1356 +0,0 @@
-/**
- * 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 Ember = require('ember');
-var App = require('app');
-require('utils/helper');
-require('controllers/wizard/step6_controller');
-var controller,
-  services = [
-    Em.Object.create({
-      serviceName: 'MAPREDUCE',
-      isSelected: true
-    }),
-    Em.Object.create({
-      serviceName: 'YARN',
-      isSelected: true
-    }),
-    Em.Object.create({
-      serviceName: 'HBASE',
-      isSelected: true
-    }),
-    Em.Object.create({
-      serviceName: 'HDFS',
-      isSelected: true
-    }),
-    Em.Object.create({
-      serviceName: 'STORM',
-      isSelected: true
-    }),
-    Em.Object.create({
-      serviceName: 'FLUME',
-      isSelected: true
-    })
-  ];
-describe('App.WizardStep6Controller', function () {
-
-  beforeEach(function () {
-    controller = App.WizardStep6Controller.create();
-    controller.set('content', {
-      hosts: {},
-      masterComponentHosts: {},
-      services: services
-    });
-    sinon.stub(controller, 'getComponentDisplayName', function (c) {
-      return App.format.components[c];
-    });
-
-    var h = {}, m = [];
-    Em.A(['host0', 'host1', 'host2', 'host3']).forEach(function (hostName) {
-      var obj = Em.Object.create({
-        name: hostName,
-        hostName: hostName,
-        bootStatus: 'REGISTERED'
-      });
-      h[hostName] = obj;
-      m.push(obj);
-    });
-
-    controller.set('content.hosts', h);
-    controller.set('content.masterComponentHosts', m);
-    controller.set('isMasters', false);
-
-  });
-
-  afterEach(function () {
-    controller.getComponentDisplayName.restore();
-  });
-
-  describe('#loadStep', function () {
-    Em.A([
-        {
-          isMasters: false,
-          services: [
-            Em.Object.create({
-              serviceName: 'MAPREDUCE',
-              isSelected: true
-            })
-          ],
-          e: {
-            l: 2,
-            allChecked: false,
-            noChecked: true
-          }
-        },
-        {
-          isMasters: false,
-          services: [
-            Em.Object.create({
-              serviceName: 'MAPREDUCE',
-              isSelected: true
-            }),
-            Em.Object.create({
-              serviceName: 'YARN',
-              isSelected: true
-            })
-          ],
-          e: {
-            l: 3,
-            allChecked: false,
-            noChecked: true
-          }
-        },
-        {
-          isMasters: false,
-          services: [
-            Em.Object.create({
-              serviceName: 'MAPREDUCE',
-              isSelected: true
-            }),
-            Em.Object.create({
-              serviceName: 'YARN',
-              isSelected: true
-            }),
-            Em.Object.create({
-              serviceName: 'HBASE',
-              isSelected: true
-            })
-          ],
-          e: {
-            l: 4,
-            allChecked: false,
-            noChecked: true
-          }
-        },
-        {
-          isMasters: false,
-          services: [
-            Em.Object.create({
-              serviceName: 'MAPREDUCE',
-              isSelected: true
-            }),
-            Em.Object.create({
-              serviceName: 'YARN',
-              isSelected: true
-            }),
-            Em.Object.create({
-              serviceName: 'HBASE',
-              isSelected: true
-            }),
-            Em.Object.create({
-              serviceName: 'HDFS',
-              isSelected: true
-            })
-          ],
-          e: {
-            l: 5,
-            allChecked: false,
-            noChecked: true
-          }
-        },
-        {
-          isMasters: false,
-          services: [
-            Em.Object.create({
-              serviceName: 'MAPREDUCE',
-              isSelected: true
-            }),
-            Em.Object.create({
-              serviceName: 'YARN',
-              isSelected: true
-            }),
-            Em.Object.create({
-              serviceName: 'HBASE',
-              isSelected: true
-            }),
-            Em.Object.create({
-              serviceName: 'HDFS',
-              isSelected: true
-            }),
-            Em.Object.create({
-              serviceName: 'STORM',
-              isSelected: true
-            })
-          ],
-          e: {
-            l: 6,
-            allChecked: false,
-            noChecked: true
-          }
-        },
-        {
-          isMasters: false,
-          services: [
-            Em.Object.create({
-              serviceName: 'MAPREDUCE',
-              isSelected: true
-            }),
-            Em.Object.create({
-              serviceName: 'YARN',
-              isSelected: true
-            }),
-            Em.Object.create({
-              serviceName: 'HBASE',
-              isSelected: true
-            }),
-            Em.Object.create({
-              serviceName: 'HDFS',
-              isSelected: true
-            }),
-            Em.Object.create({
-              serviceName: 'STORM',
-              isSelected: true
-            }),
-            Em.Object.create({
-              serviceName: 'FLUME',
-              isSelected: true
-            })
-          ],
-          e: {
-            l: 7,
-            allChecked: false,
-            noChecked: true
-          }
-        },
-        {
-          isMasters: true,
-          multipleHBaseMasters: true,
-          services: [
-            Em.Object.create({
-              serviceName: 'HBASE',
-              isSelected: true
-            })
-          ],
-          e: {
-            l: 1,
-            allChecked: false,
-            noChecked: true
-          }
-        },
-        {
-          isMasters: true,
-          multipleHBaseMasters: false,
-          services: [
-            Em.Object.create({
-              serviceName: 'HBASE',
-              isSelected: true
-            })
-          ],
-          e: {
-            l: 0,
-            allChecked: false,
-            noChecked: true
-          }
-        },
-        {
-          isMasters: true,
-          services: [
-            Em.Object.create({
-              serviceName: 'ZOOKEEPER',
-              isSelected: true
-            })
-          ],
-          e: {
-            l: 1,
-            allChecked: false,
-            noChecked: true
-          }
-        }
-      ]).forEach(function (test) {
-        it(test.isMasters.toString() + ' ' + test.services.mapProperty('serviceName').join(',
'), function () {
-          if (test.hasOwnProperty('multipleHBaseMasters')) {
-            App.set('supports.multipleHBaseMasters', test.multipleHBaseMasters);
-          }
-          controller.set('content.services', test.services);
-          controller.set('isMasters', test.isMasters);
-          sinon.stub(controller, 'render', Em.K);
-          controller.loadStep();
-          expect(controller.get('headers.length')).to.equal(test.e.l);
-          expect(controller.get('headers').everyProperty('allChecked', test.e.allChecked)).to.equal(true);
-          expect(controller.get('headers').everyProperty('noChecked', test.e.noChecked)).to.equal(true);
-          controller.clearStep();
-          controller.render.restore();
-        });
-      });
-
-    Em.A([
-        {
-          p: {
-            isMasters: true,
-            skipMasterStep: true
-          },
-          e: true
-        },
-        {
-          p: {
-            isMasters: false,
-            skipMasterStep: true
-          },
-          e: false
-        },
-        {
-          p: {
-            isMasters: true,
-            skipMasterStep: false
-          },
-          e: false
-        },
-        {
-          p: {
-            isMasters: false,
-            skipMasterStep: false
-          },
-          e: false
-        }
-      ]).forEach(function (test) {
-        it('should skip this step if isMasters is ' + test.p.isMasters + ' and content.skipMasterStep
is ' + test.p.skipMasterStep, function () {
-          controller.set('isMasters', test.p.isMasters);
-          controller.set('content.skipMasterStep', test.p.skipMasterStep);
-          sinon.stub(App.router, 'send', Em.K);
-          controller.loadStep();
-          expect(App.router.send.calledWith('next')).to.equal(test.e);
-          App.router.send.restore();
-        });
-      });
-
-    Em.A([
-        {
-          p: {
-            isMasters: true,
-            skipSlavesStep: true
-          },
-          e: false
-        },
-        {
-          p: {
-            isMasters: false,
-            skipSlavesStep: true
-          },
-          e: true
-        },
-        {
-          p: {
-            isMasters: true,
-            skipSlavesStep: false
-          },
-          e: false
-        },
-        {
-          p: {
-            isMasters: false,
-            skipSlavesStep: false
-          },
-          e: false
-        }
-      ]).forEach(function (test) {
-        it('should skip this step if isMasters is ' + test.p.isMasters + ' and content.skipSlavesStep
is ' + test.p.skipSlavesStep, function () {
-          controller.set('isMasters', test.p.isMasters);
-          controller.set('content.skipSlavesStep', test.p.skipSlavesStep);
-          sinon.stub(App.router, 'send', Em.K);
-          controller.loadStep();
-          expect(App.router.send.calledWith('next')).to.equal(test.e);
-          App.router.send.restore();
-        });
-      });
-
-  });
-
-  describe('#isAddHostWizard', function () {
-    it('true if content.controllerName is addHostController', function () {
-      controller.set('content.controllerName', 'addHostController');
-      expect(controller.get('isAddHostWizard')).to.equal(true);
-    });
-    it('false if content.controllerName is not addHostController', function () {
-      controller.set('content.controllerName', 'mainController');
-      expect(controller.get('isAddHostWizard')).to.equal(false);
-    });
-  });
-
-  describe('#isInstallerWizard', function () {
-    it('true if content.controllerName is addHostController', function () {
-      controller.set('content.controllerName', 'installerController');
-      expect(controller.get('isInstallerWizard')).to.equal(true);
-    });
-    it('false if content.controllerName is not addHostController', function () {
-      controller.set('content.controllerName', 'mainController');
-      expect(controller.get('isInstallerWizard')).to.equal(false);
-    });
-  });
-
-  describe('#isAddServiceWizard', function () {
-    it('true if content.controllerName is addServiceController', function () {
-      controller.set('content.controllerName', 'addServiceController');
-      expect(controller.get('isAddServiceWizard')).to.equal(true);
-    });
-    it('false if content.controllerName is not addServiceController', function () {
-      controller.set('content.controllerName', 'mainController');
-      expect(controller.get('isAddServiceWizard')).to.equal(false);
-    });
-  });
-
-  describe('#setAllNodes', function () {
-
-    var test_config = Em.A([
-      {
-        title: 'DataNode',
-        name: 'DATANODE',
-        state: false
-      },
-      {
-        title: 'DataNode',
-        name: 'DATANODE',
-        state: true
-      },
-      {
-        title: 'TaskTracker',
-        name: 'TASKTRACKER',
-        state: false
-      },
-      {
-        title: 'TaskTracker',
-        name: 'TASKTRACKER',
-        state: true
-      }
-    ]);
-
-    test_config.forEach(function (test) {
-      it((test.state ? 'Select' : 'Deselect') + ' all ' + test.title, function () {
-        controller.loadStep();
-        controller.setAllNodes(test.name, test.state);
-        var hosts = controller.get('hosts');
-        hosts.forEach(function (host) {
-          var cb = host.get('checkboxes').filterProperty('isInstalled', false).findProperty('component',
test.name);
-          if (cb) {
-            expect(cb.get('checked')).to.equal(test.state);
-          }
-        });
-      });
-    });
-
-
-  });
-
-  describe('#isServiceSelected', function () {
-    describe('selected', function () {
-      services.forEach(function (service) {
-        it(service.serviceName + ' is selected', function () {
-          expect(controller.isServiceSelected(service.serviceName)).to.equal(true);
-        });
-      });
-    });
-    var unselectedService = 'FAKESERVICE';
-    it(unselectedService + ' is not selected', function () {
-      expect(controller.isServiceSelected(unselectedService)).to.equal(false);
-    });
-  });
-
-  describe('#validateEachComponent', function () {
-    beforeEach(function () {
-      controller.loadStep();
-    });
-    it('Nothing checked', function () {
-      controller.get('hosts').forEach(function (host) {
-        host.get('checkboxes').setEach('checked', false);
-      });
-      expect(controller.validateEachComponent('')).to.equal(false);
-    });
-    it('One slave is not selected for no one host', function () {
-      controller.get('hosts').forEach(function (host) {
-        host.get('checkboxes').forEach(function (checkbox, index) {
-          checkbox.set('checked', index === 0);
-        });
-      });
-      expect(controller.validateEachComponent('')).to.equal(false);
-    });
-    it('All checked', function () {
-      controller.get('hosts').forEach(function (host) {
-        host.get('checkboxes').forEach(function (checkbox) {
-          checkbox.set('checked', true);
-        });
-      });
-      expect(controller.validateEachComponent('')).to.equal(true);
-    });
-  });
-
-  describe('#validateEachHost', function () {
-    beforeEach(function () {
-      controller.loadStep();
-    });
-    it('Nothing checked', function () {
-      controller.get('hosts').forEach(function (host) {
-        host.get('checkboxes').setEach('checked', false);
-      });
-      expect(controller.validateEachHost('')).to.equal(false);
-    });
-    it('One host doesn\'t have assigned slaves', function () {
-      controller.get('hosts').forEach(function (host, index) {
-        host.get('checkboxes').setEach('checked', index === 0);
-      });
-      expect(controller.validateEachHost('')).to.equal(false);
-    });
-    it('All checked', function () {
-      controller.get('hosts').forEach(function (host) {
-        host.get('checkboxes').setEach('checked', true);
-      });
-      expect(controller.validateEachHost('')).to.equal(true);
-    });
-  });
-
-  describe('#clearStep', function () {
-    beforeEach(function () {
-      sinon.stub(controller, 'clearError', Em.K);
-    });
-    afterEach(function () {
-      controller.clearError.restore();
-    });
-    it('should call clearError', function () {
-      controller.clearStep();
-      expect(controller.clearError.calledOnce).to.equal(true);
-    });
-    it('should clear hosts', function () {
-      controller.set('hosts', [
-        {},
-        {}
-      ]);
-      controller.clearStep();
-      expect(controller.get('hosts')).to.eql([]);
-    });
-    it('should clear headers', function () {
-      controller.set('headers', [
-        {},
-        {}
-      ]);
-      controller.clearStep();
-      expect(controller.get('headers')).to.eql([]);
-    });
-    it('should set isLoaded to false', function () {
-      controller.set('isLoaded', true);
-      controller.clearStep();
-      expect(controller.get('isLoaded')).to.equal(false);
-    });
-  });
-
-  describe('#selectAllNodes', function () {
-    beforeEach(function () {
-      sinon.stub(controller, 'setAllNodes', Em.K);
-    });
-    afterEach(function () {
-      controller.setAllNodes.restore();
-    });
-    it('should call setAllNodes', function () {
-      controller.selectAllNodes({context: {name: 'name'}});
-      expect(controller.setAllNodes.calledWith('name', true)).to.equal(true);
-    });
-    it('shouldn\'t call setAllNodes', function () {
-      controller.selectAllNodes();
-      expect(controller.setAllNodes.called).to.equal(false);
-    });
-  });
-
-  describe('#deselectAllNodes', function () {
-    beforeEach(function () {
-      sinon.stub(controller, 'setAllNodes', Em.K);
-    });
-    afterEach(function () {
-      controller.setAllNodes.restore();
-    });
-    it('should call setAllNodes', function () {
-      controller.deselectAllNodes({context: {name: 'name'}});
-      expect(controller.setAllNodes.calledWith('name', false)).to.equal(true);
-    });
-    it('shouldn\'t call setAllNodes', function () {
-      controller.deselectAllNodes();
-      expect(controller.setAllNodes.called).to.equal(false);
-    });
-  });
-
-  describe('#checkCallback', function () {
-    beforeEach(function () {
-      sinon.stub(controller, 'clearError', Em.K);
-    });
-    afterEach(function () {
-      controller.clearError.restore();
-    });
-    it('should call clearError', function () {
-      controller.checkCallback('');
-      expect(controller.clearError.calledOnce).to.equal(true);
-    });
-    Em.A([
-        {
-          m: 'all checked, isInstalled false',
-          headers: Em.A([
-            Em.Object.create({name: 'c1'})
-          ]),
-          hosts: Em.A([
-            Em.Object.create({
-              checkboxes: Em.A([
-                Em.Object.create({
-                  component: 'c1',
-                  isInstalled: false,
-                  checked: true
-                })
-              ])
-            })
-          ]),
-          component: 'c1',
-          e: {
-            allChecked: true,
-            noChecked: false
-          }
-        },
-        {
-          m: 'all checked, isInstalled true',
-          headers: Em.A([
-            Em.Object.create({name: 'c1'})
-          ]),
-          hosts: Em.A([
-            Em.Object.create({
-              checkboxes: Em.A([
-                Em.Object.create({
-                  component: 'c1',
-                  isInstalled: true,
-                  checked: true
-                })
-              ])
-            })
-          ]),
-          component: 'c1',
-          e: {
-            allChecked: true,
-            noChecked: true
-          }
-        },
-        {
-          m: 'no one checked',
-          headers: Em.A([
-            Em.Object.create({name: 'c1'})
-          ]),
-          hosts: Em.A([
-            Em.Object.create({
-              checkboxes: Em.A([
-                Em.Object.create({
-                  component: 'c1',
-                  isInstalled: false,
-                  checked: false
-                })
-              ])
-            })
-          ]),
-          component: 'c1',
-          e: {
-            allChecked: false,
-            noChecked: true
-          }
-        },
-        {
-          m: 'some checked',
-          headers: Em.A([
-            Em.Object.create({name: 'c1'})
-          ]),
-          hosts: Em.A([
-            Em.Object.create({
-              checkboxes: Em.A([
-                Em.Object.create({
-                  component: 'c1',
-                  isInstalled: false,
-                  checked: true
-                }),
-                Em.Object.create({
-                  component: 'c1',
-                  isInstalled: false,
-                  checked: false
-                })
-              ])
-            })
-          ]),
-          component: 'c1',
-          e: {
-            allChecked: false,
-            noChecked: false
-          }
-        },
-        {
-          m: 'some checked, some isInstalled true',
-          headers: Em.A([
-            Em.Object.create({name: 'c1'})
-          ]),
-          hosts: Em.A([
-            Em.Object.create({
-              checkboxes: Em.A([
-                Em.Object.create({
-                  component: 'c1',
-                  isInstalled: true,
-                  checked: true
-                }),
-                Em.Object.create({
-                  component: 'c1',
-                  isInstalled: true,
-                  checked: true
-                })
-              ])
-            })
-          ]),
-          component: 'c1',
-          e: {
-            allChecked: true,
-            noChecked: true
-          }
-        },
-        {
-          m: 'some checked, some isInstalled true (2)',
-          headers: Em.A([
-            Em.Object.create({name: 'c1'})
-          ]),
-          hosts: Em.A([
-            Em.Object.create({
-              checkboxes: Em.A([
-                Em.Object.create({
-                  component: 'c1',
-                  isInstalled: false,
-                  checked: false
-                }),
-                Em.Object.create({
-                  component: 'c1',
-                  isInstalled: true,
-                  checked: true
-                })
-              ])
-            })
-          ]),
-          component: 'c1',
-          e: {
-            allChecked: false,
-            noChecked: true
-          }
-        }
-      ]).forEach(function (test) {
-        it(test.m, function () {
-          controller.clearStep();
-          controller.set('headers', test.headers);
-          controller.set('hosts', test.hosts);
-          controller.checkCallback(test.component);
-          var header = controller.get('headers').findProperty('name', test.component);
-          expect(header.get('allChecked')).to.equal(test.e.allChecked);
-          expect(header.get('noChecked')).to.equal(test.e.noChecked);
-        });
-      });
-  });
-
-  describe('#getHostNames', function () {
-    var tests = Em.A([
-      {
-        hosts: {
-          h1: {bootStatus: 'REGISTERED', name: 'h1'},
-          h2: {bootStatus: 'REGISTERED', name: 'h2'},
-          h3: {bootStatus: 'REGISTERED', name: 'h3'}
-        },
-        m: 'All REGISTERED',
-        e: ['h1', 'h2', 'h3']
-      },
-      {
-        hosts: {
-          h1: {bootStatus: 'REGISTERED', name: 'h1'},
-          h2: {bootStatus: 'FAILED', name: 'h2'},
-          h3: {bootStatus: 'REGISTERED', name: 'h3'}
-        },
-        m: 'Some REGISTERED',
-        e: ['h1', 'h3']
-      },
-      {
-        hosts: {
-          h1: {bootStatus: 'FAILED', name: 'h1'},
-          h2: {bootStatus: 'FAILED', name: 'h2'},
-          h3: {bootStatus: 'FAILED', name: 'h3'}
-        },
-        m: 'No one REGISTERED',
-        e: []
-      },
-      {
-        hosts: {},
-        m: 'Empty hosts',
-        e: []
-      }
-    ]);
-    tests.forEach(function (test) {
-      it(test.m, function () {
-        controller.set('content.hosts', test.hosts);
-        var r = controller.getHostNames();
-        expect(r).to.eql(test.e);
-      });
-    });
-  });
-
-  describe('#validate', function () {
-    var tests = Em.A([
-      {
-        controllerName: 'addHostController',
-        method: 'validateEachHost',
-        r: true,
-        e: true
-      },
-      {
-        controllerName: 'addHostController',
-        method: 'validateEachHost',
-        r: false,
-        e: false
-      },
-      {
-        controllerName: 'addServiceController',
-        method: 'validateEachComponent',
-        r: true,
-        e: true
-      },
-      {
-        controllerName: 'addServiceController',
-        method: 'validateEachComponent',
-        r: false,
-        e: false
-      },
-      {
-        controllerName: 'installerController',
-        method: 'validateEachComponent',
-        r: true,
-        e: true
-      },
-      {
-        controllerName: 'installerController',
-        method: 'validateEachComponent',
-        r: false,
-        e: false
-      }
-    ]);
-    tests.forEach(function (test) {
-      it(test.controllerName + ' ' + test.method + ' returns ' + test.r.toString(), function
() {
-        sinon.stub(controller, test.method, function () {
-          return test.r
-        });
-        controller.set('content.controllerName', test.controllerName);
-        expect(controller.validate()).to.equal(test.e);
-        controller[test.method].restore();
-      });
-    });
-  });
-
-  describe('#getMasterComponentsForHost', function () {
-    var tests = Em.A([
-      {
-        masterComponentHosts: Em.A([
-          {hostName: 'h1', component: 'c1'}
-        ]),
-        hostName: 'h1',
-        m: 'host exists',
-        e: ['c1']
-      },
-      {
-        masterComponentHosts: Em.A([
-          {hostName: 'h1', component: 'c1'}
-        ]),
-        hostName: 'h2',
-        m: 'host donesn\'t exists',
-        e: []
-      }
-    ]);
-    tests.forEach(function (test) {
-      it(test.m, function () {
-        controller.set('content.masterComponentHosts', test.masterComponentHosts);
-        var r = controller.getMasterComponentsForHost(test.hostName);
-        expect(r).to.eql(test.e);
-      });
-    });
-  });
-
-  describe('#selectMasterComponents', function () {
-    var tests = Em.A([
-      {
-        masterComponentHosts: Em.A([
-          {
-            hostName: 'h1',
-            component: 'c1'
-          }
-        ]),
-        hostsObj: [
-          Em.Object.create({
-            hostName: 'h1',
-            checkboxes: [
-              Em.Object.create({
-                component: 'c1',
-                checked: false
-              })
-            ]
-          })
-        ],
-        e: true,
-        m: 'host and component exist'
-      },
-      {
-        masterComponentHosts: Em.A([
-          {
-            hostName: 'h1',
-            component: 'c2'
-          }
-        ]),
-        hostsObj: [
-          Em.Object.create({
-            hostName: 'h1',
-            checkboxes: [
-              Em.Object.create({
-                component: 'c1',
-                checked: false
-              })
-            ]
-          })
-        ],
-        e: false,
-        m: 'host exists'
-      },
-      {
-        masterComponentHosts: Em.A([
-          {
-            hostName: 'h2',
-            component: 'c2'
-          }
-        ]),
-        hostsObj: [
-          Em.Object.create({
-            hostName: 'h1',
-            checkboxes: [
-              Em.Object.create({
-                component: 'c1',
-                checked: false
-              })
-            ]
-          })
-        ],
-        e: false,
-        m: 'host and component don\'t exist'
-      }
-    ]);
-    tests.forEach(function (test) {
-      it(test.m, function () {
-        controller.set('content.masterComponentHosts', test.masterComponentHosts);
-        var r = controller.selectMasterComponents(test.hostsObj);
-        expect(r.findProperty('hostName', 'h1').get('checkboxes').findProperty('component',
'c1').get('checked')).to.equal(test.e);
-      });
-    });
-  });
-
-  describe('#render', function () {
-    beforeEach(function () {
-      sinon.stub(controller, 'selectMasterComponents', Em.K);
-      sinon.stub(controller, 'renderSlaves', Em.K);
-    });
-    afterEach(function () {
-      controller.selectMasterComponents.restore();
-      controller.renderSlaves.restore();
-    });
-    it('should call selectMasterComponents if isMasters is true', function () {
-      controller.set('isMasters', true);
-      controller.render();
-      expect(controller.selectMasterComponents.calledOnce).to.equal(true);
-      expect(controller.renderSlaves.called).to.equal(false);
-    });
-    it('should call renderSlaves if isMasters is false', function () {
-      controller.set('isMasters', false);
-      controller.render();
-      expect(controller.selectMasterComponents.called).to.equal(false);
-      expect(controller.renderSlaves.calledOnce).to.equal(true);
-    });
-    it('should set isLoaded to true', function () {
-      controller.set('isLoaded', false);
-      controller.render();
-      expect(controller.get('isLoaded')).to.equal(true);
-    });
-  });
-
-  describe('#renderSlaves', function () {
-    Em.A([
-        {
-          controllerName: 'addServiceController',
-          slaveComponents: [],
-          hostsObj: [
-            Em.Object.create({
-              checkboxes: Em.A([
-                Em.Object.create({isInstalled: false, title: 'Client'}),
-                Em.Object.create({isInstalled: false, title: ''}),
-                Em.Object.create({isInstalled: false, title: ''})
-              ]),
-              hasMaster: true
-            })
-          ],
-          m: 'host with masters, empty slaveComponents, controllerName - addServiceController',
-          e: [
-            [false, false, false]
-          ]
-        },
-        {
-          controllerName: 'addServiceController',
-          slaveComponents: [],
-          hostsObj: [
-            Em.Object.create({
-              checkboxes: Em.A([
-                Em.Object.create({isInstalled: false, title: 'Client'}),
-                Em.Object.create({isInstalled: false, title: ''}),
-                Em.Object.create({isInstalled: false, title: ''})
-              ]),
-              hasMaster: false
-            })
-          ],
-          m: 'host without masters, empty slaveComponents, controllerName - addServiceController',
-          e: [
-            [false, true, true]
-          ]
-        },
-        {
-          controllerName: 'addServiceController',
-          slaveComponents: [],
-          services: [
-            Em.Object.create({serviceName: 'HDFS', isSelected: true})
-          ],
-          hostsObj: [
-            Em.Object.create({
-              checkboxes: Em.A([
-                Em.Object.create({isInstalled: false, title: 'Client'}),
-                Em.Object.create({isInstalled: false, title: 'DataNode', checked: true}),
-                Em.Object.create({isInstalled: false, title: ''})
-              ]),
-              hasMaster: false
-            })
-          ],
-          m: 'host without masters, empty slaveComponents, controllerName - addServiceController,
one datanode checked',
-          e: [
-            [true, true, true]
-          ]
-        },
-        {
-          controllerName: 'addServiceController',
-          slaveComponents: [],
-          services: [
-            Em.Object.create({serviceName: 'HDFS', isSelected: true})
-          ],
-          hostsObj: [
-            Em.Object.create({
-              checkboxes: Em.A([
-                Em.Object.create({isInstalled: false, title: 'Client'}),
-                Em.Object.create({isInstalled: false, title: 'DataNode', checked: false}),
-                Em.Object.create({isInstalled: false, title: ''})
-              ]),
-              hasMaster: true
-            })
-          ],
-          m: 'host with masters, empty slaveComponents, controllerName - addServiceController,
one datanode not checked',
-          e: [
-            [false, false, false]
-          ]
-        },
-        {
-          controllerName: 'installerController',
-          slaveComponents: [],
-          services: [
-            Em.Object.create({serviceName: 'HDFS', isSelected: true})
-          ],
-          hostsObj: [
-            Em.Object.create({
-              checkboxes: Em.A([
-                Em.Object.create({isInstalled: false, title: 'Client'}),
-                Em.Object.create({isInstalled: false, title: 'DataNode', checked: true}),
-                Em.Object.create({isInstalled: false, title: ''})
-              ]),
-              hasMaster: true
-            })
-          ],
-          m: 'host with masters, empty slaveComponents, controllerName - installerController,
one datanode checked',
-          e: [
-            [true, true, true]
-          ]
-        },
-        {
-          controllerName: 'installerController',
-          slaveComponents: [],
-          services: [
-            Em.Object.create({serviceName: 'HDFS', isSelected: true})
-          ],
-          hostsObj: [
-            Em.Object.create({
-              checkboxes: Em.A([
-                Em.Object.create({isInstalled: false, title: 'Client'}),
-                Em.Object.create({isInstalled: false, title: 'DataNode', checked: false}),
-                Em.Object.create({isInstalled: false, title: ''})
-              ]),
-              hasMaster: true
-            }),
-            Em.Object.create({
-              checkboxes: Em.A([
-                Em.Object.create({isInstalled: false, title: 'Client'}),
-                Em.Object.create({isInstalled: false, title: 'DataNode', checked: true}),
-                Em.Object.create({isInstalled: false, title: ''})
-              ]),
-              hasMaster: true
-            })
-          ],
-          m: 'hosts with masters, empty slaveComponents, controllerName - installerController,
one datanode checked',
-          e: [
-            [false, false, false],
-            [true, true, true]
-          ]
-        },
-        {
-          controllerName: 'installerController',
-          slaveComponents: [],
-          services: [
-            Em.Object.create({serviceName: 'HDFS', isSelected: true})
-          ],
-          hostsObj: [
-            Em.Object.create({
-              checkboxes: Em.A([
-                Em.Object.create({isInstalled: false, title: 'Client'}),
-                Em.Object.create({isInstalled: false, title: 'DataNode', checked: false}),
-                Em.Object.create({isInstalled: false, title: ''})
-              ]),
-              hasMaster: true
-            }),
-            Em.Object.create({
-              checkboxes: Em.A([
-                Em.Object.create({isInstalled: false, title: 'Client'}),
-                Em.Object.create({isInstalled: false, title: 'DataNode', checked: true}),
-                Em.Object.create({isInstalled: false, title: ''})
-              ]),
-              hasMaster: false
-            })
-          ],
-          m: 'some hosts with masters, empty slaveComponents, controllerName - installerController,
one datanode checked',
-          e: [
-            [false, false, false],
-            [true, true, true]
-          ]
-        }
-      ]).forEach(function (test) {
-        it(test.m, function () {
-          controller.set('content.slaveComponents', test.slaveComponents);
-          controller.set('content.controllerName', test.controllerName);
-          if (test.services) {
-            controller.set('content.services', test.services);
-          }
-          controller.set('isMasters', false);
-          controller.loadStep();
-          var r = controller.renderSlaves(test.hostsObj);
-          expect(r.map(function (i) {
-            return i.get('checkboxes').map(function (j) {
-              return j.get('checked');
-            });
-          })).to.eql(test.e);
-        });
-      });
-
-    Em.A([
-        {
-          slaveComponents: [
-            {componentName: 'c1', hosts: [
-              {hostName: 'h1', isInstalled: false},
-              {hostName: 'h2', isInstalled: false}
-            ]},
-            {componentName: 'c2', hosts: [
-              {hostName: 'h1', isInstalled: false},
-              {hostName: 'h2', isInstalled: false}
-            ]}
-          ],
-          headers: [
-            Em.Object.create({name: 'c1', label: 'C1'}),
-            Em.Object.create({name: 'c2', label: 'C2'})
-          ],
-          hostsObj: [
-            Em.Object.create({
-              hostName: 'h1',
-              checkboxes: [
-                Em.Object.create({
-                  title: 'C1',
-                  checked: false,
-                  isInstalled: false
-                }),
-                Em.Object.create({
-                  title: 'C2',
-                  checked: false,
-                  isInstalled: false
-                })
-              ]
-            }),
-            Em.Object.create({
-              hostName: 'h2',
-              checkboxes: [
-                Em.Object.create({
-                  title: 'C1',
-                  checked: false,
-                  isInstalled: false
-                }),
-                Em.Object.create({
-                  title: 'C2',
-                  checked: false,
-                  isInstalled: false
-                })
-              ]
-            })
-          ],
-          m: 'all Checked, nothing installed before',
-          e: {
-            checked: [
-              [true, true],
-              [true, true]
-            ],
-            isInstalled: [
-              [false, false],
-              [false, false]
-            ]
-          }
-        },
-        {
-          slaveComponents: [
-            {componentName: 'c1', hosts: [
-              {hostName: 'h1', isInstalled: true},
-              {hostName: 'h2', isInstalled: true}
-            ]},
-            {componentName: 'c2', hosts: [
-              {hostName: 'h1', isInstalled: true},
-              {hostName: 'h2', isInstalled: true}
-            ]}
-          ],
-          headers: [
-            Em.Object.create({name: 'c1', label: 'C1'}),
-            Em.Object.create({name: 'c2', label: 'C2'})
-          ],
-          hostsObj: [
-            Em.Object.create({
-              hostName: 'h1',
-              checkboxes: [
-                Em.Object.create({
-                  title: 'C1',
-                  checked: false,
-                  isInstalled: false
-                }),
-                Em.Object.create({
-                  title: 'C2',
-                  checked: false,
-                  isInstalled: false
-                })
-              ]
-            }),
-            Em.Object.create({
-              hostName: 'h2',
-              checkboxes: [
-                Em.Object.create({
-                  title: 'C1',
-                  checked: false,
-                  isInstalled: false
-                }),
-                Em.Object.create({
-                  title: 'C2',
-                  checked: false,
-                  isInstalled: false
-                })
-              ]
-            })
-          ],
-          m: 'all Checked, all installed before',
-          e: {
-            checked: [
-              [true, true],
-              [true, true]
-            ],
-            isInstalled: [
-              [true, true],
-              [true, true]
-            ]
-          }
-        },
-        {
-          slaveComponents: [
-            {componentName: 'c1', hosts: [
-              {hostName: 'h1', isInstalled: true}
-            ]},
-            {componentName: 'c2', hosts: [
-              {hostName: 'h2', isInstalled: true}
-            ]}
-          ],
-          headers: [
-            Em.Object.create({name: 'c1', label: 'C1'}),
-            Em.Object.create({name: 'c2', label: 'C2'})
-          ],
-          hostsObj: [
-            Em.Object.create({
-              hostName: 'h1',
-              checkboxes: [
-                Em.Object.create({
-                  title: 'C1',
-                  checked: false,
-                  isInstalled: false
-                }),
-                Em.Object.create({
-                  title: 'C2',
-                  checked: false,
-                  isInstalled: false
-                })
-              ]
-            }),
-            Em.Object.create({
-              hostName: 'h2',
-              checkboxes: [
-                Em.Object.create({
-                  title: 'C1',
-                  checked: false,
-                  isInstalled: false
-                }),
-                Em.Object.create({
-                  title: 'C2',
-                  checked: false,
-                  isInstalled: false
-                })
-              ]
-            })
-          ],
-          m: 'some Checked, some installed before',
-          e: {
-            checked: [
-              [true, false],
-              [false, true]
-            ],
-            isInstalled: [
-              [true, false],
-              [false, true]
-            ]
-          }
-        }
-      ]).forEach(function (test) {
-        it(test.m, function () {
-          controller.set('content.slaveComponentHosts', test.slaveComponents);
-          controller.set('headers', test.headers);
-          var r = controller.renderSlaves(test.hostsObj);
-          var checked = r.map(function (i) {
-            return i.get('checkboxes').map(function (j) {
-              return j.get('checked')
-            })
-          });
-          var isInstalled = r.map(function (i) {
-            return i.get('checkboxes').map(function (j) {
-              return j.get('isInstalled')
-            })
-          });
-          expect(checked).to.eql(test.e.checked);
-          expect(isInstalled).to.eql(test.e.isInstalled);
-        });
-      });
-  });
-
-});
\ No newline at end of file


Mime
View raw message