Beispiel #1
0
def seedDatabase(database):

    userOneSecurityAnswerOne = "black"
    userOneSecurityAnswerTwo = "fish"
    userOneSecurityAnswers =[userOneSecurityAnswerOne, userOneSecurityAnswerTwo]
    userOne = User("ryan", "BlackHawk9", userOneSecurityAnswers)

    userTwoSecurityAnswerOne = "red"
    userTwoSecurityAnswerTwo = "apple"
    userTwoSecurityAnswers = [userTwoSecurityAnswerOne, userTwoSecurityAnswerTwo]
    userTwo = User("john", "BlackHawk9", userTwoSecurityAnswers)

    userThreeSecurityAnswerOne = "blue"
    userThreeSecurityAnswerTwo = "steak"
    userThreeSecurityAnswers = [userThreeSecurityAnswerOne, userThreeSecurityAnswerTwo]
    userThree = User("billy", "iLoveSteak", userThreeSecurityAnswers)

    userFourSecurityAnswerOne = "green"
    userFourSecurityAnswerTwo = "peas"
    userFourSecurityAnswers = [userFourSecurityAnswerOne, userFourSecurityAnswerTwo]
    userFour = User("jack", "iLovePeas", userFourSecurityAnswers)

    database["ryan"] = userOne
    database["john"] = userTwo
    database["billy"] = userThree
    database["jack"] = userFour
Beispiel #2
0
 def test_register(self):  #ok
     user1 = User("amir", 1)
     user2 = User("roie", 13)
     self.assertTrue(
         user1.register("amirdimri", "123456789").val, "need return True")
     self.assertFalse(
         user2.register("roie or", "132456789").val, "need return False")
     self.assertFalse(
         user2.register("roie", "1324").val, "need return False")
Beispiel #3
0
 def test_remove_subscriber(self):  #ok
     user1 = User("amir", 1)
     user1.identifier = 0
     Ecommerce.get_instance().subscribers = [user1]
     user2 = User("ofek", 13)
     user2.identifier = 1
     user2.state = State.GUEST
     self.assertFalse(user2.remove_subscriber(0).val, "need return False")
     user2.state = State.SYSTEM_ADMINISTRATOR
     self.assertTrue(user2.remove_subscriber(0), "need return False")
Beispiel #4
0
    def test_update_user_name(self, id, old_name, new_name):
        old_user = User(id, old_name, parser.parse("1970-01-01"))
        self._repo.get.return_value = old_user
        self._service.update_user_name(id, new_name)

        expected_saved_user = User(id, new_name, old_user.date_of_birth)
        self._repo.save.assert_called_once()
        # call_args[0][0] is the first positional argument of the call
        updated_user = self._repo.save.call_args[0][0]
        # note: dataclass generates __eq__ that checks all fields
        self.assertEqual(updated_user, expected_saved_user)
Beispiel #5
0
def server_method(con,mask):
    cmd = con.recv(1024)
    if not cmd:
        sel.unregister(con)
        con.close()
    else:
        data = cmd.decode()
        res = data.split("+")
        name = res[1]
        pswd = res[2]
        if res[0] == "login":
            server_show("The request to receive the client landing is landing....", "msg")
            user = User(name, pswd)
            sign = user.login()
            if sign:
                con.sendall(bytes("Success", encoding="utf-8"))
            else:
                con.sendall(bytes("Failure", encoding="utf-8"))
        if res[0] == "register":
            server_show("The request to receive the client register is register....", "msg")
            user = User(name, pswd)
            if user.register():
                con.sendall(bytes("Success", encoding="utf-8"))
            else:
                con.sendall(bytes("Failure", encoding="utf-8"))
        if res[0] == "view":
            server_show("Request to view the list of files under the directory....", "msg")
            user = User(name, pswd)
            if user.view_file():
                con.sendall(bytes("Success", encoding="utf-8"))
            else:
                con.sendall(bytes("Failure", encoding="utf-8"))
        if res[0] == "upload":
            server_show("receiving a request from a client to upload a file....","msg")
            con.send(bytes("True", encoding="utf-8"))
        if res[0] == "uploadfile":
            res_length = res[3]
            filename = res[4]
            User.receive(filename, name, res_length, con)
        if res[0] == "download":
            server_show("receiving a request from a client to download a file....","msg")
            user = User(name, pswd)
            res = str(user.view_file())
            con.sendall(bytes(res, encoding="utf-8"))
        if res[0] == "downloadfile":
            filename = res[3]
            User.download_file(filename, name, con)
            server_show("file download success....", "info")
