Ejemplo n.º 1
0
def test_get_pages_for_function():
    """
    Test discerner.analyze.get_pages with a function
    """
    args = Namespace(pages=get_financial_pages)
    pages = get_pages(args)
    eq_(pages, get_financial_pages())
Ejemplo n.º 2
0
def test_get_pages_for_list():
    """
    Test discerner.analyze.get_pages with a list
    """
    args = Namespace(pages=["MSFT:Microsoft", "AAPL:Apple_Inc"])
    pages = get_pages(args)
    expected = {"MSFT": "Microsoft", "AAPL": "Apple_Inc"}
    for symbol in pages:
        eq_(expected[symbol], pages[symbol])
Ejemplo n.º 3
0
def analyze_pages(func, args):
    """
    Base function for analyzing wiki pages
    """
    cruncher.load_r_funcs()
    pages = cruncher.get_pages(args)
    mapping = {
        "RANDOM": lambda *args: (None, None),
        "RECENT": analyze_page_view_data, 
        "HISTORICAL": analyze_page_view_data
    }

    for key, page in pages.iteritems():
        logger.info("Analyzing for symbol: {}, page: {}".format(key, page))
        outliers, quantile = mapping[args.data_type](args, key, page)
        func(args, key, outliers, quantile)

    perform_analysis(args)
    perform_final_action(args)