Example #1
0
  def test_merge_csvs_success(self):
    """Tests we can successfully merge 2 csv files"""
    # make 2 temp csv files so we have something to combine
    files_to_open_list = []
    for i in range(2):
      headings_list = ['Heading1', 'Heading2', 'Heading3', 'Heading4']
      files_to_open_list.append('%s/csv%s.csv' % (self.temp_dir, i))
      with open('%s/csv%s.csv' % (self.temp_dir, i), 'w') as f:
        csv_writer = writer(f)
        csv_writer.writerow(headings_list)
        csv_writer.writerow([1, 2, 3, 4])
        csv_writer.writerow([1, 2, 3, 4])
 
    #import pdb; pdb.set_trace()
    merge_csvs(files_to_open_list)
    # open the outputted csv file and make sure it has the right headings
    f = open('combined_%s.csv' % (date.today()), 'r')
    dict_reader = DictReader(f)
    self.assertEqual(len(dict_reader.fieldnames), 4)
    lines_list = [line for line in dict_reader]
    self.assertEqual(len(lines_list), 4)
    self.assertTrue(int(lines_list[0]['Heading1']) < int(lines_list[0]['Heading2']))
Example #2
0
 def merge_files_in_directory(self):
   """Merges all csv files in the specified directory"""
   if self.directory:
     input_list = [filename for filename in glob.glob(os.path.join(self.directory, '*.csv'))]
     merge_csvs(input_list, self.directory)