Esempio n. 1
0
def main():
    contract = Contract(ProviderOne())
    cost_providerone = Contract(ProviderOne()).provider
    cost_providertwo = Contract(ProviderTwo()).provider
    cost_providerthree = Contract(ProviderThree()).provider
    contract.number = 13456
    assert cost_providerone == 10.00
    assert cost_providertwo == 5.00
    assert cost_providerthree == 7.0
    bench1 = BenchMark('bench1')
    bench2 = BenchMark('bench2')
    print(bench1)
    print(bench2)
def export2json(data):
    """Export to json file
    
    Args:
        :param data(list): data list to be exported.
        
    Returns: 
    int.  The return code::

             0 -- Success!
    """
    bm = BenchMark()
    bm.toggleOn('Dumping to json [ ]')
    with open('data.json', 'w') as outfile:
        json.dump(data, outfile, indent=4, ensure_ascii=False)
        bm.toggleOff('\bOK] - saved to data.json')
    return 0
def parse_xml(file_name, size=0, method="json"):
    """Parse single XML file into the separated XML instances.
    
    Args:
        :param file_name(str): Name of file within same level as root.
        :param size(int): Number of XML instances within XML file to be read.
        :param method(str): Export method(Default:Json).
    
    Returns: 
    int.  The return code::

             0 -- Success!
    """
    # Set initial values
    count = 0
    results = []
    # add benchmark
    bm = BenchMark()
    global MAX_NUMBER_OF_PATENTS
    # create an XML Reader
    parser = xml.sax.make_parser()
    # turn off namespaces
    parser.setFeature(xml.sax.handler.feature_namespaces, 0)
    # turn off validation for DTD
    parser.setFeature(xml.sax.handler.feature_external_ges, False)
    # override the default Context Handler
    xml_patent_handler = PatentHandler()
    parser.setContentHandler(xml_patent_handler)
    try:
        with open(file_name) as citation:
            bm.toggleOn('Start processing [ ]')
            for xml_part in xml_documents(citation):
                # Cast string back to file-like object to parse
                parser.parse(cStringIO.StringIO(xml_part))
                results.append(
                    copy.deepcopy(xml_patent_handler.serialization()))
                count = count + 1
                if not MAX_NUMBER_OF_PATENTS:
                    if count == int(size):
                        break
                # Clean up stack after processing one xml paragraph
                xml_patent_handler.reset()
                bm.add(0)

        bm.toggleOff(' \bOK] - ' + str(count) + ' patents ')
        if method == "json":
            export2json(results)
        return 0

    except IOError as e:
        raise e
Esempio n. 4
0
def _a_star_search(initial: Board, depth, admissable=False):
    """
    Breath First Search algorithm. Also shows steps, new states and total states.
    """
    Car.boardWidth = initial.board_width
    Car.boardHeight = initial.board_height
    Board.a_star_depth = depth
    hash_table.states_checked_hash_table = {}
    queue = {}
    star_value = initial.a_star_count(admissable)
    queue[star_value] = [initial]
    print(initial)

    while True:
        best_boards = find_best_boards(queue)
        for best_board in best_boards:
            next_boards = best_board.possible_next_boards()
            for board in next_boards:
                value = board.a_star_count(admissable)
                if value not in queue:
                    queue[value] = [board]
                else:
                    queue[value].append(board)

        BenchMark.steps_made += 1
        print("")
        BenchMark.log_steps_made()
        BenchMark.log_time()
        BenchMark.log_states_count()
Esempio n. 5
0
def a_star_search(initial: Board, depth, admissable=False):
    BenchMark.start_the_time()
    try:
        _a_star_search(initial, depth, admissable)
    except Win:
        BenchMark.log_time()
        BenchMark.log_states_count()
        exit(0)