Beispiel #6
0
    def test_header_table_customer(self, mocker, company_name, html_address,
                                   concated_name):
        user = mocker.create_autospec(User(), spec_set=True)
        user.name = ""
        user.mail = ""
        user.gender_suffix = ""
        user.phone = ""
        customer = mocker.create_autospec(Customer(), spec_set=True)
        customer.id = 1
        customer.company_name = company_name
        customer.concated_name = concated_name
        customer.html_address = html_address

        offer = Offer(user)
        offer.date = date(2020, 12, 15)
        offer.customer = customer
        header_table = offer.header_table()

        expected = f"""
            Dla:<br />
            <b>{company_name}</b><br />
            {html_address}<br />
            {concated_name}
"""
        assert_that(header_table, contains_string(expected))
Beispiel #7
0
def createNewUser(database):
    userName = input("Enter username for new user: "******"That username is already taken.")
            userName = input("Enter username for new user: "******"Enter your password: "******"Re-enter your password: "******"Passwords do not match.")
            userPassword = input("Enter your password: "******"Re-enter your password: "******"You must answer two security questions.")
    answerOne = input("Question 1: What is your favorite color? \n Enter answer: ")
    answerTwo = input("Question 2: What is your favorite food? \n Enter answer: ")
    newUserSecurityQuestions = [answerOne, answerTwo]

    # put new user into database
    newUser = User(userName, userPassword, newUserSecurityQuestions)
    database[userName] = newUser
Beispiel #8
0
def startFakeSession():
    tokenInfo = dict()
    tokenInfo['sub'] = '0'
    tokenInfo['email'] = '*****@*****.**'
    tokenInfo['name'] = 'Fake User'
    tokenInfo['picture'] = ''
    session.currentUser = User(tokenInfo)
Beispiel #9
0
    def test_change_details_of_product(self):
        user1 = User("amir", 1)
        user1.identifier = 0
        user1.username = "******"
        user1.password = "******"
        user1.state = State.STORE_OWNER
        user1.is_logged_in = True

        store1 = Store("mega", 1, "123123", None, None)
        store1.store_number = 1

        product1 = Product('chocholate', 'Food', ['Food', 'Sweet'], 10)
        product1.catalog_number = 1

        store1.owners = [0]
        store1.add_new_product(product1)

        Ecommerce.get_instance().subscribers = [user1]
        Ecommerce.get_instance().stores = [store1]

        self.assertTrue(
            user1.change_details_of_product(1, "name", "whiteChocholate").val,
            "need return True")
        self.assertFalse(
            user1.change_details_of_product(2, "name", "whiteChocholate").val,
            "need return False")
    def populate_generic_user(self):
        """ Populates DB with Tattoo admin account

        Note: This would be replaced with customer data/people who buy this software

        """
        other_session = self._get_session()

        test_user = User(first_name='Jen',
                         last_name='P',
                         user_name='Jplemel',
                         email_address=Keys.personal_email,
                         password="******")
        # if it doesn't already exist
        print(test_user.user_name)
        if not (self.check_user(test_user.user_name)):
            # Add testStudio object to session
            # This maps the object to a row in the DB
            other_session.add(test_user)
            print('Added ' + test_user.user_name + ' to DB')

        # Commit to save changes
        other_session.commit()
        new_guy = self.get_user('bs')
        print(new_guy)
Beispiel #11
0
 def get_user(self, user_id: int) -> User:
     with self.__lock:
         with sqlite3.connect(self.__path) as conn:
             cursor = conn.cursor()
             cursor.execute('SELECT * FROM users WHERE user_id=?', (user_id, ))
             row = cursor.fetchone()
             return User(*row)
Beispiel #12
0
    def test_init(self):
        """
		Test init of user

		:return:
		"""
        self.user = User(999)
