def setUp(self): self.config = testing.setUp() self.config.include('pyramid_mailer.testing') try: DBSession.close() DBSession.remove() # print("removed old DBSession ==============================") except: # print("no DBSession to remove =============================") pass # try: # os.remove('test_webtest_functional.db') # #print "deleted old test database" # except: # pass # #print "never mind" my_settings = { # 'sqlalchemy.url': 'sqlite:///test_webtest_functional.db', 'sqlalchemy.url': 'sqlite:///:memory:', 'available_languages': 'da de en es fr', 'c3smembership.mailaddr': '*****@*****.**', 'testing.mail_to_console': 'false' } engine = engine_from_config(my_settings) DBSession.configure(bind=engine) self.session = DBSession # () Base.metadata.create_all(engine) # dummy database entries for testing with transaction.manager: member1 = C3sMember( # german firstname=u'SomeFirstnäme', lastname=u'SomeLastnäme', email=u'*****@*****.**', address1=u"addr one", address2=u"addr two", postcode=u"12345", city=u"Footown Mäh", country=u"Foocountry", locale=u"DE", date_of_birth=date.today(), email_is_confirmed=False, email_confirm_code=u'ABCDEFGFOO', password=u'arandompassword', date_of_submission=date.today(), membership_type=u'normal', member_of_colsoc=True, name_of_colsoc=u"GEMA", num_shares=u'23', ) DBSession.add(member1) DBSession.flush() from c3smembership import main app = main({}, **my_settings) app.registry.get_mailer = get_mailer from webtest import TestApp self.testapp = TestApp(app)
def setUp(self): my_settings = {"sqlalchemy.url": "sqlite:///:memory:", "api_auth_token": u"SECRETAUTHTOKEN"} self.config = testing.setUp() app = main({}, **my_settings) # set up the database engine = engine_from_config(my_settings) DBSession.configure(bind=engine) Base.metadata.create_all(engine) with transaction.manager: member1 = C3sMember( # german firstname=u"SomeFirstnäme", lastname=u"SomeLastnäme", email=u"*****@*****.**", address1=u"addr one", address2=u"addr two", postcode=u"12345", city=u"Footown Mäh", country=u"Foocountry", locale=u"de", date_of_birth=date.today(), email_is_confirmed=False, email_confirm_code=u"ABCDEFGFOO", password=u"arandompassword", date_of_submission=date.today(), membership_type=u"normal", member_of_colsoc=True, name_of_colsoc=u"GEMA", num_shares=u"23", ) DBSession.add(member1) member1.email_invite_token_bcgv16 = u"MEMBERS_TOKEN" DBSession.flush() self.testapp = TestApp(app)
def setUp(self): my_settings = { 'sqlalchemy.url': 'sqlite:///:memory:', 'api_auth_token': u"SECRETAUTHTOKEN", 'c3smembership.url': u'localhost', 'testing.mail_to_console': u'false', } self.config = testing.setUp() app = main({}, **my_settings) self.get_mailer = GetMailerDummy() app.registry.get_mailer = self.get_mailer app.registry.membership_application.datetime = DateTimeDummy( datetime.datetime(2018, 4, 26, 12, 23, 34)) engine = engine_from_config(my_settings) DBSession.configure(bind=engine) Base.metadata.create_all(engine) with transaction.manager: # a group for accountants/staff accountants_group = Group(name=u"staff") DBSession.add(accountants_group) DBSession.flush() # staff personnel staffer1 = C3sStaff( login=u"rut", password=u"berries", email=u"*****@*****.**", ) staffer1.groups = [accountants_group] DBSession.add(accountants_group) DBSession.add(staffer1) DBSession.flush() self.testapp = TestApp(app)
def setUp(self): self.config = testing.setUp() self.config.include('pyramid_mailer.testing') try: DBSession.close() DBSession.remove() # print("removed old DBSession ==============================") except: # print("no DBSession to remove =============================") pass # try: # os.remove('test_webtest_functional.db') # #print "deleted old test database" # except: # pass # #print "never mind" my_settings = { # 'sqlalchemy.url': 'sqlite:///test_webtest_functional.db', 'sqlalchemy.url': 'sqlite:///:memory:', 'available_languages': 'da de en es fr', 'c3smembership.notification_sender': '*****@*****.**', 'testing.mail_to_console': 'false'} engine = engine_from_config(my_settings) DBSession.configure(bind=engine) self.session = DBSession # () Base.metadata.create_all(engine) # dummy database entries for testing with transaction.manager: member1 = C3sMember( # german firstname=u'SomeFirstnäme', lastname=u'SomeLastnäme', email=u'*****@*****.**', address1=u"addr one", address2=u"addr two", postcode=u"12345", city=u"Footown Mäh", country=u"Foocountry", locale=u"DE", date_of_birth=date.today(), email_is_confirmed=False, email_confirm_code=u'ABCDEFGFOO', password=u'arandompassword', date_of_submission=date.today(), membership_type=u'normal', member_of_colsoc=True, name_of_colsoc=u"GEMA", num_shares=u'23', ) DBSession.add(member1) DBSession.flush() from c3smembership import main app = main({}, **my_settings) app.registry.get_mailer = get_mailer from webtest import TestApp self.testapp = TestApp(app)
def setUp(self): self.config = testing.setUp() self.config.include('pyramid_mailer.testing') try: DBSession.close() DBSession.remove() # print "closed and removed DBSession" except: pass # print "no session to close" # try: # os.remove('test_webtest_accountants.db') # #print "deleted old test database" # except: # pass # #print "never mind" # self.session = DBSession() my_settings = { # 'sqlalchemy.url': 'sqlite:///test_webtest_accountants.db', 'sqlalchemy.url': 'sqlite:///:memory:', 'available_languages': 'da de en es fr', 'c3smembership.dashboard_number': '30' } engine = engine_from_config(my_settings) DBSession.configure(bind=engine) Base.metadata.create_all(engine) self._insert_members() with transaction.manager: # a group for accountants/staff accountants_group = Group(name=u"staff") try: DBSession.add(accountants_group) DBSession.flush() # print("adding group staff") except: print("could not add group staff.") # pass # staff personnel staffer1 = C3sStaff( login=u"rut", password=u"berries", email=u"*****@*****.**", ) staffer1.groups = [accountants_group] try: DBSession.add(accountants_group) DBSession.add(staffer1) DBSession.flush() except: print("it borked! (rut)") # pass from c3smembership import main app = main({}, **my_settings) from webtest import TestApp self.testapp = TestApp(app)
def setUp(self): self.config = testing.setUp() self.config.include('pyramid_mailer.testing') try: DBSession.close() DBSession.remove() # print "closed and removed DBSession" except: pass # print "no session to close" # try: # os.remove('test_webtest_accountants.db') # #print "deleted old test database" # except: # pass # #print "never mind" # self.session = DBSession() my_settings = { # 'sqlalchemy.url': 'sqlite:///test_webtest_accountants.db', 'sqlalchemy.url': 'sqlite:///:memory:', 'available_languages': 'da de en es fr', 'c3smembership.dashboard_number': '30'} engine = engine_from_config(my_settings) DBSession.configure(bind=engine) Base.metadata.create_all(engine) self._insert_members() with transaction.manager: # a group for accountants/staff accountants_group = Group(name=u"staff") try: DBSession.add(accountants_group) DBSession.flush() # print("adding group staff") except: print("could not add group staff.") # pass # staff personnel staffer1 = C3sStaff( login=u"rut", password=u"berries", email=u"*****@*****.**", ) staffer1.groups = [accountants_group] try: DBSession.add(accountants_group) DBSession.add(staffer1) DBSession.flush() except: print("it borked! (rut)") # pass from c3smembership import main app = main({}, **my_settings) from webtest import TestApp self.testapp = TestApp(app)
def connect(self, cfg, customAppSettings={}, wrapper='StopableWSGIServer'): self.cfg = cfg # clear old connections # try: # DBSession.close() # DBSession.remove() # os.remove(self.cfg['app']['db']) # except: # pass # create appConfig from ini self.appSettings = appconfig( 'config:' + os.path.join( os.path.dirname(__file__), '../../', self.cfg['app']['ini'] ) ) # store some derived variables self.appSettings['sqlalchemy.url'] = 'sqlite:///'+self.cfg['app']['db'] # merge/override appConfig with custom settings in cfg self.appSettings.update(self.cfg['app']['appSettings']) # merge/override appConfig with individual custom settings self.appSettings.update(customAppSettings) # app engine = engine_from_config(self.appSettings) DBSession.configure(bind=engine) Base.metadata.create_all(engine) from c3smembership import main app = main({}, **self.appSettings) # create srv if wrapper == 'StopableWSGIServer': self.srv = StopableWSGIServer.create( app, host=self.cfg['app']['host'], port=self.cfg['app']['port'] ) # check srv if not self.srv.wait(): raise Exception('Server could not be fired up. Exiting ...') elif wrapper == 'TestApp': self.srv = TestApp(app) else: raise Exception('Wrapper could not be found. Exiting ...') # store some variables self.srv.db = DBSession self.srv.url = 'http://' + self.cfg['app']['host'] + ':' \ + self.cfg['app']['port'] + '/' # self.srv.lu = 'lu/' + self.cfg['member']['token'] + '/' \ # + self.cfg['member']['email'] return self.srv
def setUp(self): my_settings = {'sqlalchemy.url': 'sqlite://', 'available_languages': 'da de en es fr'} #my_other_settings = {'sqlalchemy.url': 'sqlite:///test.db', # 'available_languages': 'da de en es fr'} # mock, not even used!? #from sqlalchemy import engine_from_config #engine = engine_from_config(my_settings) from c3smembership import main #try: app = main({}, **my_settings) #except: # app = main({}, **my_other_settings) # pass from webtest import TestApp self.testapp = TestApp(app)
def connect(self, cfg, customAppSettings=None, wrapper='StopableWSGIServer'): if customAppSettings is None: customAppSettings = {} self.cfg = cfg self.app_settings = appconfig( 'config:' + os.path.join( os.path.dirname(__file__), '../../', self.cfg['app']['ini'] ) ) # store some derived variables self.app_settings['sqlalchemy.url'] = 'sqlite:///'+self.cfg['app']['db'] # merge/override appConfig with custom settings in cfg self.app_settings.update(self.cfg['app']['appSettings']) # merge/override appConfig with individual custom settings self.app_settings.update(customAppSettings) # app engine = engine_from_config(self.app_settings) DBSession.configure(bind=engine) Base.metadata.create_all(engine) from c3smembership import main app = main({}, **self.app_settings) # create srv if wrapper == 'StopableWSGIServer': self.srv = StopableWSGIServer.create( app, host=self.cfg['app']['host'], port=self.cfg['app']['port'] ) # check srv if not self.srv.wait(): raise Exception('Server could not be fired up. Exiting ...') elif wrapper == 'TestApp': self.srv = TestApp(app) else: raise Exception('Wrapper could not be found. Exiting ...') # store some variables self.srv.db = DBSession self.srv.url = 'http://' + self.cfg['app']['host'] + ':' \ + self.cfg['app']['port'] + '/' return self.srv
def setUp(self): my_settings = { 'sqlalchemy.url': 'sqlite:///:memory:', 'api_auth_token': u"SECRETAUTHTOKEN", } self.config = testing.setUp() app = main({}, **my_settings) # set up the database engine = engine_from_config(my_settings) DBSession.configure(bind=engine) Base.metadata.create_all(engine) with transaction.manager: member1 = C3sMember( # german firstname=u'SomeFirstnäme', lastname=u'SomeLastnäme', email=u'*****@*****.**', address1=u"addr one", address2=u"addr two", postcode=u"12345", city=u"Footown Mäh", country=u"Foocountry", locale=u"de", date_of_birth=date.today(), email_is_confirmed=False, email_confirm_code=u'ABCDEFGFOO', password=u'arandompassword', date_of_submission=date.today(), membership_type=u'normal', member_of_colsoc=True, name_of_colsoc=u"GEMA", num_shares=u'23', ) member1.membership_number = 'M1' # pylint: disable=no-member DBSession.add(member1) GeneralAssemblyRepository.invite_member( member1.membership_number, GENERAL_ASSEMBLY, u'MEMBERS_TOKEN') # pylint: disable=no-member DBSession.flush() self.testapp = TestApp(app)
def setUp(self): my_settings = { 'sqlalchemy.url': 'sqlite:///:memory:', 'api_auth_token': u"SECRETAUTHTOKEN", } self.config = testing.setUp() app = main({}, **my_settings) # set up the database engine = engine_from_config(my_settings) DBSession.configure(bind=engine) Base.metadata.create_all(engine) with transaction.manager: member1 = C3sMember( # german firstname=u'SomeFirstnäme', lastname=u'SomeLastnäme', email=u'*****@*****.**', address1=u"addr one", address2=u"addr two", postcode=u"12345", city=u"Footown Mäh", country=u"Foocountry", locale=u"de", date_of_birth=date.today(), email_is_confirmed=False, email_confirm_code=u'ABCDEFGFOO', password=u'arandompassword', date_of_submission=date.today(), membership_type=u'normal', member_of_colsoc=True, name_of_colsoc=u"GEMA", num_shares=u'23', ) # pylint: disable=no-member DBSession.add(member1) member1.email_invite_token_bcgv18 = u'MEMBERS_TOKEN' # pylint: disable=no-member DBSession.flush() self.testapp = TestApp(app)
def setUpClass(cls): """ Setup app, web app and database The database is initialized with a staff login. App and web app are reused if already available. The database is reinitialized each time. """ if IntegrationTestCaseBase.TESTAPP is None: # Initialize test app cls.__set_up_database() if IntegrationTestCaseBase.APP is None: IntegrationTestCaseBase.APP = main({}, **cls.SETTINGS) cls.app = IntegrationTestCaseBase.APP IntegrationTestCaseBase.TESTAPP = TestApp( IntegrationTestCaseBase.APP) cls.testapp = IntegrationTestCaseBase.TESTAPP else: # Reuse test app cls.testapp = IntegrationTestCaseBase.TESTAPP cls.testapp.reset() # Setup new database for new test case cls.__set_up_database()
def setUp(self): my_settings = { 'sqlalchemy.url': 'sqlite:///:memory:', 'api_auth_token': u"SECRETAUTHTOKEN", 'c3smembership.url': u'localhost', 'c3smembership.notification_sender': u'*****@*****.**', 'c3smembership.status_receiver': u'*****@*****.**', 'testing.mail_to_console': u'false', } self.config = testing.setUp() app = main({}, **my_settings) self.get_mailer = GetMailerDummy() app.registry.get_mailer = self.get_mailer app.registry.membership_application.datetime = DateTimeDummy( datetime.datetime(2018, 4, 26, 12, 23, 34)) engine = engine_from_config(my_settings) DBSession.configure(bind=engine) Base.metadata.create_all(engine) with transaction.manager: # a group for accountants/staff accountants_group = Group(name=u"staff") DBSession.add(accountants_group) DBSession.flush() # staff personnel staffer1 = Staff( login=u"rut", password=u"berries", email=u"*****@*****.**", ) staffer1.groups = [accountants_group] DBSession.add(accountants_group) DBSession.add(staffer1) DBSession.flush() self.testapp = TestApp(app)
def setUp(self): """ Setup test cases """ self.config = testing.setUp() self.config.include('pyramid_mailer.testing') DBSession.close() DBSession.remove() my_settings = { 'sqlalchemy.url': 'sqlite:///:memory:', 'available_languages': 'da de en es fr', 'c3smembership.dashboard_number': '30' } engine = engine_from_config(my_settings) DBSession.configure(bind=engine) Base.metadata.create_all(engine) # self._insert_members() with transaction.manager: # a group for accountants/staff accountants_group = Group(name=u"staff") DBSession.add(accountants_group) DBSession.flush() # staff personnel staffer1 = C3sStaff( login=u"rut", password=u"berries", email=u"*****@*****.**", ) staffer1.groups = [accountants_group] DBSession.add(accountants_group) DBSession.add(staffer1) DBSession.flush() app = main({}, **my_settings) self.testapp = TestApp(app)
def setUp(self): """ Setup test cases """ self.config = testing.setUp() self.config.include('pyramid_mailer.testing') DBSession.close() DBSession.remove() my_settings = { 'sqlalchemy.url': 'sqlite:///:memory:', 'available_languages': 'da de en es fr', 'c3smembership.dashboard_number': '30'} engine = engine_from_config(my_settings) DBSession.configure(bind=engine) Base.metadata.create_all(engine) # self._insert_members() with transaction.manager: # a group for accountants/staff accountants_group = Group(name=u"staff") DBSession.add(accountants_group) DBSession.flush() # staff personnel staffer1 = Staff( login=u"rut", password=u"berries", email=u"*****@*****.**", ) staffer1.groups = [accountants_group] DBSession.add(accountants_group) DBSession.add(staffer1) DBSession.flush() app = main({}, **my_settings) self.testapp = TestApp(app)
def test_join_c3s(self): """ Test the join form """ self.config = testing.setUp() self.config.include('pyramid_mailer.testing') DBSession().close() DBSession.remove() my_settings = { 'sqlalchemy.url': 'sqlite:///:memory:', 'available_languages': 'da de en es fr', 'c3smembership.dashboard_number': '30'} engine = engine_from_config(my_settings) DBSession.configure(bind=engine) Base.metadata.create_all(engine) with transaction.manager: accountants_group = Group(name=u"staff") db_session = DBSession() db_session.add(accountants_group) db_session.flush() staffer1 = Staff( login=u"rut", password=u"berries", email=u"*****@*****.**", ) staffer1.groups = [accountants_group] db_session.add(accountants_group) db_session.add(staffer1) db_session.flush() app = main({}, **my_settings) testapp = TestApp(app) # sucess for valid entry res = testapp.get('/', status=200) form = self._fill_form_valid_natural(res.form) res = form.submit(u'submit', status=302) res = res.follow() self.assertTrue('information below to be correct' in res.body) # success for 18th birthday res = testapp.get('/', status=200) form = self._fill_form_valid_natural(res.form) join.date = DummyDate(date(2018, 4, 29)) form['year'] = u'2000' form['month'] = u'04' form['day'] = u'29' res = form.submit(u'submit', status=302) res = res.follow() self.assertTrue('information below to be correct' in res.body) # failure on test one day before 18th birthday res = testapp.get('/', status=200) form = self._fill_form_valid_natural(res.form) join.date = DummyDate(date(2018, 4, 29)) form['year'] = u'2000' form['month'] = u'04' form['day'] = u'30' res = form.submit(u'submit', status=200) self.assertTrue('underaged person is currently not' in res.body) # failure for statute not checked res = testapp.get('/', status=200) form = self._fill_form_valid_natural(res.form) form['got_dues_regulations'].value__set(False) res = form.submit(u'submit', status=200) # failure for dues regulations not checked res = testapp.get('/', status=200) form = self._fill_form_valid_natural(res.form) form['got_dues_regulations'].value__set(False) res = form.submit(u'submit', status=200) # teardown DBSession().close() DBSession.remove() testing.tearDown()
def test_join_c3s(self): # setup self.config = testing.setUp() self.config.include('pyramid_mailer.testing') DBSession.close() DBSession.remove() my_settings = { 'sqlalchemy.url': 'sqlite:///:memory:', 'available_languages': 'da de en es fr', 'c3smembership.dashboard_number': '30' } engine = engine_from_config(my_settings) DBSession.configure(bind=engine) Base.metadata.create_all(engine) with transaction.manager: # a group for accountants/staff accountants_group = Group(name=u"staff") DBSession.add(accountants_group) DBSession.flush() # staff personnel staffer1 = C3sStaff( login=u"rut", password=u"berries", email=u"*****@*****.**", ) staffer1.groups = [accountants_group] DBSession.add(accountants_group) DBSession.add(staffer1) DBSession.flush() app = main({}, **my_settings) self.testapp = TestApp(app) # sucess for valid entry res = self.testapp.get('/', status=200) form = self._fill_form_valid_natural(res.form) res = form.submit(u'submit', status=302) res = res.follow() self.assertTrue('information below to be correct' in res.body) # success for 18th birthday res = self.testapp.get('/', status=200) form = self._fill_form_valid_natural(res.form) form['year'] = unicode(date.today().year - 18) form['month'] = unicode(date.today().month) form['day'] = unicode(date.today().day) res = form.submit(u'submit', status=302) res = res.follow() self.assertTrue('information below to be correct' in res.body) # failure on test one day before 18th birthday res = self.testapp.get('/', status=200) form = self._fill_form_valid_natural(res.form) form['year'] = unicode(date.today().year - 18) form['month'] = unicode(date.today().month) form['day'] = unicode(date.today().day + 1) res = form.submit(u'submit', status=200) self.assertTrue('underaged person is currently not' in res.body) # failure for statute not checked res = self.testapp.get('/', status=200) form = self._fill_form_valid_natural(res.form) form['got_dues_regulations'].value__set(False) res = form.submit(u'submit', status=200) # failure for dues regulations not checked res = self.testapp.get('/', status=200) form = self._fill_form_valid_natural(res.form) form['got_dues_regulations'].value__set(False) res = form.submit(u'submit', status=200) # teardown DBSession.close() DBSession.remove() testing.tearDown()
def setUp(self): """ Setup test cases """ self.config = testing.setUp() self.config.include('pyramid_mailer.testing') DBSession.close() DBSession.remove() my_settings = { 'sqlalchemy.url': 'sqlite:///:memory:', 'available_languages': 'da de en es fr', 'c3smembership.dashboard_number': '30' } engine = engine_from_config(my_settings) DBSession.configure(bind=engine) Base.metadata.create_all(engine) # self._insert_members() with transaction.manager: # a group for accountants/staff accountants_group = Group(name=u"staff") DBSession.add(accountants_group) DBSession.flush() # staff personnel staffer1 = C3sStaff( login=u"rut", password=u"berries", email=u"*****@*****.**", ) staffer1.groups = [accountants_group] DBSession.add(accountants_group) DBSession.add(staffer1) DBSession.flush() with transaction.manager: member1 = C3sMember( # german firstname=u'SomeFirstnäme', lastname=u'SomeLastnäme', email=u'*****@*****.**', address1=u"addr one", address2=u"addr two", postcode=u"12345", city=u"Footown Mäh", country=u"Foocountry", locale=u"de", date_of_birth=date.today(), email_is_confirmed=False, email_confirm_code=u'ABCDEFGFOO', password=u'arandompassword', date_of_submission=date.today(), membership_type=u'normal', member_of_colsoc=True, name_of_colsoc=u"GEMA", num_shares=u'23', ) shares1_m1 = Shares( number=2, date_of_acquisition=date.today(), reference_code=u'ABCDEFGH', signature_received=True, signature_received_date=date(2014, 6, 7), payment_received=True, payment_received_date=date(2014, 6, 8), signature_confirmed=True, signature_confirmed_date=date(2014, 6, 8), payment_confirmed=True, payment_confirmed_date=date(2014, 6, 9), accountant_comment=u'no comment', ) member1.shares = [shares1_m1] shares2_m1 = Shares( number=23, date_of_acquisition=date.today(), reference_code=u'IJKLMNO', signature_received=True, signature_received_date=date(2014, 1, 7), payment_received=True, payment_received_date=date(2014, 1, 8), signature_confirmed=True, signature_confirmed_date=date(2014, 1, 8), payment_confirmed=True, payment_confirmed_date=date(2014, 1, 9), accountant_comment=u'not connected', ) member1.shares.append(shares2_m1) member1.membership_accepted = True member2 = C3sMember( # english firstname=u'AAASomeFirstnäme', lastname=u'XXXSomeLastnäme', email=u'*****@*****.**', address1=u"addr one", address2=u"addr two", postcode=u"12345", city=u"Footown Mäh", country=u"Foocountry", locale=u"en", date_of_birth=date.today(), email_is_confirmed=False, email_confirm_code=u'ABCDEFGBAR', password=u'arandompassword', date_of_submission=date.today(), membership_type=u'normal', member_of_colsoc=True, name_of_colsoc=u"GEMA", num_shares=u'2', ) founding_member3 = C3sMember( # english firstname=u'BBBSomeFirstnäme', lastname=u'YYYSomeLastnäme', email=u'*****@*****.**', address1=u"addr one", address2=u"addr two", postcode=u"12345", city=u"Footown Mäh", country=u"Foocountry", locale=u"en", date_of_birth=date.today(), email_is_confirmed=False, email_confirm_code=u'ABCBARdungHH_', password=u'anotherrandompassword', date_of_submission=date.today(), membership_type=u'normal', member_of_colsoc=True, name_of_colsoc=u"GEMA", num_shares=u'2', ) member4_lost = C3sMember( firstname=u'Resigned', lastname=u'Smith', email=u'*****@*****.**', address1=u"addr one", address2=u"addr two", postcode=u"12345", city=u"Footown Mäh", country=u"Foocountry", locale=u"en", date_of_birth=date(1980, 1, 2), email_is_confirmed=False, email_confirm_code=u'RESIGNEDSMITH', password=u'arandompassword', date_of_submission=date.today() - timedelta(days=370), membership_type=u'normal', member_of_colsoc=True, name_of_colsoc=u"GEMA", num_shares=u'2', ) DBSession.add(shares1_m1) DBSession.add(shares2_m1) DBSession.add(member1) DBSession.add(member2) DBSession.add(founding_member3) DBSession.add(member4_lost) app = main({}, **my_settings) self.testapp = TestApp(app)
def setUp(self): self.config = testing.setUp() self.config.include('pyramid_mailer.testing') try: DBSession.close() DBSession.remove() # print "closed and removed DBSession" except: pass # print "no session to close" # try: # os.remove('test_import.db') # #print "deleted old test database" # except: # pass # #print "never mind" # self.session = DBSession() my_settings = { # 'sqlalchemy.url': 'sqlite:///test_import.db', 'sqlalchemy.url': 'sqlite:///:memory:', 'available_languages': 'da de en es fr', 'c3smembership.dashboard_number': '30', } engine = engine_from_config(my_settings) DBSession.configure(bind=engine) Base.metadata.create_all(engine) with transaction.manager: member1 = C3sMember( # german firstname=u'SomeFirstnäme', lastname=u'SomeLastnäme', email=u'*****@*****.**', address1=u"addr one", address2=u"addr two", postcode=u"12345", city=u"Footown Mäh", country=u"Foocountry", locale=u"DE", date_of_birth=date.today(), email_is_confirmed=False, email_confirm_code=u'ABCDEFGFOO', password=u'arandompassword', date_of_submission=date.today(), membership_type=u'normal', member_of_colsoc=True, name_of_colsoc=u"GEMA", num_shares=u'23', ) DBSession.add(member1) DBSession.flush() self.m1_last_pw_change = member1.last_password_change with transaction.manager: # a group for accountants/staff accountants_group = Group(name=u"staff") try: DBSession.add(accountants_group) DBSession.flush() # print("adding group staff") except: # print("could not add group staff.") pass # staff personnel staffer1 = C3sStaff( login=u"rut", password=u"berries", email=u"*****@*****.**", ) staffer1.groups = [accountants_group] try: DBSession.add(accountants_group) DBSession.add(staffer1) DBSession.flush() except: # print("it borked! (rut)") pass from c3smembership import main app = main({}, **my_settings) app.registry.settings['c3smembership.runmode'] = 'dev' from webtest import TestApp self.testapp = TestApp(app)
def setUp(self): """ Setup test cases """ self.config = testing.setUp() self.config.include('pyramid_mailer.testing') DBSession.close() DBSession.remove() my_settings = { 'sqlalchemy.url': 'sqlite:///:memory:', 'available_languages': 'da de en es fr', 'c3smembership.dashboard_number': '30'} engine = engine_from_config(my_settings) DBSession.configure(bind=engine) Base.metadata.create_all(engine) # self._insert_members() with transaction.manager: # a group for accountants/staff accountants_group = Group(name=u"staff") DBSession.add(accountants_group) DBSession.flush() # staff personnel staffer1 = C3sStaff( login=u"rut", password=u"berries", email=u"*****@*****.**", ) staffer1.groups = [accountants_group] DBSession.add(accountants_group) DBSession.add(staffer1) DBSession.flush() with transaction.manager: member1 = C3sMember( # german firstname=u'SomeFirstnäme', lastname=u'SomeLastnäme', email=u'*****@*****.**', address1=u"addr one", address2=u"addr two", postcode=u"12345", city=u"Footown Mäh", country=u"Foocountry", locale=u"de", date_of_birth=date.today(), email_is_confirmed=False, email_confirm_code=u'ABCDEFGFOO', password=u'arandompassword', date_of_submission=date.today(), membership_type=u'normal', member_of_colsoc=True, name_of_colsoc=u"GEMA", num_shares=u'23', ) shares1_m1 = Shares( number=2, date_of_acquisition=datetime.today(), reference_code=u'ABCDEFGH', signature_received=True, signature_received_date=datetime(2014, 6, 7), payment_received=True, payment_received_date=datetime(2014, 6, 8), signature_confirmed=True, signature_confirmed_date=datetime(2014, 6, 8), payment_confirmed=True, payment_confirmed_date=datetime(2014, 6, 9), accountant_comment=u'no comment', ) member1.shares = [shares1_m1] shares2_m1 = Shares( number=23, date_of_acquisition=datetime.today(), reference_code=u'IJKLMNO', signature_received=True, signature_received_date=datetime(2014, 1, 7), payment_received=True, payment_received_date=datetime(2014, 1, 8), signature_confirmed=True, signature_confirmed_date=datetime(2014, 1, 8), payment_confirmed=True, payment_confirmed_date=datetime(2014, 1, 9), accountant_comment=u'not connected', ) member1.shares.append(shares2_m1) member1.membership_accepted = True member2 = C3sMember( # english firstname=u'AAASomeFirstnäme', lastname=u'XXXSomeLastnäme', email=u'*****@*****.**', address1=u"addr one", address2=u"addr two", postcode=u"12345", city=u"Footown Mäh", country=u"Foocountry", locale=u"en", date_of_birth=date.today(), email_is_confirmed=False, email_confirm_code=u'ABCDEFGBAR', password=u'arandompassword', date_of_submission=date.today(), membership_type=u'normal', member_of_colsoc=True, name_of_colsoc=u"GEMA", num_shares=u'2', ) founding_member3 = C3sMember( # english firstname=u'BBBSomeFirstnäme', lastname=u'YYYSomeLastnäme', email=u'*****@*****.**', address1=u"addr one", address2=u"addr two", postcode=u"12345", city=u"Footown Mäh", country=u"Foocountry", locale=u"en", date_of_birth=date.today(), email_is_confirmed=False, email_confirm_code=u'ABCBARdungHH_', password=u'anotherrandompassword', date_of_submission=date.today(), membership_type=u'normal', member_of_colsoc=True, name_of_colsoc=u"GEMA", num_shares=u'2', ) member4_lost = C3sMember( firstname=u'Resigned', lastname=u'Smith', email=u'*****@*****.**', address1=u"addr one", address2=u"addr two", postcode=u"12345", city=u"Footown Mäh", country=u"Foocountry", locale=u"en", date_of_birth=date(1980, 1, 2), email_is_confirmed=False, email_confirm_code=u'RESIGNEDSMITH', password=u'arandompassword', date_of_submission=date.today() - timedelta(days=370), membership_type=u'normal', member_of_colsoc=True, name_of_colsoc=u"GEMA", num_shares=u'2', ) DBSession.add(shares1_m1) DBSession.add(shares2_m1) DBSession.add(member1) DBSession.add(member2) DBSession.add(founding_member3) DBSession.add(member4_lost) app = main({}, **my_settings) self.testapp = TestApp(app)