Exemple #1
0
 public void ValidAccountNumber_ReturnsNoModelStateError()
 {
     string accountNum = "Z12345";
     var account = new BrokerageAccount { AccountNumber = accountNum };
     var errors = GetModelValidationErrors(account);
     Assert.AreEqual(0, errors.Count);
 }
        public IHttpActionResult PostAccount(BrokerageAccount acct)
        {
            var opStatus = _AccountRepository.InsertAccount(acct);

            if (!opStatus.Status)
            {
                throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.NotFound));
            }

            //Generate success response
            return CreatedAtRoute("DefaultApi", new { id = acct.AccountNumber }, acct);
        }
        public void PostAccount_ReturnsCreatedStatusCode()
        {
            // Arrange
            var bAcct = new BrokerageAccount { AccountNumber = "1234" };
            var acctStub = new StubIAccountRepository
            {
                InsertAccountBrokerageAccount = (ba) =>
                {
                    return new OperationStatus { Status = true };
                }
            };
            var controller = GetDataServiceController(acct: acctStub);
            SetupController(controller);

            // Act
            var result = controller.PostAccount(bAcct) as CreatedAtRouteNegotiatedContentResult<BrokerageAccount>;

            // Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(bAcct.AccountNumber, result.Content.AccountNumber);
        }
        public void DataServiceController_AccountReturnedWithoutModification()
        {
            //Ensure that Web API method doesn't modify the brokerage account object
            //Arrange
            var acctNumber = "1234";
            var brokerageAccount = new BrokerageAccount { AccountNumber = "1234" };
            var acctRepo = new StubIAccountRepository
            {
                GetAccountString = (an) =>
                {
                    brokerageAccount.AccountNumber = an;
                    return brokerageAccount;
                }
            };

            var controller = GetDataServiceController(acct: acctRepo);

            //Act
            var result = controller.Account(acctNumber);

            //Assert
            Assert.AreSame(brokerageAccount, result);
            Assert.AreSame(acctNumber, result.AccountNumber);
        }