def setUp(self):
     self.app = create_app('testing')
     self.app_context = self.app.app_context()
     self.app_context.push()
     db.create_all()
     Role.insert_roles()
     Gender.insert_genders()
Exemple #2
0
 def setUp(self):
     self.app = create_app('testing')
     self.app_context = self.app.app_context()
     self.app_context.push()
     db.create_all()
     Role.insert_roles()
     Gender.insert_genders()
     self.client = self.app.test_client(use_cookies=True)
Exemple #3
0
    def setUpClass(cls):
        # start Chrome
        options = webdriver.ChromeOptions()
        options.add_argument('headless')

        try:
            driver_path = '/path/to/chromedriver'
            cls.client = webdriver.Chrome(driver_path, options=options)
        except:
            pass

        # skip these tests if the browser could not be started
        if cls.client:
            # create the application
            cls.app = create_app('testing')
            cls.app_context = cls.app.app_context()
            cls.app_context.push()

            # suppress logging to keep unittest output clean
            import logging
            logger = logging.getLogger('werkzeug')
            logger.setLevel("ERROR")

            # create the database and populate with some fake data
            db.create_all()
            Role.insert_roles()
            Gender.insert_genders()
            fake.users(10)
            fake.posts(10)

            # add an administrator user
            g = Gender.query.filter_by(name='Male').first()
            admin_role = Role.query.filter_by(name='Administrator').first()
            admin = User(email='*****@*****.**',
                         name='john',
                         password='******',
                         role=admin_role,
                         confirmed=True,
                         gender=g)
            db.session.add(admin)
            db.session.commit()

            # start the Flask server in a thread
            cls.server_thread = threading.Thread(target=cls.app.run,
                                                 kwargs={'debug': False})
            cls.server_thread.start()

            # give the server a second to ensure it is up
            time.sleep(1)
Exemple #4
0
            claim_code.status = "claimed"
            alert_claimed(claim_code)
            db.session.add(claim_code)
            db.session.commit()
            return jsonify(claim_code.to_json())
        return bad_request("already claimed")
    return abort(404)


if __name__ == "__main__":
    setup_logging(logging.DEBUG)
    logger.info("starting server..")

    # create tables
    logger.info("creating tables..")
    db.create_all()
    create_role("admin", "super user")
    create_role("finance", "Can view/action settlements")
    db.session.commit()

    # process commands
    if len(sys.argv) > 1:
        if sys.argv[1] == "add_user":
            add_user(sys.argv[2], sys.argv[3])
        if sys.argv[1] == "add_role":
            add_role(sys.argv[2], sys.argv[3])
        if sys.argv[1] == "add_merchant_codes":
            add_merchant_codes()
    else:
        # check config
        if "SETTLEMENT_ADDRESS" not in app.config:
Exemple #5
0
 def setUp(self):
     self.app = create_app('testing')
     self.app_context = self.app.app_context()
     self.app_context.push()
     db.create_all()