class FSMContextMergeJoinTests(AppEngineTestCase): def setUp(self): super(FSMContextMergeJoinTests, self).setUp() self.state = State('foo', None, CountExecuteCalls(), None) self.state2 = State('foo2', None, CountExecuteCallsWithFork(), None) self.state.addTransition(Transition('t1', self.state2, queueName='q'), 'event') self.context = FSMContext(self.state, currentState=self.state, machineName='machineName', instanceName='instanceName', queueName='qq', obj={TASK_NAME_PARAM: 'taskName'}) self.context.startingState = self.state from google.appengine.api.taskqueue.taskqueue import TaskRetryOptions self.context.retryOptions = TaskRetryOptions() self.context[INDEX_PARAM] = 1 self.context[STEPS_PARAM] = 0 def test_mergeJoinDispatch_1_context(self): _FantasmFanIn(workIndex='instanceName--foo--event--foo2--step-0-2654435761').put() self.assertEqual(1, _FantasmFanIn.all().count()) contexts = self.context.mergeJoinDispatch('event', {RETRY_COUNT_PARAM: 0}) self.assertEqual([{'__ix__': 1, '__step__': 0}], contexts) self.assertEqual(1, _FantasmFanIn.all().count()) def test_mergeJoinDispatch_1234_contexts(self): for i in xrange(1234): _FantasmFanIn(workIndex='instanceName--foo--event--foo2--step-0-2654435761').put() self.assertEqual(1000, _FantasmFanIn.all().count()) # can't get them all with .count() contexts = self.context.mergeJoinDispatch('event', {RETRY_COUNT_PARAM: 0}) self.assertEqual(1234, len(contexts)) self.assertEqual(1000, _FantasmFanIn.all().count())
def setUp(self): super(FSMContextMergeJoinTests, self).setUp() self.state = State('foo', None, CountExecuteCalls(), None) self.state2 = State('foo2', None, CountExecuteCallsWithFork(), None) self.state.addTransition(Transition('t1', self.state2, queueName='q'), 'event') self.context = FSMContext(self.state, currentState=self.state, machineName='machineName', instanceName='instanceName', queueName='qq', obj={TASK_NAME_PARAM: 'taskName'}) self.context.startingState = self.state from google.appengine.api.taskqueue.taskqueue import TaskRetryOptions self.context.retryOptions = TaskRetryOptions() self.context[INDEX_PARAM] = 1 self.context[STEPS_PARAM] = 0
def setUp(self): super(ReadWriteLockTest, self).setUp() self.loggingDouble = getLoggingDouble() self.state = State('name', None, None, None) self.context = FSMContext(self.state, queueName='default') self.context.currentState = self.state ReadWriteLock._BUSY_WAIT_ITER_SECS = ReadWriteLock.BUSY_WAIT_ITERS ReadWriteLock.BUSY_WAIT_ITER_SECS = 0 ReadWriteLock._BUSY_WAIT_ITERS = ReadWriteLock.BUSY_WAIT_ITERS ReadWriteLock.BUSY_WAIT_ITERS = 2 random.seed(0) # last step
class FSMContextMergeJoinTests(AppEngineTestCase): def setUp(self): super(FSMContextMergeJoinTests, self).setUp() self.state = State('foo', None, CountExecuteCalls(), None) self.state2 = State('foo2', None, CountExecuteCallsWithFork(), None) self.state.addTransition(Transition('t1', self.state2, queueName='q'), 'event') self.context = FSMContext(self.state, currentState=self.state, machineName='machineName', instanceName='instanceName', queueName='qq', obj={TASK_NAME_PARAM: 'taskName'}) self.context.startingState = self.state from google.appengine.api.taskqueue.taskqueue import TaskRetryOptions self.context.retryOptions = TaskRetryOptions() self.context[INDEX_PARAM] = 1 self.context[STEPS_PARAM] = 0 def test_mergeJoinDispatch_1_context(self): _FantasmFanIn( workIndex='instanceName--foo--event--foo2--step-0-2654435761').put( ) self.assertEqual(1, _FantasmFanIn.all().count()) contexts = self.context.mergeJoinDispatch('event', {RETRY_COUNT_PARAM: 0}) self.assertEqual([{'__ix__': 1, '__step__': 0}], contexts) self.assertEqual(1, _FantasmFanIn.all().count()) def test_mergeJoinDispatch_1234_contexts(self): for i in xrange(1234): _FantasmFanIn( workIndex='instanceName--foo--event--foo2--step-0-2654435761' ).put() self.assertEqual( 1000, _FantasmFanIn.all().count()) # can't get them all with .count() contexts = self.context.mergeJoinDispatch('event', {RETRY_COUNT_PARAM: 0}) self.assertEqual(1234, len(contexts)) self.assertEqual(1000, _FantasmFanIn.all().count())
def setUp(self): super(FSMContextMergeJoinTests, self).setUp() self.state = State('foo', None, CountExecuteCalls(), None) self.state2 = State('foo2', None, CountExecuteCallsWithFork(), None) self.state.addTransition(Transition('t1', self.state2, queueName='q'), 'event') self.context = FSMContext(self.state, currentState=self.state, machineName='machineName', instanceName='instanceName', queueName='qq') self.context[INDEX_PARAM] = 1 self.context[STEPS_PARAM] = 0
def test_generatedContextNameIsUnique(self): instanceName1 = self.context.instanceName state = State('foo', None, CountExecuteCalls(), None) context2 = FSMContext({state.name: state}, state, queueName='q') instanceName2 = context2.instanceName self.assertNotEquals(instanceName1, instanceName2)