public void PostedCallbacksTriggerActions() { var callback = new CallbackForTest { UniqueID = Guid.NewGuid() }; var numCallbacksRun = 0; Action <CallbackForTest> action = delegate(CallbackForTest cb) { Assert.Equal(callback.UniqueID, cb.UniqueID); numCallbacksRun++; }; using (mgr.Subscribe(action)) { for (var i = 0; i < 10; i++) { client.PostCallback(callback); } mgr.RunWaitAllCallbacks(TimeSpan.Zero); Assert.Equal(10, numCallbacksRun); // Callbacks should have been freed. mgr.RunWaitAllCallbacks(TimeSpan.Zero); Assert.Equal(10, numCallbacksRun); } }
public void SubscribedFunctionDoesNotRunWhenSubscriptionIsDisposed() { var callback = new CallbackForTest(); var callCount = 0; Action <CallbackForTest> action = delegate(CallbackForTest cb) { callCount++; }; using (mgr.Subscribe(action)) { PostAndRunCallback(callback); } PostAndRunCallback(callback); Assert.Equal(1, callCount); }
public void PostedCallbackTriggersAction() { var callback = new CallbackForTest { UniqueID = Guid.NewGuid() }; var didCall = false; Action<CallbackForTest> action = delegate(CallbackForTest cb) { Assert.Equal(callback.UniqueID, cb.UniqueID); didCall = true; }; using (new Callback<CallbackForTest>(action, mgr)) { PostAndRunCallback(callback); } Assert.True(didCall); }
public void PostedCallbackDoesNotTriggerJobCallback() { var callback = new CallbackForTest { UniqueID = Guid.NewGuid() }; var didCall = false; Action <CallbackForTest, JobID> action = delegate(CallbackForTest cb, JobID jid) { didCall = true; }; using (new JobCallback <CallbackForTest>(action, mgr)) { PostAndRunCallback(callback); } Assert.False(didCall); }
public void PostedCallbackTriggersAction_CatchAll() { var callback = new CallbackForTest { UniqueID = Guid.NewGuid() }; var didCall = false; Action<CallbackMsg> action = delegate(CallbackMsg cb) { Assert.IsType<CallbackForTest>(cb); var cft = (CallbackForTest)cb; Assert.Equal(callback.UniqueID, cft.UniqueID); didCall = true; }; using (new Callback<CallbackMsg>(action, mgr)) { PostAndRunCallback(callback); } Assert.True(didCall); }
public void PostedCallbackTriggersActionForExplicitJobIDInvalid() { var jobID = new JobID(123456); var callback = new CallbackForTest { JobID = jobID, UniqueID = Guid.NewGuid() }; var didCall = false; Action<CallbackForTest> action = delegate(CallbackForTest cb) { Assert.Equal(callback.UniqueID, cb.UniqueID); Assert.Equal(jobID, cb.JobID); didCall = true; }; using (new Callback<CallbackForTest>(action, mgr, JobID.Invalid)) { PostAndRunCallback(callback); } Assert.True(didCall); }
public void PostedCallbackTriggersAction() { var callback = new CallbackForTest { UniqueID = Guid.NewGuid() }; var didCall = false; Action <CallbackForTest> action = delegate(CallbackForTest cb) { Assert.Equal(cb.UniqueID, callback.UniqueID); didCall = true; }; using (new Callback <CallbackForTest>(action, mgr)) { PostAndRunCallback(callback); } Assert.True(didCall); }
public void PostedCallbackDoesNotTriggerActionForWrongJobID() { var jobID = new JobID(123456); var callback = new CallbackForTest { JobID = jobID, UniqueID = Guid.NewGuid() }; var didCall = false; Action <CallbackForTest> action = delegate(CallbackForTest cb) { didCall = true; }; using (new Callback <CallbackForTest>(action, mgr, new JobID(123))) { PostAndRunCallback(callback); } Assert.False(didCall); }
public void PostedJobCallbackTriggersAction() { var callback = new CallbackForTest { UniqueID = Guid.NewGuid() }; var jobID = new JobID(123456); var jobCallback = new SteamClient.JobCallback<CallbackForTest>(jobID, callback); var didCall = false; Action<CallbackForTest, JobID> action = delegate(CallbackForTest cb, JobID jid) { Assert.Equal(cb.UniqueID, callback.UniqueID); Assert.Equal(jobID, jid); didCall = true; }; using (new JobCallback<CallbackForTest>(action, mgr)) { PostAndRunCallback(jobCallback); } Assert.True(didCall); }
public void PostedJobCallbackDoesNotTriggerCallback() { var callback = new CallbackForTest { UniqueID = Guid.NewGuid() }; var jobID = new JobID(123456); var jobCallback = new SteamClient.JobCallback <CallbackForTest>(jobID, callback); var didCall = false; Action <CallbackForTest> action = delegate(CallbackForTest cb) { didCall = true; }; using (new Callback <CallbackForTest>(action, mgr)) { PostAndRunCallback(jobCallback); } Assert.False(didCall); }
public void PostedCallbackTriggersActionForExplicitJobIDInvalid() { var jobID = new JobID(123456); var callback = new CallbackForTest { JobID = jobID, UniqueID = Guid.NewGuid() }; var didCall = false; Action <CallbackForTest> action = delegate(CallbackForTest cb) { Assert.Equal(callback.UniqueID, cb.UniqueID); Assert.Equal(jobID, cb.JobID); didCall = true; }; using (new Callback <CallbackForTest>(action, mgr, JobID.Invalid)) { PostAndRunCallback(callback); } Assert.True(didCall); }
public void PostedCallbackTriggersAction_CatchAll() { var callback = new CallbackForTest { UniqueID = Guid.NewGuid() }; var didCall = false; Action <CallbackMsg> action = delegate(CallbackMsg cb) { Assert.IsType <CallbackForTest>(cb); var cft = (CallbackForTest)cb; Assert.Equal(callback.UniqueID, cft.UniqueID); didCall = true; }; using (new Callback <CallbackMsg>(action, mgr)) { PostAndRunCallback(callback); } Assert.True(didCall); }
public void PostedCallbackWithJobIDTriggersCallbackForJobID() { var jobID = new JobID(123456); var callback = new CallbackForTest { JobID = jobID, UniqueID = Guid.NewGuid() }; var didCall = false; Action <CallbackForTest> action = delegate(CallbackForTest cb) { Assert.Equal(callback.UniqueID, cb.UniqueID); Assert.Equal(jobID, cb.JobID); didCall = true; }; using (mgr.Subscribe(123456, action)) { PostAndRunCallback(callback); } Assert.True(didCall); }
public void PostedCallbackWithJobIDTriggersActionWhenNoJobIDSpecified() { var jobID = new JobID(123456); var callback = new CallbackForTest { JobID = jobID, UniqueID = Guid.NewGuid() }; var didCall = false; Action <CallbackForTest> action = delegate(CallbackForTest cb) { Assert.Equal(callback.UniqueID, cb.UniqueID); Assert.Equal(jobID, cb.JobID); didCall = true; }; using (new Callback <CallbackForTest>(action, mgr)) { PostAndRunCallback(callback); } Assert.True(didCall); }
public void PostedJobCallbackDoesNotTriggerActionForWrongJobID() { var callback = new CallbackForTest { UniqueID = Guid.NewGuid() }; var jobID = new JobID(123456); var jobCallback = new SteamClient.JobCallback <CallbackForTest>(jobID, callback); var didCall = false; Action <CallbackForTest, JobID> action = delegate(CallbackForTest cb, JobID jid) { Assert.Equal(jobID, jid); didCall = true; }; using (new JobCallback <CallbackForTest>(action, mgr, new JobID(123))) { PostAndRunCallback(jobCallback); } Assert.False(didCall); }
public void PostedCallbackDoesNotTriggerJobCallback() { var callback = new CallbackForTest { UniqueID = Guid.NewGuid() }; var didCall = false; Action<CallbackForTest, JobID> action = delegate(CallbackForTest cb, JobID jid) { didCall = true; }; using (new JobCallback<CallbackForTest>(action, mgr)) { PostAndRunCallback(callback); } Assert.False(didCall); }
public void PostedCallbackWithJobIDTriggersActionWhenNoJobIDSpecified() { var jobID = new JobID(123456); var callback = new CallbackForTest { JobID = jobID, UniqueID = Guid.NewGuid() }; var didCall = false; Action<CallbackForTest> action = delegate(CallbackForTest cb) { Assert.Equal(callback.UniqueID, cb.UniqueID); Assert.Equal(jobID, cb.JobID); didCall = true; }; using (new Callback<CallbackForTest>(action, mgr)) { PostAndRunCallback(callback); } Assert.True(didCall); }
public void PostedJobCallbackDoesNotTriggerCallback() { var callback = new CallbackForTest { UniqueID = Guid.NewGuid() }; var jobID = new JobID(123456); var jobCallback = new SteamClient.JobCallback<CallbackForTest>(jobID, callback); var didCall = false; Action<CallbackForTest> action = delegate(CallbackForTest cb) { didCall = true; }; using (new Callback<CallbackForTest>(action, mgr)) { PostAndRunCallback(jobCallback); } Assert.False(didCall); }
public void SubscribedFunctionDoesNotRunWhenSubscriptionIsDisposed() { var callback = new CallbackForTest(); var callCount = 0; Action<CallbackForTest> action = delegate (CallbackForTest cb) { callCount++; }; using (mgr.Subscribe(action)) { PostAndRunCallback(callback); } PostAndRunCallback(callback); Assert.Equal(1, callCount); }
public void PostedCallbackDoesNotTriggerActionForWrongJobID() { var jobID = new JobID(123456); var callback = new CallbackForTest { JobID = jobID, UniqueID = Guid.NewGuid() }; var didCall = false; Action<CallbackForTest> action = delegate(CallbackForTest cb) { didCall = true; }; using (new Callback<CallbackForTest>(action, mgr, new JobID(123))) { PostAndRunCallback(callback); } Assert.False(didCall); }
public void PostedCallbackWithJobIDTriggersCallbackForJobID() { var jobID = new JobID(123456); var callback = new CallbackForTest { JobID = jobID, UniqueID = Guid.NewGuid() }; var didCall = false; Action<CallbackForTest> action = delegate(CallbackForTest cb) { Assert.Equal(callback.UniqueID, cb.UniqueID); Assert.Equal(jobID, cb.JobID); didCall = true; }; using (mgr.Subscribe(123456, action)) { PostAndRunCallback(callback); } Assert.True(didCall); }
public void PostedCallbacksTriggerActions() { var callback = new CallbackForTest { UniqueID = Guid.NewGuid() }; var numCallbacksRun = 0; Action<CallbackForTest> action = delegate (CallbackForTest cb) { Assert.Equal(callback.UniqueID, cb.UniqueID); numCallbacksRun++; }; using (mgr.Subscribe(action)) { for (var i = 0; i < 10; i++) { client.PostCallback(callback); } mgr.RunWaitAllCallbacks(TimeSpan.Zero); Assert.Equal(10, numCallbacksRun); // Callbacks should have been freed. mgr.RunWaitAllCallbacks(TimeSpan.Zero); Assert.Equal(10, numCallbacksRun); } }