コード例 #1
0
        public void Keys_Can_Be_Case_Insensitive_When_Reading()
        {
            _Dictionary = new OwinDictionary <object>(caseSensitive: false);

            _Dictionary.Add("A", 1);

            Assert.AreEqual(_Dictionary["a"], 1);
        }
コード例 #2
0
        public void Ctor_Throws_If_Existing_Dictionary_Is_ReadOnly()
        {
            // When the OWIN spec talks about dictionaries they are always mutable.
            var wrappedDictionary  = new Dictionary <string, object>();
            var readonlyDictionary = new ReadOnlyDictionary <string, object>(wrappedDictionary);

            _Dictionary = new OwinDictionary <object>(readonlyDictionary);
        }
コード例 #3
0
        public void ProcessRequest_Does_Nothing_If_Host_Not_Listening()
        {
            _Host.Initialise(_PipelineBuilder.Object, _PipelineBuilderEnvironment.Object);

            var env = new OwinDictionary <object>();

            _Host.ProcessRequest(env);

            _Pipeline.Verify(r => r.ProcessRequest(env), Times.Never());
        }
コード例 #4
0
        public void ProcessRequest_Sends_Environment_Down_Pipeline()
        {
            _Host.Initialise(_PipelineBuilder.Object, _PipelineBuilderEnvironment.Object);
            _Host.Start();

            var env = new OwinDictionary <object>();

            _Host.ProcessRequest(env);

            _Pipeline.Verify(r => r.ProcessRequest(env), Times.Once());
        }
コード例 #5
0
        public void Keys_Can_Be_Case_Insensitive_When_Writing()
        {
            _Dictionary = new OwinDictionary <object>(caseSensitive: false);

            _Dictionary["a"] = 1;
            _Dictionary["A"] = 2;

            Assert.AreEqual(1, _Dictionary.Count);
            Assert.AreEqual(2, (int)_Dictionary["a"]);
            Assert.AreEqual(2, (int)_Dictionary["A"]);
        }
コード例 #6
0
        public void Ctor_Can_Accept_Existing_Dictionary_As_Backing_Store()
        {
            var existingDictionary = new Dictionary <string, object>(StringComparer.OrdinalIgnoreCase);

            _Dictionary = new OwinDictionary <object>(existingDictionary);

            _Dictionary["a"] = 1;

            Assert.AreEqual(1, _Dictionary["a"]);
            Assert.AreEqual(1, _Dictionary["A"]);
        }
コード例 #7
0
        public void GetContext_RequestProcessed_Not_Raised_If_No_ID_Is_Established()
        {
            var env           = new OwinDictionary <object>();
            var eventRecorder = new EventRecorder <RequestProcessedEventArgs>();

            _Host.RequestProcessed += eventRecorder.Handler;

            _Host.Initialise(_PipelineBuilder.Object, _PipelineBuilderEnvironment.Object);
            _Host.Start();
            _Host.ProcessRequest(env);

            Assert.AreEqual(0, eventRecorder.CallCount);
        }
コード例 #8
0
        public void GetContext_RequestProcessed_Raised_If_ID_Is_Established()
        {
            var env = new OwinDictionary <object>();

            _Pipeline.Setup(r => r.ProcessRequest(It.IsAny <IDictionary <string, object> >()))
            .Callback(() => env[CustomEnvironmentKey.RequestID] = 123L);
            var eventRecorder = new EventRecorder <RequestProcessedEventArgs>();

            eventRecorder.EventRaised += (sender, args) => {
                Assert.AreSame(_Host, eventRecorder.Sender);
                Assert.AreEqual(123L, args.RequestID);
            };
            _Host.RequestProcessed += eventRecorder.Handler;

            _Host.Initialise(_PipelineBuilder.Object, _PipelineBuilderEnvironment.Object);
            _Host.Start();
            _Host.ProcessRequest(env);

            Assert.AreEqual(1, eventRecorder.CallCount);
        }
コード例 #9
0
        public void BeforeProcessingRequest_Called_Before_Pipeline_Called()
        {
            var env = new OwinDictionary <object>();

            var actionCalled = false;

            _Host.BeforeProcessingRequest = (actionEnv) => {
                Assert.AreSame(env, actionEnv);
                actionCalled = true;
            };

            _Pipeline.Setup(r => r.ProcessRequest(env)).Callback(() => {
                Assert.IsTrue(actionCalled);
            });

            _Host.Initialise(_PipelineBuilder.Object, _PipelineBuilderEnvironment.Object);
            _Host.Start();
            _Host.ProcessRequest(env);

            Assert.IsTrue(actionCalled);
        }
コード例 #10
0
        public void ProcessRequest_Throws_If_Not_Initialised()
        {
            var env = new OwinDictionary <object>();

            _Host.ProcessRequest(env);
        }
コード例 #11
0
 public void TestInitialise()
 {
     _Dictionary = new OwinDictionary <object>();
 }
コード例 #12
0
 public void Ctor_Throws_If_Existing_Dictionary_Is_Null()
 {
     _Dictionary = new OwinDictionary <object>((IDictionary <string, object>)null);
 }
コード例 #13
0
 public void TestInitialise()
 {
     _Environment = new OwinDictionary <object>();
     _Context     = new OwinContext(_Environment);
 }