'use strict';
var path = require('path');
var assert = require('yeoman-assert');
var helpers = require('yeoman-test');

describe('generator-slimapp:app', function () {
  before(function () {
    return helpers.run(path.join(__dirname, '../generators/app'))
      .withPrompts({
        projectName: 'TestApp',
        projectDesc: 'An application generated for testing',
        projectVendor: 'TestCorp',
        projectLicense: 'MIT',
        projectNs: 'TestApp',
        friendlyName: 'Testing Application'
      })
      .toPromise();
  });

  it('creates files', function () {
    assert.file([
      'composer.json',
      'app/Controllers/HelloController.php',
      'app/Views/layout.html.twig',
      'config/routes.php',
      'init.php',
      'bower.json',
      '.bowerrc',
      'app/Views/index.html.twig',
      'public/index.php',
      'config/cli-config.php',
      'config.ini'
    ]);
  });
});

@@ -449,35 +449,37 @@
 jectNs: 'TestApp
+NS
 ',%0A
-
         friendly
@@ -897,14 +897,641 @@
 ini'
-%0A    %5D
+,%0A      '.gitignore',%0A      '.gitattributes',%0A      'config.ini.dist'%0A    %5D);%0A  %7D);%0A%0A  it('fills composer.json with the correct information', function () %7B%0A    // eslint-disable-next-line new-cap%0A    assert.JSONFileContent('composer.json', %7B%0A      name: 'TestCorp/TestApp',%0A      description: 'An application generated for testing',%0A      license: 'MIT',%0A      require: %7B%0A        'slim/slim': '3.7.0',%0A        'doctrine/orm': '%5E2.5',%0A        'doctrine/migrations': '%5E1.5',%0A        'tracy/tracy': '%5E2.4',%0A        'twig/twig': '%5E2.1'%0A      %7D,%0A      autoload: %7B%0A        'psr-4': %7B%0A          'TestAppNS%5C%5C': 'app/'%0A        %7D%0A      %7D%0A    %7D
 );%0A 

Add another test