Esempio n. 1
0
 def test_get_stocks(self):
     """
     Test main call that gets info on stocks by their symbols
     """
     symbols = ["YHOO", "AAPL", "fakeStock", "MSFT"]
     stocks = get_info(symbols)
     self.assertEqual(len(stocks), 3)
     self.assertEqual(stocks[0].StockExchange, "NMS")
     # self.assertEqual(stocks[2].Symbol, 'MSFT')
     cp = stocks[0].recent_close_prices
     # Assuming yahoo does become terrible or super successful...
     if len(cp) < 3 or cp[2] < 0.05 or cp[2] > 9999.5:
         self.fail("Wrong close prices")
Esempio n. 2
0
    def get(self):
        data = self.request.get('symbols').split(',')
        query = [str(word) for word in data]

        stocks = get_info(query)
        symbols = [s.symbol for s in stocks]
        matrix = get_correlation_matrix(stocks).tolist()

        self.response.headers['Content-Type'] = 'application/json'
        response = {
            'query': query,
            'symbols': symbols,
            'stocks': [s.__dict__ for s in stocks],
            'matrix': matrix
        }
        self.response.out.write(json.dumps(response))
Esempio n. 3
0
 def test_get_zero_stocks(self):
     """
     Test call to getting zero stocks
     """
     stocks = get_info([])
     self.assertEqual(stocks, [])