Beispiel #13
0
    def test_full_header_table(self, mocker):
        expected_date = date(2020, 12, 15)
        mock_date = mocker.patch("src.offer.date", autospec=True)
        mock_date.today.return_value = expected_date

        vars = {"order email": "*****@*****.**", "HQ": "lorem<br />ipsum"}
        mocker.patch("src.offer.get_var",
                     autospce=True,
                     side_effect=lambda key: vars[key])

        expected_symbol = "X2012N08"
        user = mocker.create_autospec(User(), spec_set=True)
        user.new_offer_symbol.return_value = expected_symbol
        user.name = "Author Name"
        user.mail = "*****@*****.**"
        user.gender_suffix = "a"
        user.phone = "123 456 789"

        offer = Offer.create_empty(user)

        customer = mocker.create_autospec(Customer(), spec_set=True)
        customer.id = 1
        customer.company_name = "Full business name"
        customer.concated_name = "Mr John Doe"
        customer.html_address = "255 Some street<br />\nIn some town"
        offer.customer = customer

        header_table = offer.header_table()
        expected_header_table = """
    <table>
    <tr>
        <td valign=top width=315>
            Oferta nr: <b>X2012N08</b><br />
            Z dnia: 15.12.2020<br />
            Dla:<br />
            <b>Full business name</b><br />
            255 Some street<br />
In some town<br />
            Mr John Doe
        </td>
        <td width=315>
            lorem<br />ipsum<br />
            <b>Author Name</b><br />
            [email protected]<br />
            Tel.: 123 456 789
        </td>
        <td width=115 align=right>
            <img src=:/logos width=114 valign=top>
        </td>
    </tr>
    <tr>
        <td colspan=3>
            <hr width=100%>
        </td>
    </tr>
    </table>
"""
        assert_that(header_table,
                    is_(equal_to_ignoring_whitespace(expected_header_table)))
Beispiel #14
0
 def test_login(self):  #ok
     user1 = User("amir", 324)
     user1.register("amirdimri", "123456789")
     Ecommerce.get_instance().subscribers = [user1]
     self.assertTrue(
         user1.login("amirdimri", "123456789").val, "need return True")
     self.assertFalse(
         user1.login("amirdimri", "123456789").val, "need return False")
Beispiel #15
0
 def add_user(self, first_name, last_name, username, password, email):
     '''Add a user to the database'''
     if self.find_user(username, email) is None:
         password_hash = self._hash_password(password)
         user = User(first_name, last_name, username, email, password=password_hash)
         self.database.add_user(user)
     else:   
         raise RuntimeError('User already exists')
Beispiel #16
0
    def test_instanceCreation(self):
        newUser = User(self.validEmail, '132456', '132456', '1168727790',
                       'PAMI', 'Gerente de insumos', 'Domselaar')

        self.assertEqual(newUser.email, self.validEmail)
        self.assertEqual(newUser.phoneNumber, 1168727790)
        self.assertEqual(newUser.organization, 'PAMI')
        self.assertEqual(newUser.position, 'Gerente de insumos')
        self.assertEqual(newUser.city, 'Domselaar')
Beispiel #17
0
    def get(self, user_id):
        user = User(user_id)
        user_info = user.get_info()

        if user_info is None:
            return {'error': 'User [{}] does not exist.'.format(user_id)}, 204

        payload = {'id': user_id, 'movies': user_info}

        return payload, 200
Beispiel #18
0
 def test_add_to_cart(self):  #ok
     user1 = User("amir", 12)
     product1 = Product('chocholate', 'Food', ['Food', 'Sweet'], 10)
     product1.catalog_number = 1
     store1 = Store("ramiLevi", 0, "123123", None, None)
     store1.add_new_product(product1)
     Ecommerce.get_instance().stores = [store1]
     store1.inc_product_amount(1, 5)
     self.assertTrue(user1.add_to_cart(1).val, "need return True")
     self.assertFalse(user1.add_to_cart(9).val, "need return False")
Beispiel #19
0
 def test_add_new_product(self):  #ok
     user1 = User("amir", 2)
     user1.identifier = 0
     store1 = Store("ramiLevi", 0, "123123", None, None)
     store1.supervisor = 1
     Ecommerce.get_instance().stores = [store1]
     user1.state = State.STORE_OWNER
     self.assertTrue(
         user1.add_new_product(0, "chocholate", 5, "Food",
                               ['Food', 'Sweet']), "need return True")
