コード例 #1
0
 def test_write_head_to_file(self):
     col_names = ["order.location", "client.email"]
     Converter.write_head_to_file(col_names, self.head_output_file)
     f = open(self.head_output_file, 'r')
     file_read = f.read()
     result = [file_read]
     expected = ['"order.location","client.email"\n']
     self.assertEqual(result, expected, 'incorrect default data')
コード例 #2
0
 def test_not_extracted_json_col_by_regexp(self):
     converter = Converter()
     default_csv_line = ''
     line_number = -1
     line = 'NULL	Туту ЖД		NULL	2019-06-20 10:25:14'
     result = converter.not_extracted_json_col_by_regexp(
         default_csv_line, line, line_number)
     expected = ''
     self.assertEqual(result, expected, 'incorrect default data')
コード例 #3
0
    def test_merge_flat_dictionary_keys_from_json_column(self):
        df = DataForTests.df_converter
        converter = Converter()
        result = converter.merge_flat_dictionary_keys_from_json_column(
            df, col_name='json')

        expected = ['client.phone', 'order.id', 'client.email']
        self.assertCountEqual(result, expected,
                              r'incorrect update for pattern \\\\ ')
コード例 #4
0
 def test_get_csv_line_from_json(self):
     col_names = ["order.location", "client.email"]
     default_csv_line = ''
     converter = Converter()
     line_number = -1
     result = converter.get_csv_line_from_json(col_names, default_csv_line,
                                               self.json_load, line_number)
     expected = '"","*****@*****.**"'
     self.assertEqual(result, expected, 'incorrect default data')
コード例 #5
0
 def test_not_extracted_json_col_by_regexp_2(self):
     converter = Converter()
     default_csv_line = ''
     line_number = -1
     line = '2333 Туту ЖД {"order":{"id":"111111111"},"client":{"email":"*****@*****.**"}} 2019-06-20 10:25:14'
     result = converter.not_extracted_json_col_by_regexp(
         default_csv_line, line, line_number)
     expected = ''
     self.assertEqual(result, expected, 'incorrect default data')
コード例 #6
0
 def test_get_csv_line_from_json_2(self):
     col_names = ["order.location", "client.phone", "client.email"]
     json_load = '{"client":{"phone": 923143, "email":"*****@*****.**"}}'
     default_csv_line = ''
     converter = Converter()
     line_number = -1
     result = converter.get_csv_line_from_json(col_names, default_csv_line,
                                               json_load, line_number)
     expected = '"","923143","*****@*****.**"'
     self.assertEqual(result, expected, 'incorrect default data')
コード例 #7
0
 def test_write_json_column_to_csv_read_data_from_file(self):
     col_names = ["order.location", "client.email"]
     converter = Converter()
     converter.write_json_column_to_csv_read_data_from_file(
         self.input_file, col_names, self.output_file)
     f = open(self.output_file, 'r')
     file_read = f.read()
     result = [file_read]
     expected = [
         '"order.location","client.email"\n"","*****@*****.**"\n"ЧУП Самелго-Плюс Сак",'
         '"*****@*****.**"\n"",""\n'
     ]
     self.assertEqual(result, expected, 'incorrect default data')
コード例 #8
0
 def test_write_json_column_to_csv(self):
     df = DataForTests.df_converter
     col_name = "json"
     col_names = ['client.phone', 'client.email']
     converter = Converter()
     converter.write_json_column_to_csv(df, col_name, col_names,
                                        self.output_file)
     f = open(self.output_file, 'r')
     file_read = f.read()
     result = [file_read]
     expected = [
         '"client.phone","client.email"\n"923143****","*****@*****.**"\n"","*****@*****.**"\n'
     ]
     self.assertEqual(result, expected, 'incorrect default data')
