コード例 #1
0
        public void BatchParameterDictionaryTest_AddFromQueryStringString()
        {
            //Arrange
            var queryStringValue         = "?key1=value1&key2=value2&key3=value3";
            var batchParameterDictionary = new BatchParameterDictionary();

            //Act
            batchParameterDictionary.AddFromQueryString(queryStringValue);

            //Assert
            Assert.Collection(batchParameterDictionary,
                              (s) =>
            {
                Assert.Equal("key1", s.Key);
                Assert.Equal("value1", s.Value);
            },
                              (s) =>
            {
                Assert.Equal("key2", s.Key);
                Assert.Equal("value2", s.Value);
            },
                              (s) =>
            {
                Assert.Equal("key3", s.Key);
                Assert.Equal("value3", s.Value);
            });
        }
コード例 #2
0
        public void BatchParameterDictionaryTest_CheckKeysAndValues()
        {
            //Arrange
            var batchParameterDictionary = new BatchParameterDictionary();

            batchParameterDictionary.Add(new KeyValuePair <string, object>("key1", "value1"));
            batchParameterDictionary.Add(new KeyValuePair <string, object>("key2", "value2"));
            batchParameterDictionary.Add(new KeyValuePair <string, object>("key3", "value3"));
            batchParameterDictionary.Add(new KeyValuePair <string, object>("key4", "value4"));

            //Act
            var keys   = batchParameterDictionary.Keys;
            var values = batchParameterDictionary.Values;

            //Assert
            Assert.Collection(keys,
                              (s) => { Assert.Equal("key1", s); },
                              (s) => { Assert.Equal("key2", s); },
                              (s) => { Assert.Equal("key3", s); },
                              (s) => { Assert.Equal("key4", s); }
                              );

            Assert.Collection(values,
                              (s) => { Assert.Equal("value1", s); },
                              (s) => { Assert.Equal("value2", s); },
                              (s) => { Assert.Equal("value3", s); },
                              (s) => { Assert.Equal("value4", s); }
                              );
        }
コード例 #3
0
        public void DefaultBatchInvokerParameterBindingTest_Bind()
        {
            //Arange
            List <TypeInfo> types = new List <TypeInfo>();

            types.Add(typeof(SimplePOCOBatch).GetTypeInfo());
            var descriptions = AssemblyDiscoveryActionDescription.actionDescription(types);

            var batchParameterDictionary = new BatchParameterDictionary();

            batchParameterDictionary.Add("param1", "first param");

            var serializer = new Mock <IModelSerializer>(MockBehavior.Strict);

            var batchInvokerParameterBinding = new DefaultBatchInvokerParameterBinding(batchParameterDictionary, descriptions.Single((p) => p.ActionName.Equals("method3")).ActionInfo, serializer.Object);

            //Act
            var response = batchInvokerParameterBinding.Bind();

            //Assert
            Assert.NotNull(response);
            Assert.IsType <object[]>(response);
            Assert.Equal(1, response.Length);
            Assert.Equal("first param", response[0]);
        }
コード例 #4
0
        public void BatchParameterDictionaryTest_AddValueKeyPair()
        {
            //Arrange
            var batchParameterDictionary = new BatchParameterDictionary();

            //Act
            batchParameterDictionary.Add(new KeyValuePair <string, object>("key", "value"));

            //Assert
            Assert.Equal(1, batchParameterDictionary.Count);
        }
コード例 #5
0
        public void BatchParameterDictionaryTest_AddKeyValue()
        {
            //Arrange
            var batchParameterDictionary = new BatchParameterDictionary();

            //Act
            batchParameterDictionary.Add("key", "value");

            //Assert
            Assert.Equal(1, batchParameterDictionary.Count);
        }
コード例 #6
0
        public void BatchParameterDictionaryTest_Count()
        {
            //Arrange
            var batchParameterDictionary = new BatchParameterDictionary();

            //Act
            batchParameterDictionary.Add("key", "value");
            batchParameterDictionary.Add("key1", "value");
            batchParameterDictionary.Add("key2", "value");
            batchParameterDictionary.Add("key3", "value");

            //Assert

            Assert.Equal(4, batchParameterDictionary.Count);
        }