Beispiel #20
0
 def login(self, res):
     server_show("Receiving client login request is landing....", "msg")
     name = res[1]
     psd = res[2]
     user = User(name, psd)
     sign = user.login()
     if sign:
         self.request.sendall(bytes("Success", encoding="utf-8"))
     else:
         self.request.sendall(bytes("Failure", encoding="utf-8"))
Beispiel #21
0
 def test_open_new_store(self):  #ok
     user1 = User("amir", 32)
     user1.register("amirdimri", "123456789")
     user1.login("amirdimri", "123456789")
     user1.state = State.GUEST
     self.assertFalse(
         user1.open_new_store("akdamon", 123456).val, "need return false")
     user1.state = State.STORE_OWNER
     self.assertTrue(
         user1.open_new_store("shnizale", 432567).val, "need return True")
Beispiel #22
0
def sample_user():
    u = User()
    u.id = USER_ID
    u.name = NAME
    u.mail = MAIL
    u.male = MALE
    u.phone = PHONE
    u.char_for_offer_symbol = CHAR_FOR_OFFER_SYMBOL
    u.business_symbol = BUSINESS_SYMBOL
    return u
Beispiel #23
0
 def register(self, res):
     server_show(
         "Receiving client registration request is being registered....",
         "msg")
     name = res[1]
     psd = res[2]
     user = User(name, psd)
     if user.register():
         self.request.sendall(bytes("Success", encoding="utf-8"))
     else:
         self.request.sendall(bytes("Failure", encoding="utf-8"))
Beispiel #24
0
def create_admin_user(login, password, email):
    password = User.hash_password(password)
    user = User(
        login=login,
        email=email,
        password=password.decode(),
        is_superuser=True,
    )
    User.save(user)

    print(f"Admin user created! {login} {email}.")  # noqa TOO1
Beispiel #25
0
    def test_init(self):
        # given
        u = User()

        # when
        u.init('user00', 'haslo')

        # then
        self.assertEqual("user00", u.username)
        self.assertIsNotNone(u.password_salt)
        self.assertIsNotNone(u.password_hash)
Beispiel #26
0
    def get(self, user_id):
        user = User(user_id)

        try:
            suggested_movies = user.get_suggested_movies(n=150)
        except Exception:
            return {'error': 'User [{}] does not exist.'.format(user_id)}, 204

        payload = {'suggested_movies': suggested_movies}

        return payload, 200
    def add_user(self, first_name, last_name, username, email_address,
                 password):
        """ Add User to DB """

        if self.find_user(username, email_address) is None:
            user = User(first_name=first_name,
                        last_name=last_name,
                        user_name=username,
                        email_address=email_address,
                        password=password)
            self.database.add_user(user)
        else:
            raise RuntimeError('User already exists')
Beispiel #28
0
    def test_header_table_date(self, mocker, offer_date, expected_date):
        user = mocker.create_autospec(User(), spec_set=True)
        user.name = ""
        user.mail = ""
        user.gender_suffix = ""
        user.phone = ""

        offer = Offer(user)
        offer.date = offer_date
        header_table = offer.header_table()

        expected = f"Z dnia: {expected_date}<br />"
        assert_that(header_table, contains_string(expected))
    def test_update_user_name(self):
        self._repo.get.return_value = Users.jack
        new_name = "Captain Jack Sparrow"

        self._service.update_user_name(Users.jack.id, new_name)

        expected_saved_user = User(Users.jack.id, new_name,
                                   Users.jack.date_of_birth)
        self._repo.save.assert_called_once()
        # call_args[0][0] is the first positional argument of the call
        updated_user = self._repo.save.call_args[0][0]
        # note: dataclass generates __eq__ that checks all fields
        self.assertEqual(updated_user, expected_saved_user)
Beispiel #30
0
    def test_header_table_symbol(self, mocker, symbol):
        user = mocker.create_autospec(User(), spec_set=True)
        user.name = ""
        user.mail = ""
        user.gender_suffix = ""
        user.phone = ""

        offer = Offer(user)
        offer.date = date(2020, 12, 15)
        offer.symbol = symbol
        header_table = offer.header_table()

        expected = f"Oferta nr: <b>{symbol}</b><br />"
        assert_that(header_table, contains_string(expected))