fixes for unit tests, back to 50/51 passing.

This commit is contained in:
fawce
2012-08-07 14:42:43 -04:00
parent 804bcb4e0c
commit aeb50da170
12 changed files with 56 additions and 58 deletions
-2
View File
@@ -26,9 +26,7 @@ class ExceptionTestCase(TestCase):
def setUp(self):
self.zipline_test_config = {
'allocator' : allocator,
'sid' : 133,
'devel' : False,
'results_socket_uri' : allocator.lease(1)[0],
'simulation_style' : SIMULATION_STYLE.FIXED_SLIPPAGE
}
+8 -17
View File
@@ -11,7 +11,6 @@ from collections import defaultdict
from nose.tools import timed
import zipline.utils.factory as factory
import zipline.protocol as zp
from zipline.test_algorithms import TestAlgorithm
from zipline.finance.trading import TradingEnvironment
@@ -19,10 +18,9 @@ from zipline.core.devsimulator import AddressAllocator
from zipline.lines import SimulatedTrading
from zipline.finance.performance import PerformanceTracker
from zipline.utils.protocol_utils import ndict
from zipline.finance.trading import TransactionSimulator, SIMULATION_STYLE
from zipline.finance.trading import TransactionSimulator
from zipline.utils.test_utils import \
drain_zipline, \
check, \
setup_logger, \
teardown_logger,\
assert_single_position
@@ -39,10 +37,8 @@ class FinanceTestCase(TestCase):
def setUp(self):
self.zipline_test_config = {
'allocator' : allocator,
'sid' : 133,
#'devel' : True,
'results_socket' : allocator.lease(1)[0]
'sid' : 133,
'results_socket_uri' : allocator.lease(1)[0]
}
self.ctx = zmq.Context()
@@ -60,7 +56,7 @@ class FinanceTestCase(TestCase):
trading_environment
)
prev = None
for trade in trade_source.event_list:
for trade in trade_source:
if prev:
self.assertTrue(trade.dt > prev.dt)
prev = trade
@@ -123,7 +119,6 @@ class FinanceTestCase(TestCase):
self.zipline_test_config['order_count'] = 100
self.zipline_test_config['trade_count'] = 200
zipline = SimulatedTrading.create_test_zipline(**self.zipline_test_config)
assert_single_position(self, zipline)
#@timed(DEFAULT_TIMEOUT)
@@ -148,9 +143,6 @@ class FinanceTestCase(TestCase):
)
output, transaction_count = drain_zipline(self, zipline)
self.assertTrue(zipline.sim.ready())
self.assertFalse(zipline.sim.exception)
#check that the algorithm received no events
self.assertEqual(
0,
@@ -301,12 +293,12 @@ class FinanceTestCase(TestCase):
# if present, expect transaction amounts to match orders exactly.
complete_fill = params.get('complete_fill')
sid = 1
trading_environment = factory.create_trading_environment()
trade_sim = TransactionSimulator()
trade_sim = TransactionSimulator([sid])
price = [10.1] * trade_count
volume = [100] * trade_count
start_date = trading_environment.first_open
sid = 1
generated_trades = factory.create_trade_history(
sid,
@@ -330,7 +322,7 @@ class FinanceTestCase(TestCase):
'dt' : order_date
})
trade_sim.add_open_order(order)
trade_sim.place_order(order)
order_date = order_date + order_interval
# move after market orders to just after market next
@@ -353,14 +345,13 @@ class FinanceTestCase(TestCase):
self.assertEqual(order.amount, order_amount * alternator**i)
tracker = PerformanceTracker(trading_environment)
tracker = PerformanceTracker(trading_environment, [sid])
# this approximates the loop inside TradingSimulationClient
transactions = []
for trade in generated_trades:
if trade_delay:
trade.dt = trade.dt + trade_delay
txn = trade_sim.apply_trade_to_open_orders(trade)
if txn:
transactions.append(txn)
+4 -2
View File
@@ -14,13 +14,15 @@ class TestMonitor(TestCase):
def test_init(self):
pub_socket = 'tcp://127.0.0.1:5000'
route_socket = 'tcp://127.0.0.1:5001'
exception_socket = 'tcp://127.0.0.1:5002'
mon = Monitor(pub_socket, route_socket)
mon = Monitor(pub_socket, route_socket, exception_socket)
mon.manage([])
def test_init_topology(self):
pub_socket = 'tcp://127.0.0.1:5000'
route_socket = 'tcp://127.0.0.1:5001'
exception_socket = 'tcp://127.0.0.1:5002'
mon = Monitor(pub_socket, route_socket, )
mon = Monitor(pub_socket, route_socket, exception_socket)
mon.manage([ 'a', 'b', 'c', 'd' ])
+4 -1
View File
@@ -543,7 +543,10 @@ shares in position"
self.trading_environment.capital_base = 1000.0
self.trading_environment.frame_index = ['sid', 'volume', 'dt', \
'price', 'changed']
perf_tracker = perf.PerformanceTracker(self.trading_environment)
perf_tracker = perf.PerformanceTracker(
self.trading_environment,
[sid, sid2]
)
for event in trade_history:
#create a transaction for all but
-4
View File
@@ -1,8 +1,6 @@
"""
Test the FRAME/UNFRAME functions in the sequence expected from ziplines.
"""
import pytz
from unittest2 import TestCase
from datetime import datetime, timedelta
from collections import defaultdict
@@ -10,10 +8,8 @@ from collections import defaultdict
from nose.tools import timed
import zipline.utils.factory as factory
from zipline.utils import logger
import zipline.protocol as zp
from zipline.finance.sources import SpecificEquityTrades
DEFAULT_TIMEOUT = 5 # seconds
+10 -11
View File
@@ -37,7 +37,7 @@ class ZiplineWithTransformsTestCase(TestCase):
zipline = SimulatedTrading.create_test_zipline(
**self.zipline_test_config
)
vwap = VWAPTransform("vwap_10", daycount=10)
vwap = VWAP("vwap_10", daycount=10)
zipline.add_transform(vwap)
zipline.simulate(blocking=True)
@@ -49,7 +49,7 @@ class FinanceTransformsTestCase(TestCase):
def setUp(self):
self.trading_environment = factory.create_trading_environment()
setup_logger(self, '/var/log/qexec/qexec.log')
setup_logger(self)
trade_history = factory.create_trade_history(
133,
@@ -74,11 +74,11 @@ class FinanceTransformsTestCase(TestCase):
((10.0 * 100) + (10.0 * 100)) / (200.0),
((10.0 * 100) + (10.0 * 100) + (11.0 * 100)) / (300.0),
# First event should get droppped here.
((10.0 * 100) + (11.0 * 100) + (11.0 * 300)) / (500.0)]
((10.0 * 100) + (11.0 * 100) + (11.0 * 300)) / (500.0)]
# Output should match the expected.
assert tnfm_vals == expected
def test_returns(self):
trade_history = factory.create_trade_history(
@@ -98,13 +98,13 @@ class FinanceTransformsTestCase(TestCase):
def test_moving_average(self):
mavg = StatefulTransform(
MovingAverage,
timedelta(days = 2),
MovingAverage,
timedelta(days = 2),
['price', 'volume']
)
)
transformed = list(mavg.transform(self.source))
# Output values.
tnfm_prices = [message.tnfm_value.price for message in transformed]
@@ -120,7 +120,6 @@ class FinanceTransformsTestCase(TestCase):
((100.0 + 100.0 + 100.0) / 3.0),
# First event should get dropped here.
((100.0 + 100.0 + 300.0) / 3.0)]
assert tnfm_prices == expected_prices
assert tnfm_volumes == expected_volumes