示例#1
0
def fill_submits(sqlite_cursor, base_dir, origin, mysql_config):
    if '' in mysql_config.values():
        logging.error('MySQL parameters are not specified')
        exit()
    logging.info('Now connecting to MySQL')
    from mysql_connector import MySQLConnector
    mysql_connector = MySQLConnector()
    mysql_connector.create_connection(mysql_config)
    logging.info('Connected to MySQL database')
    ej_cursor = mysql_connector.get_cursor()
    logging.info("Filling database from XML's and MySQL database")
    fill_from_xml(sqlite_cursor, ej_cursor, base_dir, origin)
    mysql_connector.close()
示例#2
0
 def test_fill_from_xml(self, er, mc, sw, pr):
     walker = MagicMock(walk=MagicMock(return_value=[10, 20]))
     er.return_value = MagicMock(walk=MagicMock(return_value=[(1, 'a'), (2, 'b')]))
     mc.return_value = MagicMock(walk=MagicMock(return_value=[(1, 'a'), (2, 'b')]))
     sw.return_value = walker
     fill = Mock()
     fill_database.DBSubmitsFiller = Mock(return_value=fill)
     fill_from_xml('sqlite', 'ejudge', 'dir', 'origin')
     sw.assert_called_once_with('ejudge')
     self.assertEqual(fill_database.DBSubmitsFiller.mock_calls, [call('sqlite')])
     good = ("[call(10, 'origin'),\n call(20, 'origin'),\n call(10, 'origin'),\n "
             "call(20, 'origin'),\n call(10, 'origin'),\n call(20, 'origin'),\n "
             "call(10, 'origin'),\n call(20, 'origin')]")
     self.assertEqual(str(fill.fill_db_from_submit.call_args_list), good)