class TestReferenceFormatter(unittest.TestCase):
    def setUp(self):
        self.ref = Reference()
        self.ref.set_field('reference_id', 'Lmadsen99')
        self.ref.set_field('author', [{
            'first_name': 'Lars',
            'last_name': 'Madsen',
            'middle_name': 'Lithen'
        }])
        self.ref.set_field('title', 'Some article title')
        self.ref.set_field('pages', '133--144')
        self.ref.set_field('journal', 'Some journal')
        self.ref.set_field('year', '1999')

        self.ref_formatter = ReferenceFormatter()
        self.format_generator = BibtexGenerator()

    def tearDown(self):
        pass

    def test_formatter(self):
        self.ref_formatter.format_reference(self.ref, self.format_generator)
        entry = self.ref.get_entry()
        self.failUnless(
            entry == ('@article{Lmadsen99,' + os.linesep +
                      'title = {Some article title},' + os.linesep +
                      'author = {Madsen, Lithen, Lars},' + os.linesep +
                      'year = 1999,' + os.linesep +
                      'journal = {Some journal},' + os.linesep +
                      'pages = {133--144}' + os.linesep + '}' + os.linesep))

        self.failUnless(self.ref.format == self.format_generator.format)
    def setUp(self):
        self.ref = Reference()
        self.ref.set_field('reference_id', 'Lmadsen99')
        self.ref.set_field('author', [{
            'first_name': 'Lars',
            'last_name': 'Madsen',
            'middle_name': 'Lithen'
        }])
        self.ref.set_field('title', 'Some article title')
        self.ref.set_field('pages', '133--144')
        self.ref.set_field('journal', 'Some journal')
        self.ref.set_field('year', '1999')

        self.ref_formatter = ReferenceFormatter()
        self.format_generator = BibtexGenerator()
Ejemplo n.º 3
0
 def _format_reference(self, reference):
     """
     Formats a reference with the target format.
     """
     if reference.format == self.format:
         return
     
     # Create a formatter and a generator
     formatter = ReferenceFormatter()
     try:
         generator = self.util_factory.create_generator(self.format)
     except UtilCreationError as e:
         log.error('Could not create a formatter for %s: %s' % #@UndefinedVariable
                   (self.format, e.args))
         return
     
     formatter.format_reference(reference, generator)
Ejemplo n.º 4
0
    def _format_reference(self, reference):
        """
        Formats a reference with the target format.
        """
        if reference.format == self.format:
            return

        # Create a formatter and a generator
        formatter = ReferenceFormatter()
        try:
            generator = self.util_factory.create_generator(self.format)
        except UtilCreationError as e:
            log.error('Could not create a formatter for %s: %s'
                      %  #@UndefinedVariable
                      (self.format, e.args))
            return

        formatter.format_reference(reference, generator)
Ejemplo n.º 5
0
 def format_reference(self, reference_id):
     log.debug('Retrieving reference from the database') #@UndefinedVariable
     reference = self.reference_gw.find_reference_by_id(reference_id)
     if not reference:
         log.error('Reference with id %d could not be retrieved'  #@UndefinedVariable
                   % reference_id)
         return None
     
     formatter = ReferenceFormatter()
     try:
         generator = self.util_factory.create_generator(self.format)
     except UtilCreationError as e:
         log.error('Could not create a formatter for %s: %s' % #@UndefinedVariable
                   (self.format, e.args))
         return None
     
     log.debug('Starting to format') #@UndefinedVariable
     formatter.format_reference(reference, generator)
     
     return reference.entry
Ejemplo n.º 6
0
    def format_reference(self, reference_id):
        log.debug(
            'Retrieving reference from the database')  #@UndefinedVariable
        reference = self.reference_gw.find_reference_by_id(reference_id)
        if not reference:
            log.error(
                'Reference with id %d could not be retrieved'  #@UndefinedVariable
                % reference_id)
            return None

        formatter = ReferenceFormatter()
        try:
            generator = self.util_factory.create_generator(self.format)
        except UtilCreationError as e:
            log.error('Could not create a formatter for %s: %s'
                      %  #@UndefinedVariable
                      (self.format, e.args))
            return None

        log.debug('Starting to format')  #@UndefinedVariable
        formatter.format_reference(reference, generator)

        return reference.entry