Skip to content

Commit

Permalink
missing test files added
Browse files Browse the repository at this point in the history
  • Loading branch information
izelnakri committed Oct 25, 2017
1 parent 46c9820 commit b4e67ab
Show file tree
Hide file tree
Showing 6 changed files with 187 additions and 8 deletions.
Empty file.
Empty file.
79 changes: 79 additions & 0 deletions test/mem-server.model.delete.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
const assert = require('assert');
const fs = require('fs');
const rimraf = require('rimraf');

describe('MemServer.Model Delete Interface', function() {
before(function() {
const modelFileContent = `import Model from '${process.cwd()}/lib/mem-server/model';
export default Model({});`;

fs.mkdirSync(`./memserver`);
fs.mkdirSync(`./memserver/models`);
fs.writeFileSync(`${process.cwd()}/memserver/models/user.js`, modelFileContent);
fs.writeFileSync(`${process.cwd()}/memserver/models/photo.js`, modelFileContent);
fs.writeFileSync(`${process.cwd()}/memserver/models/photo-comment.js`, modelFileContent);
fs.writeFileSync(`${process.cwd()}/memserver/server.js`, 'export default function(Models) {}');
fs.mkdirSync(`./memserver/fixtures`);
fs.writeFileSync(`${process.cwd()}/memserver/fixtures/photos.js`, `export default [
{
id: 1,
name: 'Ski trip',
href: 'ski-trip.jpeg',
is_public: false
},
{
id: 2,
name: 'Family photo',
href: 'family-photo.jpeg',
is_public: true
},
{
id: 3,
name: 'Selfie',
href: 'selfie.jpeg',
is_public: false
}
];`);
fs.writeFileSync(`${process.cwd()}/memserver/fixtures/photo-comments.js`, `export default [
{
uuid: '499ec646-493f-4eea-b92e-e383d94182f4',
content: 'What a nice photo!',
photo_id: 1,
user_id: 1
},
{
uuid: '77653ad3-47e4-4ec2-b49f-57ea36a627e7',
content: 'I agree',
photo_id: 1,
user_id: 2
},
{
uuid: 'd351963d-e725-4092-a37c-1ca1823b57d3',
content: 'I was kidding',
photo_id: 1,
user_id: 1
},
{
uuid: '374c7f4a-85d6-429a-bf2a-0719525f5f29',
content: 'Interesting indeed',
photo_id: 2,
user_id: 1
}
];`);
});

beforeEach(function() {
Object.keys(require.cache).forEach((key) => delete require.cache[key]);
});

after(function(done) {
if (fs.existsSync(`${process.cwd()}/memserver`)) {
rimraf.sync(`${process.cwd()}/memserver`);
}
done();
});

describe('$Model.delete() interface', function() {

});
});
15 changes: 7 additions & 8 deletions test/mem-server.model.js
Original file line number Diff line number Diff line change
Expand Up @@ -183,14 +183,13 @@ describe('MemServer.Model Interface', function() {
assert.equal(Photo.count(), 3);
assert.equal(PhotoComment.count(), 4);
});

// TODO: it('can have custom queries for a Model', function() {
//
// });
});
});

// describe('update factory interface');
// describe('destroy factory interface');

// describe('serialization interface');

// describe('complex operations') // multiple edit updates at once
// describe('custom query interface') // adding new queries etc
// });
// describe('update factory interface');
// describe('delete factory interface');
// describe('serialization interface');
Empty file.
101 changes: 101 additions & 0 deletions test/mem-server.model.update.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
const assert = require('assert');
const fs = require('fs');
const rimraf = require('rimraf');

describe('MemServer.Model Update Interface', function() {
before(function() {
const modelFileContent = `import Model from '${process.cwd()}/lib/mem-server/model';
export default Model({});`;

fs.mkdirSync(`./memserver`);
fs.mkdirSync(`./memserver/models`);
fs.writeFileSync(`${process.cwd()}/memserver/models/user.js`, modelFileContent);
fs.writeFileSync(`${process.cwd()}/memserver/models/photo.js`, `
import Model from '${process.cwd()}/lib/mem-server/model';
export default Model({
defaultAttributes: {
is_public: true,
name() {
return 'Some default name';
}
}
});
`);
fs.writeFileSync(`${process.cwd()}/memserver/models/photo-comment.js`, `
import Model from '${process.cwd()}/lib/mem-server/model';
export default Model({
defaultAttributes: {
inserted_at() {
return '2017-10-25T20:54:04.447Z';
},
is_important: true
}
});
`);
fs.writeFileSync(`${process.cwd()}/memserver/server.js`, 'export default function(Models) {}');
fs.mkdirSync(`./memserver/fixtures`);
fs.writeFileSync(`${process.cwd()}/memserver/fixtures/photos.js`, `export default [
{
id: 1,
name: 'Ski trip',
href: 'ski-trip.jpeg',
is_public: false
},
{
id: 2,
name: 'Family photo',
href: 'family-photo.jpeg',
is_public: true
},
{
id: 3,
name: 'Selfie',
href: 'selfie.jpeg',
is_public: false
}
];`);
fs.writeFileSync(`${process.cwd()}/memserver/fixtures/photo-comments.js`, `export default [
{
uuid: '499ec646-493f-4eea-b92e-e383d94182f4',
content: 'What a nice photo!',
photo_id: 1,
user_id: 1
},
{
uuid: '77653ad3-47e4-4ec2-b49f-57ea36a627e7',
content: 'I agree',
photo_id: 1,
user_id: 2
},
{
uuid: 'd351963d-e725-4092-a37c-1ca1823b57d3',
content: 'I was kidding',
photo_id: 1,
user_id: 1
},
{
uuid: '374c7f4a-85d6-429a-bf2a-0719525f5f29',
content: 'Interesting indeed',
photo_id: 2,
user_id: 1
}
];`);
});

beforeEach(function() {
Object.keys(require.cache).forEach((key) => delete require.cache[key]);
});

after(function(done) {
if (fs.existsSync(`${process.cwd()}/memserver`)) {
rimraf.sync(`${process.cwd()}/memserver`);
}
done();
});

describe('$Model.update() interface', function() {

});
});

0 comments on commit b4e67ab

Please sign in to comment.