Skip to content

Commit 62fdb65

Browse files
authored
Merge pull request #119 from marc101101/feature/test_refactoring
Feature/test refactoring
2 parents d40fabc + 1cc0666 commit 62fdb65

17 files changed

Lines changed: 777 additions & 1230 deletions
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
export const environment = {
22
production: true,
3-
apiUrl: 'http://localhost:8080/v1'
3+
apiUrl: 'http://localhost:' + process.env.PORT || 8080 +'/v1'
44
};
55

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
11
export const environment = {
22
production: false,
3-
apiUrl: 'http://localhost:8080/v1'
4-
};
3+
apiUrl: 'http://localhost:' + process.env.PORT || 8080 +'/v1'};
Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
11
export const environment = {
22
production: true,
3-
apiUrl: 'http://localhost:8080/v1'
4-
};
3+
apiUrl: 'http://localhost:' + process.env.PORT || 8080 +'/v1'};

server/service/AuthService.js

Lines changed: 0 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -36,41 +36,4 @@ exports.authPOST = function (data) {
3636
});
3737
});
3838

39-
}
40-
41-
if (process.env.NODE_ENV === 'test') {
42-
exports.clearDataBaseInsertUser = () => {
43-
return new Promise((resolve, reject) => {
44-
console.log("Clearing all Content in Table vhslq_teilnehmer and Insert valid user");
45-
let user = {
46-
teil_vorname: "John",
47-
teil_nachname: "Doe",
48-
teil_email: "johndoe@vhslq.de",
49-
teil_notizen: "john's notes",
50-
teil_passwort: "hunter22",
51-
eingegeben_von_user: 0,
52-
eingegeben_am_datum: "2018-01-01",
53-
eingegeben_am_zeit: "00:00:00",
54-
datenhistory: "John's data history"
55-
};
56-
57-
knex("vhslq_teilnehmer")
58-
.del()
59-
.then(() => {
60-
console.log("Finished clearing all Content in Table vhslq_teilnehmer");
61-
new User(user)
62-
.save()
63-
.then((user) => {
64-
resolve(user);
65-
})
66-
.catch((error) => {
67-
reject(error);
68-
});
69-
resolve();
70-
})
71-
.catch((error) => {
72-
reject(error);
73-
})
74-
});
75-
}
7639
}

server/service/CategoriesService.js

Lines changed: 0 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -71,39 +71,3 @@ exports.categoriesGET = function() {
7171
});
7272
});
7373
}
74-
75-
if (process.env.NODE_ENV === 'test') {
76-
exports.clearDataBase = () => {
77-
return new Promise((resolve, reject) => {
78-
console.log("Clearing all Content in Table vhslq_rubriken");
79-
knex("vhslq_rubriken")
80-
.del()
81-
.then(() => {
82-
console.log("Finished clearing all Content in Table vhslq_rubriken");
83-
resolve("clean");
84-
})
85-
.catch((error) => {
86-
reject(error);
87-
})
88-
})
89-
}
90-
91-
exports.setupDataBase = () => {
92-
return new Promise((resolve, reject) => {
93-
console.log("Setting up Content in Table vhslq_rubriken")
94-
let sample = require('../utils/sampleData').categories();
95-
let _Categories = require('../utils/database').Categories;
96-
let categories = _Categories
97-
.forge(sample)
98-
99-
Promise.all(categories.invokeMap('save'))
100-
.then((data) => {
101-
console.log("Finished Setting up Content in Table vhslq_rubriken")
102-
resolve("done");
103-
})
104-
.catch((error) => {
105-
reject(error);
106-
})
107-
});
108-
}
109-
}

server/service/ContactService.js

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
'use strict';
22

3+
var AppFeedback = require('../utils/database').AppFeedback;
4+
var knex = require('../utils/database').knex;
5+
var Errors = require('../utils/errors');
36

47
/**
58
* give general feedback to the team
@@ -10,16 +13,14 @@
1013
**/
1114
exports.contactPOST = function(data) {
1215
return new Promise(function(resolve, reject) {
13-
var examples = {};
14-
examples['application/json'] = {
15-
"text" : "This app is great!",
16-
"email" : "this@me.com"
17-
};
18-
if (Object.keys(examples).length > 0) {
19-
resolve(examples[Object.keys(examples)[0]]);
20-
} else {
21-
resolve();
22-
}
16+
new AppFeedback(data)
17+
.save()
18+
.then((feedback) => {
19+
resolve(feedback.attributes);
20+
})
21+
.catch((error) => {
22+
reject(error);
23+
})
2324
});
2425
}
2526

server/service/CoursesService.js

