Skip to content

Instantly share code, notes, and snippets.

@kepford
Created December 14, 2017 17:07
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kepford/368794f4b1d81dc72adf9a044735dc56 to your computer and use it in GitHub Desktop.
Save kepford/368794f4b1d81dc72adf9a044735dc56 to your computer and use it in GitHub Desktop.
module.exports = () => {
const faker = require('faker');
const _ = require('lodash');
const states = ['active', 'complete', 'inprogress'];
const randomItem = (items) => {
let item = items[Math.floor(Math.random()*items.length)];
return item;
};
const courseTypes = [
{
type: 'CME',
cmeCredit: '2.0',
cneCredit: '',
isAssessment: false,
attendanceCredit: ''
},
{
type: 'CNE',
cmeCredit: '',
cneCredit: '2.0',
isAssessment: false,
attendanceCredit: ''
},
{
type: 'Attendance',
cmeCredit: '',
cneCredit: '',
isAssessment: true,
attendanceCredit: '1.0'
}
];
const getCourseType = (courseTypes) => {
courseType = courseTypes[Math.floor(Math.random()*courseTypes.length)];
return courseType;
};
const courses =
_.times(100, (n) => ({
id: n,
course_id: n,
drupal_id: faker.random.number(),
title: faker.company.bsNoun() + ' ' + faker.company.bsBuzz() + ' ' + faker.company.bsAdjective(),
author_id: faker.random.number(),
estimated_time_in_minutes: 30,
passing_threshold: 1,
cme_credit: getCourseType(courseTypes).cmeCredit,
cne_credit: getCourseType(courseTypes).cneCredit,
is_assessment: getCourseType(courseTypes).isAssessment,
attendance_credit: getCourseType(courseTypes).attendanceCredit,
default_days_until_due: 30,
is_published: faker.random.boolean(),
certificate_type: getCourseType(courseTypes).type,
location: faker.address.city()
}));
const enrollments =
_.times(500, (n) => ({
id: n,
drupal_id: faker.random.number(),
title: faker.company.bsNoun() + ' ' + faker.company.bsBuzz() + ' ' + faker.company.bsAdjective(),
enrollment_id: n,
course_id: n,
learner_id: faker.random.number(),
progress: 0.00,
score: 0,
state: randomItem(states),
end_at: '1508911199',
expires_at: '1508911199',
completed_at: '1508911199',
drupal_course_id: faker.random.number(),
drupal_user_id: faker.random.number(),
lms_survey_url: faker.internet.url(),
lms_survey_complete: faker.random.boolean()
}));
return {
course: courses,
enrollment: enrollments
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment