init.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. var path = require('path');
  2. var expect = require('expect.js');
  3. var fs = require('fs');
  4. var helpers = require('../helpers');
  5. var bower = helpers.require('lib/index');
  6. describe('bower init', function () {
  7. var tempDir = new helpers.TempDir();
  8. var bowerJsonPath = path.join(tempDir.path, 'bower.json');
  9. var config = {
  10. cwd: tempDir.path,
  11. interactive: true
  12. };
  13. it('generates bower.json file', function () {
  14. tempDir.prepare();
  15. var logger = bower.commands.init(config);
  16. return helpers.expectEvent(logger, 'prompt')
  17. .spread(function (prompt, answer) {
  18. answer({
  19. name: 'test-name',
  20. version: 'test-version',
  21. description: 'test-description',
  22. moduleType: 'test-moduleType',
  23. keywords: 'test-keyword',
  24. authors: 'test-author',
  25. license: 'test-license',
  26. homepage: 'test-homepage',
  27. private: true
  28. });
  29. return helpers.expectEvent(logger, 'prompt');
  30. })
  31. .spread(function (prompt, answer) {
  32. answer({
  33. prompt: true
  34. });
  35. return helpers.expectEvent(logger, 'end');
  36. })
  37. .then(function () {
  38. expect(fs.existsSync(bowerJsonPath)).to.be(true);
  39. });
  40. });
  41. });