From adae7013d44411ee8dedd371833f668b063e8609 Mon Sep 17 00:00:00 2001 From: noahcovey Date: Fri, 17 Jan 2020 15:27:10 -0500 Subject: [PATCH 1/6] edited .env variables to match our db --- sample.env | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/sample.env b/sample.env index 05a6f30..509632a 100644 --- a/sample.env +++ b/sample.env @@ -1,6 +1,6 @@ -DB_HOST=abcde.abcde -DB_DATABASE=abcde -DB_USER=abcde -DB_PASSWORD=abcde +DB_HOST=rajje.db.elephantsql.com +DB_DATABASE=bxwlfqra +DB_USER=bxwlfqra +DB_PASSWORD=Es4eKltEooy9FAaOZnJL4tDhqvMmJv3p DB_PORT=5432 NODE_ENV=development \ No newline at end of file From 9ff58f49d8ba7a5b1083eec37b90997ca090f94b Mon Sep 17 00:00:00 2001 From: KingFi Date: Tue, 21 Jan 2020 11:56:06 -0500 Subject: [PATCH 2/6] configured migration files and imported seed data --- data/friendship.js | 24 ++++++++++++++ data/journalEntry.js | 19 ++++++++++++ data/message.js | 21 +++++++++++++ data/user.js | 5 +-- sample.env | 6 ---- ...190223_user.js => 20200121104232_users.js} | 21 ++++++++++--- .../migrations/20200121110649_friendships.js | 27 ++++++++++++++++ .../20200121111707_journalEntries.js | 24 ++++++++++++++ src/db/migrations/20200121112352_messages.js | 31 +++++++++++++++++++ src/db/seeds/01_friendships.js | 4 +++ src/db/seeds/02_journalEntries.js | 4 +++ src/db/seeds/03_messages.js | 4 +++ 12 files changed, 178 insertions(+), 12 deletions(-) create mode 100644 data/friendship.js create mode 100644 data/journalEntry.js create mode 100644 data/message.js delete mode 100644 sample.env rename src/db/migrations/{20191123190223_user.js => 20200121104232_users.js} (56%) create mode 100644 src/db/migrations/20200121110649_friendships.js create mode 100644 src/db/migrations/20200121111707_journalEntries.js create mode 100644 src/db/migrations/20200121112352_messages.js create mode 100644 src/db/seeds/01_friendships.js create mode 100644 src/db/seeds/02_journalEntries.js create mode 100644 src/db/seeds/03_messages.js diff --git a/data/friendship.js b/data/friendship.js new file mode 100644 index 0000000..0801824 --- /dev/null +++ b/data/friendship.js @@ -0,0 +1,24 @@ +const casual = require('casual') +const userData = require('./user') + +const statusArray = ['ACCEPTED', 'PENDING', 'REQUESTED'] + + +casual.define('friendship', (requestorId, requesteeId, status) => ({ + id: casual.uuid, + requestorId, + requesteeId, + status, +})) + + +const friendshipData = [] + +for (let i = 0; i < 20; ++i) { + const requestorId = casual.random_element(userData).id + const requesteeId = casual.random_element(userData).id + const status = statusArray[casual.integer(0, 2)] + friendshipData.push(casual.friendship(requestorId, requesteeId, status)) +} + +module.exports = friendshipData diff --git a/data/journalEntry.js b/data/journalEntry.js new file mode 100644 index 0000000..e688a93 --- /dev/null +++ b/data/journalEntry.js @@ -0,0 +1,19 @@ +const casual = require('casual') +const userData = require('./user') + +casual.define('journalEntry', userId => ({ + id: casual.uuid, + userId, + date: casual.date(), + text: casual.text, +})) + + +const journalData = [] + +for (let i = 0; i < 20; ++i) { + const userId = casual.random_element(userData).id + journalData.push(casual.journalEntry(userId)) +} + +module.exports = journalData diff --git a/data/message.js b/data/message.js new file mode 100644 index 0000000..488ba7f --- /dev/null +++ b/data/message.js @@ -0,0 +1,21 @@ +const casual = require('casual') +const userData = require('./user') + +casual.define('message', (senderId, receiverId) => ({ + id: casual.uuid, + senderId, + receiverId, + dateSent: casual.date(), + content: casual.text, +})) + + +const messageData = [] + +for (let i = 0; i < 20; ++i) { + const senderId = casual.random_element(userData).id + const receiverId = casual.random_element(userData).id + messageData.push(casual.message(senderId, receiverId)) +} + +module.exports = messageData diff --git a/data/user.js b/data/user.js index d6fac0c..f9b6a52 100644 --- a/data/user.js +++ b/data/user.js @@ -6,9 +6,10 @@ const password = '$2a$10$rQEY9CNl4OC.UtiyRgKnZeW0KaWnEANMKAxfIpNDQCgiCybm3G1fy' casual.define('user', () => ({ id: casual.uuid, email: casual.email, + firstName: casual.first_name, + lastName: casual.last_name, + dob: casual.date(), password, - created_at: casual.moment, - updated_at: casual.moment, })) diff --git a/sample.env b/sample.env deleted file mode 100644 index 509632a..0000000 --- a/sample.env +++ /dev/null @@ -1,6 +0,0 @@ -DB_HOST=rajje.db.elephantsql.com -DB_DATABASE=bxwlfqra -DB_USER=bxwlfqra -DB_PASSWORD=Es4eKltEooy9FAaOZnJL4tDhqvMmJv3p -DB_PORT=5432 -NODE_ENV=development \ No newline at end of file diff --git a/src/db/migrations/20191123190223_user.js b/src/db/migrations/20200121104232_users.js similarity index 56% rename from src/db/migrations/20191123190223_user.js rename to src/db/migrations/20200121104232_users.js index 3d9e206..c594ecd 100644 --- a/src/db/migrations/20191123190223_user.js +++ b/src/db/migrations/20200121104232_users.js @@ -1,6 +1,4 @@ -const { createTableIfNotExists } = require('../helpers') - -exports.up = async knex => createTableIfNotExists(knex, 'users', table => { +exports.up = async knex => knex.schema.createTable('users', table => { table .uuid('id') .notNullable() @@ -12,7 +10,22 @@ exports.up = async knex => createTableIfNotExists(knex, 'users', table => { .unique() .notNullable() - table.string('password').notNullable() + table + .string('firstName') + .notNullable() + + table + .string('lastName') + .notNullable() + + table + .date('dob') + .notNullable() + + table + .string('password') + .notNullable() + table.timestamp('createdAt').defaultTo(knex.fn.now()) table.timestamp('updatedAt').defaultTo(knex.fn.now()) diff --git a/src/db/migrations/20200121110649_friendships.js b/src/db/migrations/20200121110649_friendships.js new file mode 100644 index 0000000..e6e293c --- /dev/null +++ b/src/db/migrations/20200121110649_friendships.js @@ -0,0 +1,27 @@ + +exports.up = async knex => knex.schema.createTable('friendships', table => { + table + .uuid('id') + .notNullable() + .primary() + .defaultTo(knex.raw('uuid_generate_v4()')) + + table + .uuid('requestorId') + .references('users.id') + .notNullable() + .onDelete('CASCADE') + .onUpdate('CASCADE') + + table + .uuid('requesteeId') + .references('users.id') + .notNullable() + .onDelete('CASCADE') + .onUpdate('CASCADE') + + table + .enum('status', ['ACCEPTED', 'PENDING', 'REQUESTED']) +}) + +exports.down = async knex => knex.schema.dropTableIfExists('friendships') diff --git a/src/db/migrations/20200121111707_journalEntries.js b/src/db/migrations/20200121111707_journalEntries.js new file mode 100644 index 0000000..e1b4af0 --- /dev/null +++ b/src/db/migrations/20200121111707_journalEntries.js @@ -0,0 +1,24 @@ + +exports.up = async knex => knex.schema.createTable('journalEntries', table => { + table + .uuid('id') + .notNullable() + .primary() + .defaultTo(knex.raw('uuid_generate_v4()')) + + table + .uuid('userId') + .references('users.id') + .notNullable() + .onDelete('CASCADE') + .onUpdate('CASCADE') + + table + .date('date') + .notNullable() + + table + .text('text') +}) + +exports.down = async knex => knex.schema.dropTableIfExists('journalEntries') diff --git a/src/db/migrations/20200121112352_messages.js b/src/db/migrations/20200121112352_messages.js new file mode 100644 index 0000000..31c5af3 --- /dev/null +++ b/src/db/migrations/20200121112352_messages.js @@ -0,0 +1,31 @@ + +exports.up = async knex => knex.schema.createTable('messages', table => { + table + .uuid('id') + .notNullable() + .primary() + .defaultTo(knex.raw('uuid_generate_v4()')) + + table + .uuid('senderId') + .references('users.id') + .notNullable() + .onDelete('CASCADE') + .onUpdate('CASCADE') + + table + .uuid('receiverId') + .references('users.id') + .notNullable() + .onDelete('CASCADE') + .onUpdate('CASCADE') + + table + .date('dateSent') + .notNullable() + + table + .text('content') +}) + +exports.down = async knex => knex.schema.dropTableIfExists('messages') diff --git a/src/db/seeds/01_friendships.js b/src/db/seeds/01_friendships.js new file mode 100644 index 0000000..0f1e01a --- /dev/null +++ b/src/db/seeds/01_friendships.js @@ -0,0 +1,4 @@ +const friendData = require('../../../data/friendship') + +exports.seed = knex => knex('friendships').del() + .then(() => knex('friendships').insert(friendData)) diff --git a/src/db/seeds/02_journalEntries.js b/src/db/seeds/02_journalEntries.js new file mode 100644 index 0000000..1a4cf5c --- /dev/null +++ b/src/db/seeds/02_journalEntries.js @@ -0,0 +1,4 @@ +const journalData = require('../../../data/journalEntry') + +exports.seed = knex => knex('journalEntries').del() + .then(() => knex('journalEntries').insert(journalData)) diff --git a/src/db/seeds/03_messages.js b/src/db/seeds/03_messages.js new file mode 100644 index 0000000..2b8f106 --- /dev/null +++ b/src/db/seeds/03_messages.js @@ -0,0 +1,4 @@ +const messageData = require('../../../data/message') + +exports.seed = knex => knex('messages').del() + .then(() => knex('messages').insert(messageData)) From 52fbf2c40a0cee3a2699edff89ebe88a50282077 Mon Sep 17 00:00:00 2001 From: KingFi Date: Tue, 21 Jan 2020 13:51:14 -0500 Subject: [PATCH 3/6] fixed friendships --- data/friendship.js | 2 +- src/db/migrations/20200121110649_friendships.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/data/friendship.js b/data/friendship.js index 0801824..f6443a2 100644 --- a/data/friendship.js +++ b/data/friendship.js @@ -1,7 +1,7 @@ const casual = require('casual') const userData = require('./user') -const statusArray = ['ACCEPTED', 'PENDING', 'REQUESTED'] +const statusArray = ['ACCEPTED', 'PENDING', 'DECLINED'] casual.define('friendship', (requestorId, requesteeId, status) => ({ diff --git a/src/db/migrations/20200121110649_friendships.js b/src/db/migrations/20200121110649_friendships.js index e6e293c..f326960 100644 --- a/src/db/migrations/20200121110649_friendships.js +++ b/src/db/migrations/20200121110649_friendships.js @@ -21,7 +21,7 @@ exports.up = async knex => knex.schema.createTable('friendships', table => { .onUpdate('CASCADE') table - .enum('status', ['ACCEPTED', 'PENDING', 'REQUESTED']) + .enum('status', ['ACCEPTED', 'PENDING', 'DECLINED']) }) exports.down = async knex => knex.schema.dropTableIfExists('friendships') From 56079638c219b0a1456331d4fd5e63b682306039 Mon Sep 17 00:00:00 2001 From: KingFi Date: Tue, 21 Jan 2020 13:51:14 -0500 Subject: [PATCH 4/6] fixed friendships --- data/friendship.js | 2 +- src/db/migrations/20200121110649_friendships.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/data/friendship.js b/data/friendship.js index 0801824..f6443a2 100644 --- a/data/friendship.js +++ b/data/friendship.js @@ -1,7 +1,7 @@ const casual = require('casual') const userData = require('./user') -const statusArray = ['ACCEPTED', 'PENDING', 'REQUESTED'] +const statusArray = ['ACCEPTED', 'PENDING', 'DECLINED'] casual.define('friendship', (requestorId, requesteeId, status) => ({ diff --git a/src/db/migrations/20200121110649_friendships.js b/src/db/migrations/20200121110649_friendships.js index e6e293c..f326960 100644 --- a/src/db/migrations/20200121110649_friendships.js +++ b/src/db/migrations/20200121110649_friendships.js @@ -21,7 +21,7 @@ exports.up = async knex => knex.schema.createTable('friendships', table => { .onUpdate('CASCADE') table - .enum('status', ['ACCEPTED', 'PENDING', 'REQUESTED']) + .enum('status', ['ACCEPTED', 'PENDING', 'DECLINED']) }) exports.down = async knex => knex.schema.dropTableIfExists('friendships') From 747b8e557aec81c16ffcac8aa24ddaae620db2d8 Mon Sep 17 00:00:00 2001 From: KingFi Date: Tue, 21 Jan 2020 14:19:09 -0500 Subject: [PATCH 5/6] date to timestamp --- data/message.js | 2 +- src/db/migrations/20200121112352_messages.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/data/message.js b/data/message.js index 488ba7f..135abd3 100644 --- a/data/message.js +++ b/data/message.js @@ -5,7 +5,7 @@ casual.define('message', (senderId, receiverId) => ({ id: casual.uuid, senderId, receiverId, - dateSent: casual.date(), + createdAt: casual.moment, content: casual.text, })) diff --git a/src/db/migrations/20200121112352_messages.js b/src/db/migrations/20200121112352_messages.js index 31c5af3..1adbd9f 100644 --- a/src/db/migrations/20200121112352_messages.js +++ b/src/db/migrations/20200121112352_messages.js @@ -21,7 +21,7 @@ exports.up = async knex => knex.schema.createTable('messages', table => { .onUpdate('CASCADE') table - .date('dateSent') + .timestamp('createdAt').defaultTo(knex.fn.now()) .notNullable() table From be8200bdd237049cfeb27d0328edb06cbdb11bc3 Mon Sep 17 00:00:00 2001 From: KingFi Date: Tue, 21 Jan 2020 14:19:09 -0500 Subject: [PATCH 6/6] date to timestamp --- data/message.js | 2 +- src/db/migrations/20200121112352_messages.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/data/message.js b/data/message.js index 488ba7f..135abd3 100644 --- a/data/message.js +++ b/data/message.js @@ -5,7 +5,7 @@ casual.define('message', (senderId, receiverId) => ({ id: casual.uuid, senderId, receiverId, - dateSent: casual.date(), + createdAt: casual.moment, content: casual.text, })) diff --git a/src/db/migrations/20200121112352_messages.js b/src/db/migrations/20200121112352_messages.js index 31c5af3..1adbd9f 100644 --- a/src/db/migrations/20200121112352_messages.js +++ b/src/db/migrations/20200121112352_messages.js @@ -21,7 +21,7 @@ exports.up = async knex => knex.schema.createTable('messages', table => { .onUpdate('CASCADE') table - .date('dateSent') + .timestamp('createdAt').defaultTo(knex.fn.now()) .notNullable() table