ember-cli-mirage

This commit is contained in:
Matthew Dillon 2015-11-02 16:28:57 -07:00
parent 257ca6edff
commit 2313135e68
7 changed files with 118 additions and 3 deletions

82
app/mirage/config.js Normal file
View file

@ -0,0 +1,82 @@
export default function() {
// These comments are here to help you get started. Feel free to delete them.
/*
Config (with defaults).
Note: these only affect routes defined *after* them!
*/
// this.urlPrefix = ''; // make this `http://localhost:8080`, for example, if your API is on a different server
// this.namespace = ''; // make this `api`, for example, if your API is namespaced
// this.timing = 400; // delay for each request, automatically set to 0 during testing
/*
Route shorthand cheatsheet
*/
/*
GET shorthands
// Collections
this.get('/contacts');
this.get('/contacts', 'users');
this.get('/contacts', ['contacts', 'addresses']);
// Single objects
this.get('/contacts/:id');
this.get('/contacts/:id', 'user');
this.get('/contacts/:id', ['contact', 'addresses']);
*/
/*
POST shorthands
this.post('/contacts');
this.post('/contacts', 'user'); // specify the type of resource to be created
*/
/*
PUT shorthands
this.put('/contacts/:id');
this.put('/contacts/:id', 'user'); // specify the type of resource to be updated
*/
/*
DELETE shorthands
this.del('/contacts/:id');
this.del('/contacts/:id', 'user'); // specify the type of resource to be deleted
// Single object + related resources. Make sure parent resource is first.
this.del('/contacts/:id', ['contact', 'addresses']);
*/
/*
Function fallback. Manipulate data in the db via
- db.{collection}
- db.{collection}.find(id)
- db.{collection}.where(query)
- db.{collection}.update(target, attrs)
- db.{collection}.remove(target)
// Example: return a single object with related models
this.get('/contacts/:id', function(db, request) {
var contactId = +request.params.id;
return {
contact: db.contacts.find(contactId),
addresses: db.addresses.where({contact_id: contactId})
};
});
*/
}
/*
You can optionally export a config that is only loaded during tests
export function testConfig() {
}
*/

View file

@ -0,0 +1,20 @@
/*
This is an example factory definition.
Create more files in this directory to define additional factories.
*/
import Mirage/*, {faker} */ from 'ember-cli-mirage';
export default Mirage.Factory.extend({
// name: 'Pete', // strings
// age: 20, // numbers
// tall: true, // booleans
// email: function(i) { // and functions
// return 'person' + i + '@test.com';
// },
// firstName: faker.name.firstName, // using faker
// lastName: faker.name.firstName,
// zipCode: faker.address.zipCode
});

View file

@ -0,0 +1,7 @@
export default function(/* server */) {
// Seed your development database using your factories. This
// data will not be loaded in your tests.
// server.createList('contact', 10);
}