Skip to content
Snippets Groups Projects
Commit 4d9d2dbb authored by Elisabeth Marie Opsahl's avatar Elisabeth Marie Opsahl
Browse files

ppdaterte filer

parent c3bcd161
No related branches found
No related tags found
No related merge requests found
Pipeline #22615 passed
...@@ -21,4 +21,23 @@ module.exports = class PersonDao extends Dao { ...@@ -21,4 +21,23 @@ module.exports = class PersonDao extends Dao {
callback callback
); );
} }
};
updateOne(json, callback){
var val = [json.navn, json.adresse, json.alder, json.id];
super.query(
"update person set navn=?, adresse=?, alder=? where id=?",
val,
callback
);
}
deleteOne(id, callback){
super.query(
"delete from person where id = ?",
[id],
callback
);
}
}
...@@ -4,6 +4,7 @@ const PersonDao = require("./persondao.js"); ...@@ -4,6 +4,7 @@ const PersonDao = require("./persondao.js");
const runsqlfile = require("./runsqlfile.js"); const runsqlfile = require("./runsqlfile.js");
// GitLab CI Pool // GitLab CI Pool
/*
var pool = mysql.createPool({ var pool = mysql.createPool({
connectionLimit: 1, connectionLimit: 1,
host: "mysql", host: "mysql",
...@@ -13,6 +14,16 @@ var pool = mysql.createPool({ ...@@ -13,6 +14,16 @@ var pool = mysql.createPool({
debug: false, debug: false,
multipleStatements: true multipleStatements: true
}); });
*/
var pool = mysql.createPool({
connectionLimit: 1,
host: "mysql.stud.iie.ntnu.no",
user: "elisamop",
password: "ktWkDPy1",
database: "elisamop",
debug: false,
multipleStatements: true
});
let personDao = new PersonDao(pool); let personDao = new PersonDao(pool);
...@@ -28,11 +39,11 @@ test("get one person from db", done => { ...@@ -28,11 +39,11 @@ test("get one person from db", done => {
"Test callback: status=" + status + ", data=" + JSON.stringify(data) "Test callback: status=" + status + ", data=" + JSON.stringify(data)
); );
expect(data.length).toBe(1); expect(data.length).toBe(1);
expect(data[0].navn).toBe("Hei Sveisen"); expect(data[0].navn).toBe("Hei Heisen");
done(); done();
} }
personDao.getOne(1, callback); personDao.getOne(2, callback);
}); });
test("get unknown person from db", done => { test("get unknown person from db", done => {
...@@ -73,3 +84,58 @@ test("get all persons from db", done => { ...@@ -73,3 +84,58 @@ test("get all persons from db", done => {
personDao.getAll(callback); personDao.getAll(callback);
}); });
test("delete user from sb", done => {
function callback(status, data) {
console.log(
"Test callback: status=" + status + ", data.length=" + data.length
);
expect(data.length).toBe(0);
done();
}
personDao.deleteOne(19, (status, data) => {
personDao.getOne(19, callback)
});
});
/*
test("delete one person from db", done => {
function callback(status, data) {
console.log(
"Test callback: status=" + status + ", data.length=" + data.length
);
personDao.getAll((status, data) => {
var number = data.length;
personDao.deleteOne(8, callback => {
personDao.getAll((status, data)=> {
expect(data.length).toBe(number - 1);
done();
});
});
});
}
console.log(
"Test callvack: status=" + status + ", data=" + JSON.stringify(data) + ", data.length=" + data.length
);
*/
test("update one person from db", done => {
function callback(status, data) {
console.log(
"Test callvack: status=" + status + ", data=" + JSON.stringify(data) + ", data.length=" + data.length
);
expect(data[0].navn).toBe("Nils Harriettson");
done();
}
personDao.updateOne(
{navn: "Nils Harriettson", alder: 54, adresse: "Veien 5", id: 3}, (status, data) => {
personDao.getOne(3, callback)
});
});
...@@ -6,6 +6,7 @@ var apiRoutes = express.Router(); ...@@ -6,6 +6,7 @@ var apiRoutes = express.Router();
app.use(bodyParser.json()); // for å tolke JSON app.use(bodyParser.json()); // for å tolke JSON
const PersonDao = require("./dao/persondao.js"); const PersonDao = require("./dao/persondao.js");
var pool = mysql.createPool({ var pool = mysql.createPool({
connectionLimit: 2, connectionLimit: 2,
host: "mysql.stud.iie.ntnu.no", host: "mysql.stud.iie.ntnu.no",
...@@ -15,6 +16,17 @@ var pool = mysql.createPool({ ...@@ -15,6 +16,17 @@ var pool = mysql.createPool({
debug: false debug: false
}); });
/*
var pool = mysql.createPool({
connectionLimit: 2,
host: "mysql.stud.iie.ntnu.no",
user: "elisamop",
password: "ktWkDPy1",
database: "elisamop",
debug: false
});
*/
let personDao = new PersonDao(pool); let personDao = new PersonDao(pool);
app.get("/person", (req, res) => { app.get("/person", (req, res) => {
...@@ -41,4 +53,20 @@ app.post("/person", (req, res) => { ...@@ -41,4 +53,20 @@ app.post("/person", (req, res) => {
}); });
}); });
app.post("/person/:personId", (req, res) => {
console.log("Fikk update POST-request fra klient");
personDao.updateOne(req.body, (status, data) => {
res.status(status);
res.json(data);
});
});
app.post("/person/:personId", (req, res) => {
console.log("Fikk delete POST-request fra klient");
personDao.deleteOne(req.body, (status, data) => {
res.status(status);
res.json(data);
});
});
var server = app.listen(8080); var server = app.listen(8080);
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment