diff --git a/tests/user_tests/test_user.py b/tests/user_tests/test_user.py
index 2cb289a1da59867c98b40e75f64d2e682889c864..040f82396949793c8ef9d124d99601b7ac9c2dfe 100644
--- a/tests/user_tests/test_user.py
+++ b/tests/user_tests/test_user.py
@@ -1,11 +1,12 @@
 import unittest
 
-from apiserver.security import User, JsonDBInterface
+from apiserver.security import User, JsonDBInterface, UserInDB
 from apiserver.config import ApiserverSettings
 from collections import namedtuple
 import os
 import pathlib
 import shutil
+import random
 
 
 class UserTests(unittest.TestCase):
@@ -13,6 +14,8 @@ class UserTests(unittest.TestCase):
         self.path = '/tmp/userstorage/'
         pathlib.Path(self.path).mkdir(parents=True, exist_ok=True)
         settings = ApiserverSettings(userdb_path=os.path.join(self.path, 'users.json'))
+        self.a_user = UserInDB(username='test7', email='jo@go.com', hashed_password='42')
+        self.b_user = UserInDB(username='8test', email='n@co.go', hashed_password='12121')
 
         self.userdb = JsonDBInterface(settings=settings)
 
@@ -29,4 +32,51 @@ class UserTests(unittest.TestCase):
 
     def test_empty_get(self):
         self.assertRaises(Exception, self.userdb.get, 'foo')
-        
\ No newline at end of file
+        
+    def test_adding(self):
+        
+        self.userdb.add(user=self.a_user)
+
+        lst = self.userdb.list()
+        self.assertEquals(len(lst), 1, 'Should not be empty')
+
+        g_user = self.userdb.get(username='test7')
+        self.assertEqual(g_user.username, self.a_user.username)
+        self.assertDictEqual(g_user.dict(), self.a_user.dict())
+
+    def test_add_again(self):
+        self.userdb.add(user=self.a_user)
+        self.assertRaises(Exception, self.userdb.add, self.a_user)
+        
+    def test_delete(self):
+        self.userdb.add(user=self.a_user)
+        lst = self.userdb.list()
+        self.assertEquals(len(lst), 1, 'Should not be empty')
+
+        self.userdb.delete(username='test7')
+        lst = self.userdb.list()
+        self.assertEquals(len(lst), 0, 'Should be empty')
+
+        self.userdb.add(user=self.a_user)
+        self.userdb.add(user=self.b_user)
+        self.assertEquals(len(self.userdb.list()), 2, 'Should not be empty')
+        self.assertListEqual(self.userdb.list(), [self.a_user.username, self.b_user.username])
+        
+        self.userdb.delete(username='test7')
+        self.assertListEqual(self.userdb.list(), [self.b_user.username])
+
+        self.userdb.delete(username='test7')
+        self.assertListEqual(self.userdb.list(), [self.b_user.username])
+        
+        self.userdb.delete(username=self.b_user.username)
+        self.assertListEqual(self.userdb.list(), [])
+
+    def test_massive_add(self):
+        for n in range(0,25):
+            self.userdb.add(UserInDB(username=f"user_{n}", email='jo@go.com', hashed_password=f"{random.randint(0,200)}"))
+        self.assertEqual(len(self.userdb.list()), 25)
+
+
+
+        
+