Merge pull request #53 from hashicorp/test-coverage

Complete test coverage
This commit is contained in:
Susmitha Girumala authored and GitHub committed 2020-06-15 14:32:03 -04:00
commit 7d7a7b4d38
1 file changed
+48
+48
View File
@@ -17,6 +17,26 @@ module('Acceptance | projects', function (hooks) {
assert.equal(currentURL(), '/orgs/1/projects');
});
test('can create new projects', async function (assert) {
assert.expect(3);
assert.equal(this.server.db.projects.length, 0);
await visit('/orgs/1/projects/new');
await fillIn('[name="name"]', 'random string');
await click('[type="submit"]');
assert.equal(currentURL(), '/orgs/1/projects/1');
assert.equal(this.server.db.projects.length, 1);
});
test('can cancel create new projects', async function (assert) {
assert.expect(3);
assert.equal(this.server.db.projects.length, 0);
await visit('/orgs/1/projects/new');
await fillIn('[name="name"]', 'random string');
await click('.rose-form-actions [type="button"]');
assert.equal(currentURL(), '/orgs/1/projects');
assert.equal(this.server.db.projects.length, 0);
});
test('saving a new project with invalid fields displays error messages', async function (assert) {
assert.expect(2);
this.server.post('/orgs/:org_id/projects', () => {
@@ -53,6 +73,34 @@ module('Acceptance | projects', function (hooks) {
);
});
test('can save changes to existing project', async function (assert) {
assert.expect(2);
this.server.createList('project', 1, {name: 'MyProject'});
await visit('/orgs/1/projects/1');
await fillIn('[name="name"]', 'random string');
await click('.rose-form-actions [type="submit"]');
assert.equal(currentURL(), '/orgs/1/projects/1');
assert.equal(this.server.db.projects[0].name, 'random string');
});
test('can cancel changes to existing project', async function (assert) {
assert.expect(1);
this.server.createList('project', 1, {name: 'MyProject'});
await visit('/orgs/1/projects/1');
await fillIn('[name="name"]', 'random string');
await click('.rose-form-actions [type="button"]');
assert.equal(find('[name="name"]').value, 'MyProject');
});
test('can delete project', async function(assert) {
assert.expect(2);
this.server.createList('project', 1);
assert.equal(this.server.db.projects.length, 1);
await visit('/orgs/1/projects/1');
await click('.rose-button-warning');
assert.equal(this.server.db.projects.length, 0);
});
test('saving an existing project with invalid fields displays error messages', async function (assert) {
assert.expect(2);
this.server.createList('project', 1);