Lines changed: 19 additions & 114 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
'use strict';
22
var Courses = require('../utils/database').Course;
33
var Applications = require('../utils/database').Application;
4+
var CourseFeedback = require('../utils/database').CourseFeedback;
45

56

67
var knex = require('../utils/database').knex;
@@ -106,16 +107,15 @@ exports.generateApplicationFor = generateApplicationFor;
106107
**/
107108
exports.coursesCourse_idFeedbackPOST = function (course_id, data) {
108109
return new Promise(function (resolve, reject) {
109-
var examples = {};
110-
examples['application/json'] = {
111-
"text": "This app is great!",
112-
"email": "this@me.com"
113-
};
114-
if (Object.keys(examples).length > 0) {
115-
resolve(examples[Object.keys(examples)[0]]);
116-
} else {
117-
resolve();
118-
}
110+
new CourseFeedback({...data, kurs_id: course_id})
111+
.save()
112+
.then((feedback) => {
113+
resolve(feedback.attributes);
114+
})
115+
.catch((error) => {
116+
console.log(error);
117+
reject(error);
118+
})
119119
});
120120
}
121121

@@ -205,25 +205,15 @@ exports.coursesGET = function () {
205205
**/
206206
exports.coursesHighlightsGET = function () {
207207
return new Promise(function (resolve, reject) {
208-
var examples = {};
209-
examples['application/json'] = [{
210-
"max_age": 99,
211-
"name": "Kunst-Grundkurs",
212-
"id": 1,
213-
"text": "Dass Kunst nicht immer fad ist, soll in diesem Kurs klar gemacht werden",
214-
"min_age": 1
215-
}, {
216-
"max_age": 99,
217-
"name": "Kunst-Grundkurs",
218-
"id": 1,
219-
"text": "Dass Kunst nicht immer fad ist, soll in diesem Kurs klar gemacht werden",
220-
"min_age": 1
221-
}];
222-
if (Object.keys(examples).length > 0) {
223-
resolve(examples[Object.keys(examples)[0]]);
224-
} else {
225-
resolve();
226-
}
208+
Courses
209+
.where({kurs_highlight: 1})
210+
.fetchAll()
211+
.then((courses) => {
212+
resolve(courses.map(item => item.attributes));
213+
})
214+
.catch((error) => {
215+
reject(error);
216+
});
227217
});
228218
}
229219

@@ -246,89 +236,4 @@ exports.coursesLastminuteGET = function() {
246236
reject(error);
247237
});
248238
});
249-
}
250-
251-
if (process.env.NODE_ENV === 'test') {
252-
exports.clearDataBase = () => {
253-
console.log("Clearing all Content in Table vhslq_kurse");
254-
return new Promise((resolve, reject) => {
255-
knex("vhslq_kurse")
256-
.del()
257-
.then(() => {
258-
console.log("Finished clearing all Content in Table vhslq_kurse");
259-
resolve("clean");
260-
})
261-
.catch((error) => {
262-
reject(error);
263-
})
264-
})
265-
}
266-
267-
exports.setupDataBase = () => {
268-
console.log("Setting up Content in Table vhslq_kurse")
269-
return new Promise((resolve, reject) => {
270-
let sample = require('../utils/sampleData').courses();
271-
let _Courses = require('../utils/database').Courses;
272-
let courses = _Courses.forge(sample);
273-
274-
Promise.all(courses.invokeMap('save'))
275-
.then((data) => {
276-
console.log("Finished Setting up Content in Table vhslq_kurse")
277-
resolve(data);
278-
})
279-
.catch((error) => {
280-
reject(error);
281-
})
282-
});
283-
}
284-
285-
exports.setupLastMinute = () => {
286-
console.log("Setting up Last Minute Content in Table vhslq_kurse")
287-
return new Promise((resolve, reject) => {
288-
let sample = require('../utils/sampleData').coursesForLastMinute();
289-
let _Courses = require('../utils/database').Courses;
290-
let courses = _Courses.forge(sample);
291-
292-
Promise.all(courses.invokeMap('save'))
293-
.then((data) => {
294-
let courseIDs = data.map(item => item.attributes.id);
295-
let fullCourse = courseIDs[2];
296-
let _Applications = require('../utils/database').Applications
297-
let applications = _Applications.forge([
298-
generateApplicationFor(1222313, fullCourse),
299-
generateApplicationFor(1222312, fullCourse)
300-
])
301-
Promise.all(applications.invokeMap('save')).then(() => {
302-
console.log("Finished Setting up Last Minute Content in Table vhslq_kurse")
303-
resolve("done");
304-
}).catch((error) => {
305-
console.log(error)
306-
reject(error);
307-
})
308-
})
309-
.catch((error) => {
310-
reject(error);
311-
})
312-
});
313-
}
314-
315-
316-
exports.setupCoursesOfCategory = (category_id) => {
317-
return new Promise((resolve, reject) => {
318-
console.log("Setting up Content for Category with ID " + category_id);
319-
let sample = require('../utils/sampleData').coursesForCategory(category_id);
320-
let _Courses = require('../utils/database').Courses;
321-
let courses = _Courses
322-
.forge(sample)
323-
324-
Promise.all(courses.invokeMap('save'))
325-
.then((data) => {
326-
console.log("Finished Setting up Content in Table vhslq_rubriken");
327-
resolve("done");
328-
})
329-
.catch((error) => {
330-
reject(error);
331-
})
332-
});
333-
}
334239
}

