From 0622dcc8a09a6ae7382a21cfcf4253ef529796c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miroslav=20Bajto=C5=A1?= Date: Tue, 13 May 2014 20:11:26 +0200 Subject: [PATCH] datasource: validate uniqueness of name --- models/datasource-definition.js | 1 + test/project.test.js | 21 ++++++++++++--------- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/models/datasource-definition.js b/models/datasource-definition.js index d7568105..8ebef1a9 100644 --- a/models/datasource-definition.js +++ b/models/datasource-definition.js @@ -1,4 +1,5 @@ var app = require('../'); var DatasourceDefinition = app.models.DatasourceDefinition; +DatasourceDefinition.validatesUniquenessOf('name'); DatasourceDefinition.validatesPresenceOf('name', 'connector'); diff --git a/test/project.test.js b/test/project.test.js index 75b9d76c..7e26263c 100644 --- a/test/project.test.js +++ b/test/project.test.js @@ -47,7 +47,7 @@ function loadProject(done) { done(err); } test.project = project; - done(); + done(null, project); }); } @@ -175,18 +175,21 @@ describe('Project', function () { }); describe('project.saveToFiles(dir, cb)', function () { - beforeEach(loadProject); it('should create and persist all project definitions', function(done) { var dir = temp.mkdirSync(); - this.project.saveToFiles(dir, function(err) { - if(err) return done(err); + loadProject(function(err, project) { + if (err) return done(err); - // TODO(ritch) - remove faux file writing to validate project - fs.writeFileSync(path.join(dir, 'app.js'), '// ...', 'utf8'); - fs.writeFileSync(path.join(dir, 'package.json'), '{}', 'utf8'); + project.saveToFiles(dir, function(err) { + if (err) return done(err); - expectValidProjectAtDir(dir, done); + // TODO(ritch) - remove faux file writing to validate project + fs.writeFileSync(path.join(dir, 'app.js'), '// ...', 'utf8'); + fs.writeFileSync(path.join(dir, 'package.json'), '{}', 'utf8'); + + expectValidProjectAtDir(dir, done); + }); }); }); @@ -197,7 +200,7 @@ describe('Project', function () { Project.createFromTemplate(dir, 'empty', function(err) { if(err) return done(err); - + Project.loadFromFiles(dir, function(err, project) { if(err) return done(err);