def parse_xml(file_name, size = 0, method = "json"):
    """Parse single XML file into the separated XML instances.
    
    Args:
        :param file_name(str): Name of file within same level as root.
        :param size(int): Number of XML instances within XML file to be read.
        :param method(str): Export method(Default:Json).
    
    Returns: 
    int.  The return code::

             0 -- Success!
    """
    # Set initial values
    count = 0
    results = []
    # add benchmark
    bm = BenchMark()
    global MAX_NUMBER_OF_PATENTS  
    # create an XML Reader
    parser = xml.sax.make_parser()
    # turn off namespaces
    parser.setFeature(xml.sax.handler.feature_namespaces, 0)
    # turn off validation for DTD
    parser.setFeature(xml.sax.handler.feature_external_ges, False)
    # override the default Context Handler
    xml_patent_handler = PatentHandler()
    parser.setContentHandler(xml_patent_handler)
    try:
        with open(file_name) as citation:
            bm.toggleOn('Start processing [ ]')
            for xml_part in xml_documents(citation):
                # Cast string back to file-like object to parse
                parser.parse(cStringIO.StringIO(xml_part))
                results.append(copy.deepcopy(xml_patent_handler.serialization()))   
                count = count+1
                if not MAX_NUMBER_OF_PATENTS:
                    if count == int(size):
                        break  
                # Clean up stack after processing one xml paragraph
                xml_patent_handler.reset()
                bm.add(0)
         
        bm.toggleOff(' \bOK] - '+ str(count) + ' patents ')
        if method == "json":
            export2json(results)
        return 0
                       
    except IOError as e:
        raise e
def export2json(data):
    """Export to json file
    
    Args:
        :param data(list): data list to be exported.
        
    Returns: 
    int.  The return code::

             0 -- Success!
    """
    bm = BenchMark()
    bm.toggleOn('Dumping to json [ ]')
    with open('data.json', 'w') as outfile:
        json.dump(data, outfile, indent=4, ensure_ascii=False)
        bm.toggleOff('\bOK] - saved to data.json')
    return 0
Esempio n. 8
0
def breath_search(initial: Board, total_time: int):
    """
    Breath First Search algorithm. Also shows steps, new states and total states.
    """
    hash_table.states_checked_hash_table = {}
    BenchMark.start_the_time()
    Car.boardWidth = initial.board_width
    Car.boardHeight = initial.board_height
    # initial board (stage 0)
    path = []
    path.append([initial])

    hash_table.states_checked_hash_table[hash(initial)] = [initial]

    print("initial state: ")
    print(initial)

    while True:
        nextPath = []
        for board in path[-1]:
            try:
                nextPath.extend(board.possible_next_boards())
            except Win:
                BenchMark.states_count = countPath(path)
                BenchMark.log_steps_made()
                BenchMark.log_time()
                BenchMark.log_states_count()
                return
                # exit(0)

        path.append(nextPath)

        BenchMark.states_count = countPath(path)
        BenchMark.steps_made += 1
        print("")
        BenchMark.log_steps_made()
        BenchMark.log_time()
        BenchMark.log_states_count()

        if len(nextPath) == 0:
            print("States space is explored, no solution found...")
            print("Try freezing less cars.")
            return
        print(time.time() - BenchMark.start_time)
        if (time.time() - BenchMark.start_time) > total_time:
            print("This game is too hard for me! Aborting ....")
            return
def breath_search(initial: Board, total_time: int):
    """
    Breath First Search algorithm. Also shows steps, new states and total states.
    """
    hash_table.states_checked_hash_table = {}
    BenchMark.start_the_time()
    Car.boardWidth = initial.board_width
    Car.boardHeight = initial.board_height
    # initial board (stage 0)
    path = []
    path.append([initial])

    hash_table.states_checked_hash_table[hash(initial)] = [initial]

    print("initial state: ")
    print(initial)

    while True:
        nextPath = []
        for board in path[-1]:
            try:
                nextPath.extend(board.possible_next_boards())
            except Win:
                BenchMark.states_count = countPath(path)
                BenchMark.log_steps_made()
                BenchMark.log_time()
                BenchMark.log_states_count()
                return
                # exit(0)


        path.append(nextPath)

        BenchMark.states_count = countPath(path)
        BenchMark.steps_made += 1
        print("")
        BenchMark.log_steps_made()
        BenchMark.log_time()
        BenchMark.log_states_count()


        if len(nextPath) == 0:
            print("States space is explored, no solution found...")
            print("Try freezing less cars.")
            return
        print(time.time() - BenchMark.start_time)
        if (time.time() - BenchMark.start_time) > total_time:
            print("This game is too hard for me! Aborting ....")
            return