def test_deposit(self): # creamos un nuevo usuario pablo = User(UserUid("01202"), UserName("Pablo López"), UserPassword("12345678")) # realizamos un depósito pablo.deposit(100) self.assertEqual(pablo.credits.value, 200)
def test_charge(self): # creamos un nuevo usuario pablo = User(UserUid("01202"), UserName("Pablo López"), UserPassword("12345678")) # realizamos un cargo pablo.charge(10) self.assertEqual(pablo.credits.value, 90)
def test_sould_be_dead(self): # cargamos un usuario con 10 créditos pablo = User(UserUid("01202"), UserName("Pablo López"), UserPassword("12345678"), UserCredits(10)) # realizamos un cargo pablo.charge(10) # tenía 10 y se le cargó 10 entonces queda como inactivo self.assertFalse(pablo.active)
def list(self) -> List[User]: users_list = [] for data in self.__repository.list(): users_list.append( User(data["id"], data["name"], data["password"], data["credits"])) return users_list
def test_sould_be_vip(self): # creamos un nuevo usuario pablo = User(UserUid("01202"), UserName("Pablo López"), UserPassword("12345678")) # realizamos un cargo pablo.deposit(1_000_000) print(pablo.is_vip) self.assertTrue(pablo.is_vip)
def __call__(self, uid: str, name: str, password: str): uid = UserUid(uid) name = UserName(name) password = UserPassword(password) # Creamos el usuario en memoria user = User(uid, name, password) # persistimos el usuario self.__repository.save(user)
def test_load_existent_user(self): user_from_data = { "uid": "01202", "name": "Julia", "pass": "******", "credits": 320 } pablo = User(UserUid(user_from_data["uid"]), UserName(user_from_data["name"]), UserPassword(user_from_data["pass"]), UserCredits(user_from_data["credits"])) self.assertEqual(pablo.credits.value, 320)
def test_create_new_user(self): pablo = User(UserUid("01202"), UserName("Pablo López"), UserPassword("12345678")) self.assertEqual(pablo.credits.value, 100)
def find(self, key: str, val: str) -> User: data = self.__repository.find(key, val) return User(data["id"], data["name"], data["password"], data["credits"])
def save(self, user: User): print("Saving: ", user.to_dict()) self.__repository.save(user.to_dict())