Example #1
0
 def set_up(self):
     Session.remove()
     EntityTestCase.set_up(self)
     local_settings = self.config.get_settings()
     tractor_config_file = local_settings['tractor_config_file']
     tractor_api = make_api_from_config(tractor_config_file)
     self.config.registry.registerUtility(tractor_api, ITractor) # pylint: disable=E1103
Example #2
0
 def __setup_thelma(self, ini_file):
     here_dir = os.getcwd()
     config_uri = 'config:%s' % ini_file
     self.logging_file_config(ini_file) # pylint: disable=E1101
     settings = appconfig(config_uri, 'thelma', relative_to=here_dir)
     reg = Registry('thelma')
     # Some tools need to resolve URLs, so we need to set up a request
     # and a service.
     url = 'http://0.0.0.0:6543'
     req = DummyRequest(application_url=url,
                        host_url=url,
                        path_url=url,
                        url=url,
                        registry=reg)
     config = create_config(settings, registry=reg)
     config.setup_registry(settings=settings)
     config.begin(request=req)
     config.load_zcml('configure.zcml')
     srvc = config.get_registered_utility(IService)
     req.root = srvc
     # Set up repositories.
     repo_mgr = config.get_registered_utility(IRepositoryManager)
     repo_mgr.initialize_all()
     # Start the everest service.
     srvc.start()
     # Configure the session maker.
     session_maker.configure(extension=ZopeTransactionExtension())
     # Set up machinery to enforce a session.flush() just before the
     # report is run so we have proper IDs in the output.
     # FIXME: This should be encapsulated better, perhaps depending on
     #        an option that selects the backend.
     def on_session_begin(session, trx, conn): # pylint: disable=W0613
         self._report_callback = lambda sess = session: sess.flush()
     event.listen(Session, 'after_begin', on_session_begin)
     return config
Example #3
0
 def set_up(self):
     Session.remove()
     EntityTestCase.set_up(self)
     local_settings = self.config.get_settings()
     tractor_config_file = local_settings['tractor_config_file']
     tractor_api = make_api_from_config(tractor_config_file)
     self.config.registry.registerUtility(tractor_api, ITractor)  # pylint: disable=E1103
Example #4
0
 def run(self):
     session = Session()
     query = self.QUERY_TEMPLATE % self.CUSTOM_BITS[self.__molecule_type]
     self.add_info('Running stock query for %s molecules.\n%s' %
                   (self.__molecule_type, query))
     records = session.execute(query)
     column_map = self.COLUMN_MAP.copy()
     if self.__molecule_type == 'SIRNA':
         column_map['library'] = 'Ambion Library'
         column_map['modification'] = 'Modification'
         column_map['silencerselect'] = 'Silencer Select'
     elif self.__molecule_type in ('MIRNA_INHI', 'MIRNA_MIMI'):
         column_map['library'] = 'Library Y/N'
     csv_file = open(self.__output_file, 'w')
     with csv_file:
         csv_writer = DictWriter(csv_file, column_map.values(),
                                 dialect='audit')
         self.add_info('Exporting audit report to file "%s".'
                       % self.__output_file)
         number_records = 0
         csv_writer.writeheader()
         for record in records:
             # Translate keys to labels.
             rec_map = {}
             for key, label in column_map.iteritems():
                 rec_map[label] = record[key]
             csv_writer.writerow(rec_map)
             number_records += 1
         self.add_info('Wrote %d records to file.' % number_records)
Example #5
0
 def teardown_class(cls):
     base_cls = super(RdbTestCaseMixin, cls)
     try:
         base_cls.teardown_class()
     except AttributeError:
         pass
     Session.remove()
     assert not Session.registry.has()
     reset_metadata()
Example #6
0
 def run(self):
     sess = ScopedSessionMaker()
     for bc in self.__barcodes:
         rack = self.__get_rack(bc)
         for src_cnt in itervalues_(rack.container_positions):
             if not src_cnt is None:
                 if not src_cnt.sample is None:
                     sess.delete(src_cnt.sample)
         rack.status = get_item_status_future()
Example #7
0
 def run(self):
     sess = ScopedSessionMaker()
     for bc in self.__barcodes:
         rack = self.__get_rack(bc)
         for src_cnt in itervalues_(rack.container_positions):
             if not src_cnt is None:
                 if not src_cnt.sample is None:
                     sess.delete(src_cnt.sample)
         rack.status = get_item_status_future()
Example #8
0
 def teardown_class(cls):
     base_cls = super(RdbTestCaseMixin, cls)
     try:
         base_cls.teardown_class()
     except AttributeError:
         pass
     Session.remove()
     assert not Session.registry.has()
     reset_metadata()
Example #9
0
 def __exit__(self, ext_type, value, tb):
     # Roll back the outer transaction and close the connection.
     self.__session.close()
     self.__transaction.rollback()
     self.__connection.close()
     # Remove the session we created.
     Session.remove()
     # Restore flags.
     Session.configure(autoflush=self.__old_autoflush_flag,
                       bind=get_engine(self.__engine_name))
     self.__repo.join_transaction = self.__old_join_transaction_flag
Example #10
0
 def __exit__(self, ext_type, value, tb):
     # Roll back the outer transaction and close the connection.
     self.__session.close()
     self.__transaction.rollback()
     self.__connection.close()
     # Remove the session we created.
     Session.remove()
     # Restore flags.
     Session.configure(autoflush=self.__old_autoflush_flag,
                       bind=get_engine(self.__engine_name))
     self.__repo.join_transaction = self.__old_join_transaction_flag
