예제 #1
0
        public void GetCustomerAccount()
        {
            // ARRANGE
            CustomerAccount        expected = FactoryCustomer.CustomerAccount;
            IInternalDracoonClient c        = FactoryClients.InternalDracoonClientMock(true);
            DracoonAccountImpl     a        = new DracoonAccountImpl(c);

            Mock.Arrange(() => c.Builder.GetCustomerAccount()).Returns(FactoryRestSharp.GetCustomerAccountMock()).Occurs(1);
            Mock.Arrange(() => c.Executor.DoSyncApiCall <ApiCustomerAccount>(Arg.IsAny <IRestRequest>(), RequestType.GetCustomerAccount, 0))
            .Returns(FactoryCustomer.ApiCustomerAccount).Occurs(1);
            Mock.Arrange(() => CustomerMapper.FromApiCustomerAccount(Arg.IsAny <ApiCustomerAccount>())).Returns(FactoryCustomer.CustomerAccount).Occurs(1);

            // ACT
            CustomerAccount actual = a.GetCustomerAccount();

            // ASSERT
            Assert.Equal(expected, actual, new CustomerAccountComparer());
            Mock.Assert(() => CustomerMapper.FromApiCustomerAccount(Arg.IsAny <ApiCustomerAccount>()));
            Mock.Assert(c.Builder);
            Mock.Assert(c.Executor);
        }