コード例 #9
0
 def test_convert_one_column_from_json_2(self):
     df = DataForTests.df_converter
     col_json = 'json'
     col_name = 'order.id'
     result = Converter.convert_one_column_from_json(df, col_json, col_name)
     result = result.to_dict()
     expected = {0: '', 1: '111111111'}
     self.assertDictEqual(result, expected, 'incorrect default data')
コード例 #10
0
 def test_get_flat_dictionary(self):
     result = Converter.get_flat_dictionary(self.converted_str)
     expected = {
         'client.phone': '923143****',
         'client.name': 'Наталья Алтынбаева',
         'client.email': '*****@*****.**'
     }
     self.assertEqual(result, expected, 'incorrect default data')
コード例 #11
0
 def test_convert_one_column_from_json(self):
     df = DataForTests.df_converter
     col_json = 'json'
     col_name = 'client.email'
     result = Converter.convert_one_column_from_json(df, col_json, col_name)
     result = result.to_dict()
     expected = {0: '*****@*****.**', 1: '*****@*****.**'}
     self.assertDictEqual(result, expected, 'incorrect default data')
コード例 #12
0
 def test_correct_json_load(self):
     result = Converter.correct_json_load(self.str_adds_quotes)
     expected = '{"is_trailer":"false","user_agent":"Mozilla/5.0 rv:52.0", "has_middle_name ":"true",' \
                '"insurance_selected":"null"}'
     self.assertEqual(result, expected, 'incorrect default data')
コード例 #13
0
 def test_get_default_csv_line(self):
     col_names = ["order.location", "client.email"]
     result = Converter.get_default_csv_line(col_names)
     expected = '"",""'
     self.assertEqual(result, expected, 'incorrect default data')
コード例 #14
0
 def test_update_json_by_pattern_3(self):
     line = r'{"name":"ВАЛЕНТИНА\\\\ МЕНЧИКОВА"}'
     result = Converter.update_json_by_pattern(line)
     expected = '{"name":"ВАЛЕНТИНА  МЕНЧИКОВА"}'
     self.assertEqual(result, expected,
                      r'incorrect update for pattern \\\\ ')
コード例 #15
0
 def test_update_json_by_pattern_2(self):
     line = r'{"name":" ЧУП \\"Самелго-Плюс\\"     Сак"}'
     result = Converter.update_json_by_pattern(line)
     expected = '{"name":" ЧУП Самелго-Плюс     Сак"}'
     self.assertEqual(result, expected,
                      r'incorrect update for pattern \\" ')
コード例 #16
0
 def test_update_json_by_pattern_1(self):
     line = r'{"email": "[email protected]\\n"}'
     result = Converter.update_json_by_pattern(line)
     expected = '{"email": "*****@*****.**"}'
     self.assertEqual(result, expected,
                      r'incorrect update for pattern \\n ')
コード例 #17
0
 def test_empty_get_one_column_from_json(self):
     result = Converter.get_one_column_from_json(self.str_for_converter,
                                                 "notexist.col")
     expected = ''
     self.assertEqual(result, expected, 'incorrect default data')
コード例 #18
0
 def test_get_one_column_from_json(self):
     result = Converter.get_one_column_from_json(self.str_for_converter,
                                                 "client.phone")
     expected = "923143****"
     self.assertEqual(result, expected, 'incorrect default data')
コード例 #19
0
 def test_update_json_by_pattern(self):
     result = Converter.update_json_by_pattern(self.json_load_for_patterns)
     expected = '{"is ":"false","user_agent":"Mo,zilla/5.0 rv:52.0"}'
     self.assertEqual(result, expected, 'incorrect default data')
コード例 #20
0
 def test_is_problem_line(self):
     result = Converter.is_problem_line(self.is_prb_line)
     expected = 1
     self.assertEqual(result, expected, 'incorrect default data')
コード例 #21
0
 def test_is_problem_line_2(self):
     result = Converter.is_problem_line(self.str_adds_quotes)
     expected = 0
     self.assertEqual(result, expected, 'incorrect default data')