Example #11
0
    def __setup_thelma(self, ini_file):
        here_dir = os.getcwd()
        config_uri = 'config:%s' % ini_file
        self.logging_file_config(ini_file)  # pylint: disable=E1101
        settings = appconfig(config_uri, 'thelma', relative_to=here_dir)
        reg = Registry('thelma')
        # Some tools need to resolve URLs, so we need to set up a request
        # and a service.
        url = 'http://0.0.0.0:6543'
        req = DummyRequest(application_url=url,
                           host_url=url,
                           path_url=url,
                           url=url,
                           registry=reg)
        config = create_config(settings, registry=reg)
        config.setup_registry(settings=settings)
        config.begin(request=req)
        config.load_zcml('configure.zcml')
        srvc = config.get_registered_utility(IService)
        req.root = srvc
        # Set up repositories.
        repo_mgr = config.get_registered_utility(IRepositoryManager)
        repo_mgr.initialize_all()
        # Start the everest service.
        srvc.start()
        # Configure the session maker.
        session_maker.configure(extension=ZopeTransactionExtension())

        # Set up machinery to enforce a session.flush() just before the
        # report is run so we have proper IDs in the output.
        # FIXME: This should be encapsulated better, perhaps depending on
        #        an option that selects the backend.
        def on_session_begin(session, trx, conn):  # pylint: disable=W0613
            self._report_callback = lambda sess=session: sess.flush()

        event.listen(Session, 'after_begin', on_session_begin)
        return config
Example #12
0
 def __enter__(self):
     # We set up an outer transaction that allows us to roll back all
     # changes (including commits) the unittest may want to make.
     engine = get_engine(self.__engine_name)
     self.__connection = engine.connect()
     self.__transaction = self.__connection.begin()
     reg = get_current_registry()
     repo_mgr = reg.getUtility(IRepositoryManager)
     self.__repo = repo_mgr.get(self.__engine_name)
     # Configure the autoflush behavior of the session.
     if Session.registry.has():
         self.__old_autoflush_flag = Session.autoflush # pylint:disable=E1101
     else:
         self.__old_autoflush_flag = self.__autoflush
     Session.remove()
     Session.configure(autoflush=self.__autoflush)
     # Create a new session for the tests.
     Session.configure(bind=self.__connection)
     self.__old_join_transaction_flag = self.__repo.join_transaction
     self.__repo.join_transaction = False
     self.__session = self.__repo.session_factory()
     return self.__session
Example #13
0
 def __enter__(self):
     # We set up an outer transaction that allows us to roll back all
     # changes (including commits) the unittest may want to make.
     engine = get_engine(self.__engine_name)
     self.__connection = engine.connect()
     self.__transaction = self.__connection.begin()
     reg = get_current_registry()
     repo_mgr = reg.getUtility(IRepositoryManager)
     self.__repo = repo_mgr.get(self.__engine_name)
     # Configure the autoflush behavior of the session.
     if Session.registry.has():
         self.__old_autoflush_flag = Session.autoflush  # pylint:disable=E1101
     else:
         self.__old_autoflush_flag = self.__autoflush
     Session.remove()
     Session.configure(autoflush=self.__autoflush)
     # Create a new session for the tests.
     Session.configure(bind=self.__connection)
     self.__old_join_transaction_flag = self.__repo.join_transaction
     self.__repo.join_transaction = False
     self.__session = self.__repo.session_factory()
     return self.__session
Example #14
0
 def set_up(self):
     Session.remove()
     ResourceTestCase.set_up(self)
     #
     self.config.testing_securitypolicy("it")
     self._request.environ.update(create_extra_environ())
Example #15
0
 def tear_down():
     Session.remove()
     assert not Session.registry.has()
     reset_metadata()
Example #16
0
 def tear_down(self):
     Session.remove()
     EntityTestCase.tear_down(self)
Example #17
0
 def tear_down():
     Session.remove()
Example #18
0
 def tear_down(self):
     transaction.abort()
     Session.remove()
     FunctionalTestCase.tear_down(self)
Example #19
0
 def tear_down(self):
     Session.remove()
     ResourceTestCase.tear_down(self)
Example #20
0
 def __enter__(self):
     Session.remove()
Example #21
0
 def tear_down(self):
     Session.remove()
     ResourceTestCase.tear_down(self)
Example #22
0
 def tear_down(self):
     super(RdbTestCaseMixin, self).tear_down()
     Session.remove()
Example #23
0
 def tear_down():
     Session.remove()
     assert not Session.registry.has()
     reset_metadata()
Example #24
0
 def tear_down(self):
     super(RdbTestCaseMixin, self).tear_down()
     Session.remove()
Example #25
0
 def tear_down():
     Session.remove()
Example #26
0
 def __exit__(self, ext_type, value, tb):
     Session.remove()
Example #27
0
 def __enter__(self):
     Session.remove()
Example #28
0
 def __exit__(self, ext_type, value, tb):
     Session.remove()
Example #29
0
 def tear_down(self):
     transaction.abort()
     Session.remove()
     FunctionalTestCase.tear_down(self)
Example #30
0
 def __initialize_session(self):
     # Initializes a session for ORM operations.
     self.__session = ScopedSessionMaker()
Example #31
0
 def tear_down(self):
     Session.remove()
     EntityTestCase.tear_down(self)
Example #32
0
 def set_up(self):
     Session.remove()
     ResourceTestCase.set_up(self)
     #
     self.config.testing_securitypolicy("it")
     self._request.environ.update(create_extra_environ())