def setUp(self): self.config = testing.setUp() self.config.include('pyramid_mailer.testing') self.config.registry.settings['c3smembership.url'] = 'http://foo.com' self.config.registry.settings['c3smembership.mailaddr'] = '*****@*****.**' DBSession.remove() self.session = _initTestingDB()
def setUp(self): self.config = testing.setUp() self.config.include('pyramid_mailer.testing') self.config.include('pyramid_chameleon') DBSession.remove() self.session = _initTestingDB() self.config.registry.settings['testing.mail_to_console'] = 'no'
def tearDown(self): """ Clean up database """ DBSession().close() DBSession.remove() testing.tearDown()
def setUp(self): self.config = testing.setUp() self.config.set_session_factory(session_factory_from_settings({})) self.config.include('pyramid_mailer.testing') self.config.include('pyramid_chameleon') self.config.include('c3smembership.presentation.view_processing') self.error_handler = TestErrorHandler() self.config.set_colander_error_handler(self.error_handler) DBSession.remove() self.db_session = init_testing_db() self.config.registry.settings['testing.mail_to_console'] = 'no' self.config.registry.settings['c3smembership.notification_sender'] = \ '*****@*****.**' self.config.add_route('join', '/') self.config.add_route('detail', '/detail') self.config.add_route('dashboard', '/') self.config.add_route('certificate_pdf', '/') self.config.add_route( 'certificate_pdf_staff', '/certificate_pdf_staff/{member_id}') self.config.add_route( 'membership_listing_backend', '/membership_listing_backend') self.config.add_route( 'certificate_mail', '/cert_mail/{member_id}') self.config.scan( 'c3smembership.presentation.views.membership_certificate') self.testapp = TestApp(self.config.make_wsgi_app())
def tearDown(self): """ clean up after a test case """ DBSession.close() DBSession.remove() testing.tearDown()
def tearDown(self): """ Tear down all test cases """ DBSession.close() DBSession.remove() testing.tearDown()
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 test_usage(self): from c3smembership.scripts.initialize_db import usage argv = ['initialize_c3sMembership_db'] try: usage(argv) except: pass DBSession.close() DBSession.remove()
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 tearDown(self): """ Tear down the set setup """ # pylint: disable=no-member DBSession.close() # pylint: disable=no-member DBSession.remove() GeneralAssemblyRepository.datetime = datetime
def tearDownClass(cls): """ Remove the database The database must be set up each time a test case is initialized in order to have clean data. """ db_session = cls.get_db_session() db_session.close() DBSession.remove()
def setUp(self): self.config = testing.setUp() self.config.include('pyramid_mailer.testing') self.config.registry.settings[ 'c3smembership.url'] = 'https://yes.c3s.cc' self.config.registry.settings['c3smembership.mailaddr'] = '*****@*****.**' self.config.registry.settings['testing.mail_to_console'] = 'false' DBSession.remove() self.session = _initTestingDB()
def test_main_correct(self): """ test the initialize_c3sMembership_db script with correct arguments """ from c3smembership.scripts.initialize_db import main filename = 'webdrivertest.db' if os.path.isfile(filename): os.unlink(filename) argv = ['initialize_c3sMembership_db', 'webdrivertest.ini'] main(argv) DBSession.close() DBSession.remove()
def setUp(self): self.config = testing.setUp() self.config.include('pyramid_mailer.testing') self.config.registry.settings[ 'c3smembership.url'] = 'https://yes.c3s.cc' self.config.registry.settings['c3smembership.notification_sender'] = \ '*****@*****.**' self.config.registry.settings['c3smembership.status_receiver'] = \ '*****@*****.**' self.config.registry.settings['testing.mail_to_console'] = 'false' self.config.registry.get_mailer = get_mailer DBSession.remove() self.session = DBSession
def setUp(self): self.config = testing.setUp() self.config.include('pyramid_mailer.testing') self.config.include('c3smembership.presentation.pagination') self.config.registry.settings['testing.mail_to_console'] = 'false' self.config.add_route('dashboard', '/') def dashboard_content_size_provider(filtering): return 0 self.config.make_pagination_route( 'dashboard', 'id', dashboard_content_size_provider) DBSession.remove() self.session = _initTestingDB()
def setUp(self): """ set up everything for a test case """ self.config = testing.setUp() self.config.include('pyramid_mailer.testing') try: DBSession.close() DBSession.remove() # print("removing old DBSession ==============================") except: # print("no DBSession to remove ==============================") pass from sqlalchemy import create_engine # engine = create_engine('sqlite:///test_utils.db') engine = create_engine('sqlite:///:memory:') DBSession.configure(bind=engine) self.session = DBSession # () 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'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'23', ) DBSession.add(member1) DBSession.flush()
def test_main_false(self): """ test the initialize_c3sMembership_db script with faulty arguments get it wrong: wrong arguments: * must be at least one argument * must be name of an existing file this gets coverage for the "usage" function in scripts/initialize_db.py """ from c3smembership.scripts.initialize_db import main argv = [] with self.assertRaises(IndexError): main(argv) argv = ['notExisting.ini', ] with self.assertRaises(SystemExit) as context: main(argv) self.assertEqual(context.exception.code, 1) DBSession.close() DBSession.remove()
def setUp(self): """ Set up database and engine """ self.config = testing.setUp() self.config.include('pyramid_mailer.testing') DBSession().close() DBSession.remove() from sqlalchemy import create_engine engine = create_engine('sqlite:///:memory:') DBSession.configure(bind=engine) self.session = DBSession Base.metadata.create_all(engine) with transaction.manager: # German member member1 = C3sMember( 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'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'23', ) db_session = DBSession() db_session.add(member1) db_session.flush()
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 setUp(self): self.config = testing.setUp() # import pdb; pdb.set_trace() # shutil.move('c3sMembership.db', 'c3sMembership.db.old') DBSession.remove() self.session = _initTestingDB()
def tearDown(self): # pylint: disable=no-member DBSession.close() # pylint: disable=no-member DBSession.remove()
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 tearDown(self): DBSession.close() DBSession.remove() # os.remove('test_import.db') testing.tearDown()
def shutdown(self): if isinstance(self.srv, StopableWSGIServer): self.srv.shutdown() DBSession.close() DBSession.remove()
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 tearDown(self): testing.tearDown() # pylint: disable=no-member DBSession.close() DBSession.remove()
def tearDown(self): DBSession.remove() testing.tearDown()
def test_init(self): from c3smembership.scripts.initialize_db import init init() DBSession.close() DBSession.remove()
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 tearDown(self): DBSession.close() DBSession.remove() # os.remove('test_webtest_accountants.db') testing.tearDown()
def tearDown(self): testing.tearDown() DBSession.close() DBSession.remove()
def tearDown(self): DBSession.remove() # shutil.rm('c3sMembership.db') 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)