server/service/UserService.js

Lines changed: 0 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -123,42 +123,4 @@ exports.userPUT = function (id, data) {
123123
reject(err);
124124
});
125125
});
126-
}
127-
128-
if (process.env.NODE_ENV === 'test') {
129-
exports.clearDataBase = () => {
130-
return new Promise((resolve, reject) => {
131-
console.log("Clearing all Content in Table vhslq_teilnehmer");
132-
knex("vhslq_teilnehmer")
133-
.del()
134-
.then(() => {
135-
console.log("Finished clearing all Content in Table vhslq_teilnehmer");
136-
resolve();
137-
})
138-
.catch((error) => {
139-
reject(error);
140-
})
141-
})
142-
}
143-
144-
exports.addCoursesToSampleUser = (user_id) => {
145-
return new Promise((resolve, reject) => {
146-
console.log("Adding Sample Courses To User ID " + user_id);
147-
let setupCourses = require('../service/CoursesService').setupDataBase;
148-
setupCourses().then((courses) => {
149-
let _Applications = require('../utils/database').Applications
150-
let generateApplicationFor = require('../service/CoursesService').generateApplicationFor;
151-
let applications = courses
152-
.map(item => item.attributes.id)
153-
.map(course_id => generateApplicationFor(user_id, course_id))
154-
Promise.all(_Applications.forge(applications).invokeMap('save')).then(() => {
155-
console.log("Finished Adding Courses to User ID " + user_id);
156-
resolve("done");
157-
}).catch((error) => {
158-
console.log(error)
159-
reject(error);
160-
})
161-
})
162-
});
163-
}
164126
}

server/test/auth.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ let chai = require('chai');
22
let chaiHttp = require('chai-http');
33
let server = require('../../index');
44

5-
let authService = require('../service/AuthService');
5+
let dbHelper = require('./helpers/dbhelpers')
66

77
let should = chai.should();
88

@@ -13,7 +13,7 @@ let invalidUser = {email: 'franzXYZ@vhslq.de', password: 'hunter22'}
1313

1414
describe('Authentication', () => {
1515
before(() => {
16-
return authService.clearDataBaseInsertUser();
16+
return dbHelper.Auth.clearDataBaseInsertUser();
1717
});
1818

1919

server/test/categories.js

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
let categoriesService = require('../service/CategoriesService');
2-
let coursesService = require('../service/CoursesService');
3-
let sampleCategories = require('../utils/sampleData').categories();
1+
let sampleCategories = require('./helpers/sampleData').categories();
2+
let dbHelper = require('./helpers/dbhelpers')
3+
44

55
let chai = require('chai');
66
let chaiHttp = require('chai-http');
@@ -12,7 +12,7 @@ chai.use(chaiHttp);
1212

1313
describe('Categories', () => {
1414
it("it should get no categories", (done) => {
15-
categoriesService.clearDataBase().then(() => {
15+
dbHelper.Categories.clearDataBase().then(() => {
1616
chai.request(server)
1717
.get('/v1/categories')
1818
.end((err, res) => {
@@ -34,8 +34,8 @@ describe('Categories', () => {
3434
})
3535
let categoryIDs = new Promise((resolve, reject) => {
3636
it("it should get all categories", (done) => {
37-
categoriesService.setupDataBase().then(() => {
38-
coursesService.clearDataBase().then(() => {
37+
dbHelper.Categories.setupDataBase().then(() => {
38+
dbHelper.Courses.clearDataBase().then(() => {
3939
chai.request(server)
4040
.get('/v1/categories')
4141
.end((err, res) => {
@@ -62,7 +62,7 @@ describe('Categories', () => {
6262
describe("Courses For Category", () => {
6363
ids.forEach((id) => {
6464
it("should get all courses from category "+id, (done) => {
65-
coursesService.setupCoursesOfCategory(id).then(() => {
65+
dbHelper.Courses.setupCoursesOfCategory(id).then(() => {
6666
chai.request(server)
6767
.get('/v1/categories/'+id+'/courses')
6868
.end((err, res) => {

0 commit comments

Comments
 (0)