Name: Christopher John O'Sullivan
Student No.: 20058550
Shyft is an application that facilitates on the way delivery for road users targeted at the second hand market. In this iteration of Shyft I have built a MEAN Stack CRUD Application and tested it using testing frameworks such as Mocha, Chai and Selenium Web Driver.
To use this application some tools will need to be installed these tools are listed below:
MongoDB - Firstly run mongod in one terminal window and secondly mongo in another.
NPM Install - You must run npm install after downloaing this project to install all node modules.
Node - Version than 4.0
Adittonaly I have shown sample documents from the database in the extras section below.
The terminal commands need to build, test and run this application locally are:
npm run back-test
npm run start
npm run front-test
npm run build
npm start
Alternately after the testing phase you could also run the production build commands which are:
npm run build-prod
npm run start-prod
At this current stage of development there are 35 acceptance tests on this application below I have shown screenshots of each page and the out put of each acceptance test. Finally at the end of this section I have shown the routes to theses tests.
- test/acceptance/addUserPage-Test.js
- test/acceptance/homePage-Test.js
- test/acceptance/searchDeliveryPage-Test.js
- test/acceptance/sendItemPage-Test.js
- test/acceptance/updateJobPage-Test.js
- test/acceptance/updateUserPage-Test.js
- test/acceptance/viewUserPage-Test.js
The URL for this application on Travis is: https://travis-ci.org/EnjoiPandaCow/agile-software-a2
No automated deployment at this time.
fName: {
type: String,
required: true
},
lName: {
type: String,
required: true
},
email: {
type: String,
required: true
},
contactNo: {
type: String,
required: true
},
password: {
type: String,
required: true
},
street: {
type: String,
required: true
},
town: {
type: String,
required: true
},
county: {
type: String,
required: true
}
{
"_id" : ObjectId("59f6f0b99bd9dc7f544d7dac"),
"county" : "Kilkenny",
"town" : "Mooncoin",
"street" : "Polerone",
"password" : "Password1",
"contactNo" : "0831555552",
"email" : "[email protected]",
"lName" : "O'Sullivan",
"fName" : "CJ",
}
title: {
type: String,
required: true
},
desc: {
type: String,
required: false
},
size: {
type: String,
required: true
},
cStreet: {
type: String,
required: true
},
cTown: {
type: String,
required: true
},
cCounty: {
type: String,
required: true
},
cCoordinates: {
type: [Number],
index: '2dsphere'
},
dStreet: {
type: String,
required: true
},
dTown: {
type: String,
required: true
},
dCounty: {
type: String,
required: true
},
dCoordinates: {
type: [Number],
index: '2dsphere'
},
dTime: {
type: Date,
required: true,
},
price: {
type: Number,
required: true
},
photos: {
type: [String],
required: false
},
userId: {
type: String,
required: true
}
{
"_id" : ObjectId("59f1e69dd0ae514f10a24a82"),
"userId" : "59f9fb109bd9dc7f544cadfa",
"price" : 100.14,
"dTime" : ISODate("2014-09-11T14:12:00.000Z"),
"dCoordinates" : [
53.023793,
-9.30881
],
"dCounty" : "Clare",
"dTown" : "Doolin",
"dStreet" : "Roadford Doolin Clare",
"cCoordinates" : [
53.282694,
-6.211145
],
"cCounty" : "Dublin",
"cTown" : "Stillorgan",
"cStreet" : "122 Stillorgan Wood",
"size" : "Fits in a Van",
"desc" : "Sold my couch online, no way to transport it",
"title" : "Couch",
"photos" : [
"/photos/job/0002/4.jpg",
"/photos/job/0003/5.jpg",
"/photos/job/0004/6.jpg"
],
}