class SSBuilderTest( TestCase ): """ Tests functions for building the serials-solutions file. """ def setUp( self ): self.builder = SSBuilder() def test__build_row( self ): """ Checks built row. """ model_data = { 'issn': '0003-4398', 'year_start': 1999, 'year_end': 2007, 'building': 'Rock', 'callnumber': 'DC607.1 .A6', 'title': "Annales du Midi; revue archéologique, historique, et philologique de la France méridionale; sous les auspices de l'Université de Toulouse", 'url': 'https://search.library.brown.edu/catalog/?q=Annales+du+Midi+revue&f%5Bformat%5D%5B%5D=Periodical+Title' } result = self.builder.build_row( model_data ) # populates attribute row_dct self.assertEqual( { 'issn': '0003-4398', 'title': "Annales du Midi; revue archéologique, historique, et philologique de la France méridionale; sous les auspices de l'Université de Toulouse", 'type': 'Journal', 'url': 'https://search.library.brown.edu/catalog/?q=Annales+du+Midi+revue&f%5Bformat%5D%5B%5D=Periodical+Title', 'location': 'Rock - DC607.1 .A6', 'display_location_note': 'Yes', 'year_start': '1999', 'year_end': '2007', }, self.builder.row_dct ) self.assertEqual( [ "Annales du Midi; revue archéologique, historique, et philologique de la France méridionale; sous les auspices de l'Université de Toulouse", 'Journal', 'https://search.library.brown.edu/catalog/?q=Annales+du+Midi+revue&f%5Bformat%5D%5B%5D=Periodical+Title', 'Rock - DC607.1 .A6', 'Yes', '0003-4398', '1999', '2007' ], self.builder.build_row( model_data ) ) def test__save_file( self ): """ Checks file save output of csv-writer. """ lines_lst = [] lines_lst.append( ['bb', 'Chteni︠i︡a', '2', '3', '4', '5', '6', '7'] ) lines_lst.append( ['aa', 'Sravnitelʹnai︠a︡ politika', '2', '3', '4', '5', '6', '7'] ) path = os.environ['RAPID__TEST_TO_SS_FILEPATH'] self.builder.save_file( lines_lst, path ) with open( path, 'r' ) as f: lines = f.readlines() line = lines[0].decode( 'utf-8' ) # ```"aa","Sravnitelʹnai︠a︡ politika","2","3","4","5","6","7"``` (includes \n character at end) # print 'type(line), ```{}```'.format( type(line) ) # print 'line, ```{}```'.format( line ) self.assertEqual( '"aa"', line[0:4] )
def setUp( self ): self.builder = SSBuilder()
def setUp(self): self.builder = SSBuilder()
from django.conf import settings as project_settings from django.contrib.auth import logout from django.core.urlresolvers import reverse from django.http import HttpResponse, HttpResponseRedirect from django.shortcuts import get_object_or_404, render from rapid_app.lib.ss_builder import SSBuilder from rapid_app.lib.viewhelper_processfile import ProcessFileFromRapidHelper from rapid_app.lib.viewhelper_tasks import TasksHelper from rapid_app.lib.viewhelper_updatedb import UpdateTitlesHelper from rapid_app.models import PrintTitleDev log = logging.getLogger(__name__) tasks_hlpr = TasksHelper() process_file_from_rapid_hlper = ProcessFileFromRapidHelper() update_titles_hlpr = UpdateTitlesHelper() builder = SSBuilder() def tasks(request): """ Shows tasks window. """ log.debug('starting tasks') data = tasks_hlpr.make_context(request) response = tasks_hlpr.make_response(request, data) return response def process_file_from_rapid(request): """ Grabs and processes rapid extract file. When done, shows titles admin. """ log.debug('starting processing') data = process_file_from_rapid_hlper.initiate_work(request)
class SSBuilderTest(TestCase): """ Tests functions for building the serials-solutions file. """ def setUp(self): self.builder = SSBuilder() def test__build_row(self): """ Checks built row. """ model_data = { 'issn': '0003-4398', 'year_start': 1999, 'year_end': 2007, 'building': 'Rock', 'callnumber': 'DC607.1 .A6', 'title': "Annales du Midi; revue archéologique, historique, et philologique de la France méridionale; sous les auspices de l'Université de Toulouse", 'url': 'https://search.library.brown.edu/catalog/?q=Annales+du+Midi+revue&f%5Bformat%5D%5B%5D=Periodical+Title' } result = self.builder.build_row( model_data) # populates attribute row_dct self.assertEqual( { 'issn': '0003-4398', 'title': "Annales du Midi; revue archéologique, historique, et philologique de la France méridionale; sous les auspices de l'Université de Toulouse", 'type': 'Journal', 'url': 'https://search.library.brown.edu/catalog/?q=Annales+du+Midi+revue&f%5Bformat%5D%5B%5D=Periodical+Title', 'location': 'Rock - DC607.1 .A6', 'display_location_note': 'Yes', 'year_start': '1999', 'year_end': '2007', }, self.builder.row_dct) self.assertEqual([ "Annales du Midi; revue archéologique, historique, et philologique de la France méridionale; sous les auspices de l'Université de Toulouse", 'Journal', 'https://search.library.brown.edu/catalog/?q=Annales+du+Midi+revue&f%5Bformat%5D%5B%5D=Periodical+Title', 'Rock - DC607.1 .A6', 'Yes', '0003-4398', '1999', '2007' ], self.builder.build_row(model_data)) def test__save_file(self): """ Checks file save output of csv-writer. """ lines_lst = [] lines_lst.append(['bb', 'Chteni︠i︡a', '2', '3', '4', '5', '6', '7']) lines_lst.append( ['aa', 'Sravnitelʹnai︠a︡ politika', '2', '3', '4', '5', '6', '7']) path = os.environ['RAPID__TEST_TO_SS_FILEPATH'] self.builder.save_file(lines_lst, path) with open(path, 'r') as f: lines = f.readlines() line = lines[0].decode( 'utf-8' ) # ```"aa","Sravnitelʹnai︠a︡ politika","2","3","4","5","6","7"``` (includes \n character at end) # print 'type(line), ```{}```'.format( type(line) ) # print 'line, ```{}```'.format( line ) self.assertEqual('"aa"', line[0:4])