protected ManageController CreateManageController(
     VeilUserManager userManager = null, VeilSignInManager signInManager = null,
     IVeilDataAccess veilDataAccess = null, IGuidUserIdGetter idGetter = null,
     IStripeService stripeService = null)
 {
     return new ManageController(userManager, signInManager, veilDataAccess, idGetter, stripeService);
 }
 /// <summary>
 ///     Instantiates a new instance of WebOrdersController with the specified arguments
 /// </summary>
 /// <param name="veilDataAccess">
 ///     The <see cref="IVeilDataAccess"/> to use for database access
 /// </param>
 /// <param name="idGetter">
 ///     The <see cref="IGuidUserIdGetter"/> to use for getting the current user's Id
 /// </param>
 /// <param name="stripeService">
 ///     The <see cref="IStripeService"/> to use for Stripe interaction
 /// </param>
 /// <param name="userManager">
 ///     The <see cref="VeilUserManager"/> to use for sending an order confirmation email
 /// </param>
 public WebOrdersController(
     IVeilDataAccess veilDataAccess, IGuidUserIdGetter idGetter,
     IStripeService stripeService, VeilUserManager userManager)
 {
     db = veilDataAccess;
     this.idGetter = idGetter;
     this.stripeService = stripeService;
     this.userManager = userManager;
 }
 /// <summary>
 ///     Instantiates a new instance of CheckoutController with the provided arguments
 /// </summary>
 /// <param name="veilDataAccess">
 ///     The <see cref="IVeilDataAccess"/> to use for database access
 /// </param>
 /// <param name="idGetter">
 ///     The <see cref="IGuidUserIdGetter"/> to use for getting the current user's Id
 /// </param>
 /// <param name="stripeService">
 ///     The <see cref="IStripeService"/> to use for Stripe interaction
 /// </param>
 /// <param name="shippingCostService">
 ///     The <see cref="IShippingCostService"/> to use for getting the shipping cost for
 ///     the items in the cart
 /// </param>
 /// <param name="userManager">
 ///     The <see cref="VeilUserManager"/> to use for sending an order confirmation email
 /// </param>
 public CheckoutController(IVeilDataAccess veilDataAccess, IGuidUserIdGetter idGetter,
     IStripeService stripeService, IShippingCostService shippingCostService,
     VeilUserManager userManager)
 {
     db = veilDataAccess;
     this.idGetter = idGetter;
     this.stripeService = stripeService;
     this.shippingCostService = shippingCostService;
     this.userManager = userManager;
 }
 /// <summary>
 ///     Instantiates a new instance of ManageController with the provided arguments
 /// </summary>
 /// <param name="userManager">
 ///     The <see cref="VeilUserManager"/> for the controller to use
 /// </param>
 /// <param name="signInManager">
 ///     The <see cref="VeilSignInManager"/> for the controller to use
 /// </param>
 /// <param name="veilDataAccess">
 ///     The <see cref="IVeilDataAccess"/> to use for database access
 /// </param>
 /// <param name="idGetter">
 ///     The <see cref="IGuidUserIdGetter"/> to use for getting the current user's Id
 /// </param>
 /// <param name="stripeService">
 ///     The <see cref="IStripeService"/> to use for Stripe interaction
 /// </param>
 public ManageController(
     VeilUserManager userManager, VeilSignInManager signInManager, IVeilDataAccess veilDataAccess,
     IGuidUserIdGetter idGetter, IStripeService stripeService)
 {
     this.userManager = userManager;
     this.signInManager = signInManager;
     db = veilDataAccess;
     this.idGetter = idGetter;
     this.stripeService = stripeService;
 }
 /// <summary>
 ///     Instantiates a new instance of GamesController with the provided argument
 /// </summary>
 /// <param name="veilDataAccess">
 ///     The <see cref="IVeilDataAccess"/> to use for database access
 /// </param>
 /// <param name="idGetter">
 ///     The <see cref="IGuidUserIdGetter"/> to use for getting the current user's Id
 /// </param>
 public GamesController(IVeilDataAccess veilDataAccess, IGuidUserIdGetter idGetter)
 {
     db = veilDataAccess;
     this.idGetter = idGetter;
 }
        protected CheckoutController CreateCheckoutController(
            IVeilDataAccess veilDataAccess = null, IGuidUserIdGetter idGetter = null,
            IStripeService stripeService = null, IShippingCostService shippingCostService = null,
            VeilUserManager userManager = null, ControllerContext context = null)
        {

            idGetter = idGetter ?? TestHelpers.GetSetupIUserIdGetterFake(memberId).Object;
            context = context ?? TestHelpers.GetSetupControllerContextFakeWithUserIdentitySetup().Object;

            var controller = new CheckoutController(
                veilDataAccess, idGetter, stripeService, shippingCostService, userManager)
            {
                ControllerContext = context
            };

            return controller;
        }
 /// <summary>
 ///     Instantiates a new instance of FriendListController with the provided arguments
 /// </summary>
 /// <param name="veilDataAccess">
 ///     The <see cref="IVeilDataAccess"/> to use for database access
 /// </param>
 /// <param name="idGetter">
 ///     The <see cref="IGuidUserIdGetter"/> to use for getting the current user's Id
 /// </param>
 public FriendListController(IVeilDataAccess veilDataAccess, IGuidUserIdGetter idGetter)
 {
     db = veilDataAccess;
     this.idGetter = idGetter;
 }