コード例 #7
0
        public DefaultBatchInvokerParameterBinding(BatchParameterDictionary parameters, MethodInfo methodInfo, IModelSerializer modelSerializer)
        {
            if (parameters == null)
            {
                throw new ArgumentNullException(nameof(parameters));
            }

            if (methodInfo == null)
            {
                throw new ArgumentNullException(nameof(methodInfo));
            }

            _parameters = parameters;
            _methodInfo = methodInfo;
        }
コード例 #8
0
        public void BatchParameterDictionaryTest_Enumerator()
        {
            //Arrange
            var batchParameterDictionary = new BatchParameterDictionary();

            //Act
            batchParameterDictionary.Add(new KeyValuePair <string, object>("key1", "value1"));
            batchParameterDictionary.Add(new KeyValuePair <string, object>("key2", "value2"));
            batchParameterDictionary.Add(new KeyValuePair <string, object>("key3", "value3"));
            batchParameterDictionary.Add(new KeyValuePair <string, object>("key4", "value4"));

            //Assert
            foreach (var item in batchParameterDictionary)
            {
                Assert.IsType <KeyValuePair <string, object> >(item);
            }
        }
コード例 #9
0
        public void BatchParameterDictionaryTest_CheckContainsKey()
        {
            //Arrange
            var batchParameterDictionary = new BatchParameterDictionary();

            batchParameterDictionary.Add(new KeyValuePair <string, object>("key1", "value1"));
            batchParameterDictionary.Add(new KeyValuePair <string, object>("key2", "value2"));
            batchParameterDictionary.Add(new KeyValuePair <string, object>("key3", "value3"));
            batchParameterDictionary.Add(new KeyValuePair <string, object>("key4", "value4"));

            //Act
            var responseKey1   = batchParameterDictionary.ContainsKey("key1");
            var responseKey123 = batchParameterDictionary.ContainsKey("key123");

            //Assert
            Assert.True(responseKey1);
            Assert.False(responseKey123);
        }
コード例 #10
0
        public void BatchParameterDictionaryTest_TryGetValue()
        {
            //Arrange
            var batchParameterDictionary = new BatchParameterDictionary();

            batchParameterDictionary.Add(new KeyValuePair <string, object>("key1", "value1"));
            batchParameterDictionary.Add(new KeyValuePair <string, object>("key2", "value2"));
            batchParameterDictionary.Add(new KeyValuePair <string, object>("key3", "value3"));
            batchParameterDictionary.Add(new KeyValuePair <string, object>("key4", "value4"));

            //Act
            object item;
            var    result = batchParameterDictionary.TryGetValue("key2", out item);

            //Assert
            Assert.True(result);
            Assert.NotNull(item);
            Assert.IsType <string>(item);
            Assert.Equal("value2", item);
        }
コード例 #11
0
        public void BatchParameterDictionaryTest_RemoveByKey()
        {
            //Arrange
            var batchParameterDictionary = new BatchParameterDictionary();

            batchParameterDictionary.Add(new KeyValuePair <string, object>("key1", "value"));
            batchParameterDictionary.Add(new KeyValuePair <string, object>("key2", "value"));
            batchParameterDictionary.Add(new KeyValuePair <string, object>("key3", "value"));
            batchParameterDictionary.Add(new KeyValuePair <string, object>("key4", "value"));

            //Act
            batchParameterDictionary.Remove("key2");

            //Assert
            Assert.Equal(3, batchParameterDictionary.Count);
            Assert.Collection <KeyValuePair <string, object> >(batchParameterDictionary,
                                                               (s) => { Assert.Equal("key1", s.Key); },
                                                               (s) => { Assert.Equal("key3", s.Key); },
                                                               (s) => { Assert.Equal("key4", s.Key); }
                                                               );
        }