step1_test.js 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. var App = require('app');
  2. require('controllers/installer/step1_controller');
  3. describe('App.InstallerStep1Controller', function () {
  4. describe('#validateStep1()', function () {
  5. it('should return false and sets invalidClusterName to true if cluster name is empty', function () {
  6. var controller = App.InstallerStep1Controller.create();
  7. controller.set('clusterName', '');
  8. expect(controller.validateStep1()).to.equal(false);
  9. expect(controller.get('invalidClusterName')).to.equal(true);
  10. })
  11. it('should return false and sets invalidClusterName to true if cluster name has whitespaces', function () {
  12. var controller = App.InstallerStep1Controller.create();
  13. controller.set('clusterName', 'My Cluster');
  14. expect(controller.validateStep1()).to.equal(false);
  15. expect(controller.get('invalidClusterName')).to.equal(true);
  16. })
  17. it('should return false and sets invalidClusterName to true if cluster name has special characters', function () {
  18. var controller = App.InstallerStep1Controller.create();
  19. controller.set('clusterName', 'my-cluster');
  20. expect(controller.validateStep1()).to.equal(false);
  21. expect(controller.get('invalidClusterName')).to.equal(true);
  22. })
  23. it('should return true, sets invalidClusterName to false, and sets cluster name in db if cluster name is valid', function () {
  24. var controller = App.InstallerStep1Controller.create();
  25. var clusterName = 'mycluster1';
  26. controller.set('clusterName', clusterName);
  27. // fake login so clusterName is properly retrieved from App.db
  28. App.db.setLoginName('myuser');
  29. expect(controller.validateStep1()).to.equal(true);
  30. expect(controller.get('invalidClusterName')).to.equal(false);
  31. expect(App.db.getClusterName()).to.equal(clusterName);
  32. })
  33. })
  34. })