public IMarketResponse SendQueryBuySellRequest(int id) { //example: {"price": 5, "amount": 10, "type": "buy", "user": "******", "commodity": 1} Trace.WriteLine(String.Format("Sent Buy/Sell Query Request: id: {0}", id)); MQReq output = new MQReq(); return(output); }
public void BuyTestFullProcess() { //arrange MBuySell buy = new MBuySell(); buy.id = "666"; MQReq query = new MQReq(); MQCommodity market = new MQCommodity(); market.ask = "1"; MarketException excp = new MarketException(); CommStubStaticReturn comm = new CommStubStaticReturn(buy, null, null, excp, market, null, null, null); BuyProcess testProcess = new BuyProcess(true, comm, 1, 1, 1, 1); //initial assert Assert.AreEqual(testProcess.currIndex, 0); Assert.AreEqual(testProcess.queue, LogicQueue.first); //act1 object output = testProcess.run(); //assert1 Assert.AreEqual(testProcess.currIndex, 1); Assert.AreEqual(testProcess.queue, LogicQueue.first); //act2 output = testProcess.run(); //assert2 Assert.AreEqual(testProcess.currIndex, 2); Assert.AreEqual(testProcess.queue, LogicQueue.first); //update communicator stub comm = new CommStubStaticReturn(buy, null, null, query, market, null, null, null); testProcess.comm = comm; //act3 output = testProcess.run(); //assert3 Assert.AreEqual(testProcess.currIndex, 0); Assert.AreEqual(testProcess.queue, LogicQueue.last); //act4 output = testProcess.run(); //assert4 Assert.AreEqual(testProcess.currIndex, 0); Assert.AreEqual(testProcess.queue, LogicQueue.last); }
public void TestInitialize() { //Create stub communicator and pass it to the AMA commodity = 0; MQReq qmarket = new MQReq(); qmarketWrapper = new MQReqWrapper(); qmarketWrapper.id = 123456; qmarketWrapper.request = qmarket; List <MQReqWrapper> stubResponse = new List <MQReqWrapper>(); stubResponse.Add(qmarketWrapper); comm = new CommStubStaticReturn(); comm.qAllrequests = stubResponse; agent = new AdvancedAMA(3 + 1, 1000, comm); }
public void SellTestHasExisitingRequest() { //arrange MQReq query = new MQReq(); CommStubStaticReturn comm = new CommStubStaticReturn(null, null, null, query, null, null, null, null); SellProcess testProcess = new SellProcess(false, comm, 1, 1, 1, 1); //initial assert Assert.AreEqual(testProcess.currIndex, 0); Assert.AreEqual(testProcess.repeat, false); Assert.AreEqual(testProcess.queue, LogicQueue.first); //act object output = testProcess.run(); //assert Assert.AreEqual(testProcess.repeat, false); Assert.AreEqual(testProcess.queue, LogicQueue.last); Assert.IsInstanceOfType(output, typeof(LogicProcess)); Assert.AreEqual(testProcess.currIndex, 0); }
public void SellTestFullProcess() { //arrange MBuySell sell = new MBuySell(); sell.id = "666"; MQReq query = new MQReq(); MQCommodity market = new MQCommodity(); market.bid = "1"; MarketException excp = new MarketException(); //create valid user query response MQUser user = new MQUser(); user.commodities = new Dictionary <String, int>(); user.commodities.Add("1", 3); int test = user.commodities["1"]; CommStubStaticReturn comm = new CommStubStaticReturn(null, sell, null, excp, market, user, null, null); SellProcess testProcess = new SellProcess(true, comm, 1, 1, 1, 1); //initial assert Assert.AreEqual(testProcess.currIndex, 0); Assert.AreEqual(testProcess.queue, LogicQueue.first); //act1 object output = testProcess.run(); //assert1 Assert.AreEqual(testProcess.currIndex, 1); Assert.AreEqual(testProcess.queue, LogicQueue.first); //act2 output = testProcess.run(); //assert2 Assert.AreEqual(testProcess.currIndex, 2); Assert.AreEqual(testProcess.queue, LogicQueue.first); //act3 output = testProcess.run(); //assert3 Assert.AreEqual(testProcess.currIndex, 3); Assert.AreEqual(testProcess.queue, LogicQueue.first); //act4 output = testProcess.run(); //assert4 Assert.AreEqual(testProcess.currIndex, 0); Assert.AreEqual(testProcess.queue, LogicQueue.last); //update communicator stub comm = new CommStubStaticReturn(null, sell, null, query, market, user, null, null); testProcess.comm = comm; //act5 output = testProcess.run(); //assert5 Assert.AreEqual(testProcess.currIndex, 0); Assert.AreEqual(testProcess.queue, LogicQueue.last); }