فهرست منبع

Cards added getAll/verify/getByUser

Nik Atlas 6 سال پیش
والد
کامیت
886c77268b
2فایلهای تغییر یافته به همراه27 افزوده شده و 22 حذف شده
  1. 17 20
      database/repositories/cards.js
  2. 10 2
      database/repositories/cards.test.js

+ 17 - 20
database/repositories/cards.js

@@ -1,37 +1,34 @@
 const db = require("../db.js");
 var CryptoJS = require('crypto-js');
 
+const CARDS_SEARCH_CRITERIA = {
+	'lt': 'card;',
+	'gt': 'card:'
+};
 
 class CardsRepository {
 	getByID(id) {
 		return db.get('card:' + id);
 	}
 
-	getAllCards() {
-		const results = [];
-		return new Promise((res,rej) => {
-			db.createReadStream({
-				'lt': 'card;',
-				'gt': 'card:'
-			})
-			.on('data', function (data) {
-				console.log(data);
-				results.push(data);
-			})
-			.on('error', function (err) {
-			    rej(err);
-			})
-			.on('close', function () {
-			    res(results);
-			})
-			.on('end', function () {
-			});
-		});
+	getAll() {
+		return db.read(CARDS_SEARCH_CRITERIA);
+	}
+
+	getCardsByUser(userid) {
+		return db.search(['user', userid],CARDS_SEARCH_CRITERIA);
 	}
 
 	insert(id, data) {
 		return db.put('card:' + id, data);
 	}
+
+	verify(data) {
+		let { user } = data;
+		if (!user) throw Error("This data are corrupted!");
+
+		return { user };
+	}
 }
 
 

+ 10 - 2
database/repositories/cards.test.js

@@ -5,6 +5,14 @@ let hahah = {
 	attack: 5
 }
 
-cards.insert('testcard', hahah);
+//cards.insert('testcard', hahah);
 
-cards.getByID('testcard').then(console.log);
+cards.getAll().then(console.log);
+
+const card = {
+	user: 'nikatlas',
+	more: 'shit'
+};
+
+const newcard = cards.verify(card);
+cards.insert('Verified', newcard);