/// <summary>
        /// Initializes a new instance of the <see cref="VisitorOrderProcessor" /> class.
        /// </summary>
        /// <param name="innerProcessor">The inner processor.</param>
        /// <param name="processingStrategy">The processing strategy.</param>
        /// <param name="repository">The repository.</param>
        /// <param name="orderSecurity">The order security.</param>
        public VisitorOrderProcessor(OrderProcessor innerProcessor, ProcessingStrategy processingStrategy, Repository <Order> repository, VisitorOrderSecurity orderSecurity)
        {
            Assert.IsNotNull(innerProcessor, "Unable to cancel the order. Inner Order Processor cannot be null.");
            Assert.IsNotNull(processingStrategy, "Unable to cancel the order. Order Processing Strategy cannot be null.");
            Assert.IsNotNull(repository, "Unable to cancel the order. Order Repository cannot be null.");
            Assert.IsNotNull(orderSecurity, Texts.UnableToSaveTheOrdersOrderSecurityCannotBeNull);

            this.innerProcessor     = innerProcessor;
            this.processingStrategy = processingStrategy;
            this.repository         = repository;
            this.orderSecurity      = orderSecurity;
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="VisitorOrderProcessor" /> class.
        /// </summary>
        /// <param name="innerProcessor">The inner processor.</param>
        /// <param name="processingStrategy">The processing strategy.</param>
        /// <param name="repository">The repository.</param>
        /// <param name="orderSecurity">The order security.</param>
        public VisitorOrderProcessor(OrderProcessor innerProcessor, ProcessingStrategy processingStrategy, Repository<Order> repository, VisitorOrderSecurity orderSecurity)
        {
            Assert.IsNotNull(innerProcessor, "Unable to cancel the order. Inner Order Processor cannot be null.");
              Assert.IsNotNull(processingStrategy, "Unable to cancel the order. Order Processing Strategy cannot be null.");
              Assert.IsNotNull(repository, "Unable to cancel the order. Order Repository cannot be null.");
              Assert.IsNotNull(orderSecurity, Texts.UnableToSaveTheOrdersOrderSecurityCannotBeNull);

              this.innerProcessor = innerProcessor;
              this.processingStrategy = processingStrategy;
              this.repository = repository;
              this.orderSecurity = orderSecurity;
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="SampleOrderSecurityTest" /> class.
 /// </summary>
 public SampleOrderSecurityTest()
 {
     this.orderSecurity = new SampleOrderSecurity();
 }