コード例 #1
0
        public void DefaultCtorIsOk()
        {
            var adapter = new CascadingMultipleDictionaryAdapter();

            Assert.NotNull(adapter.Sources);
            Assert.Empty(adapter.Sources);
        }
コード例 #2
0
        public void AddingEmptySourceIsOk()
        {
            var adapter = new CascadingMultipleDictionaryAdapter();
            adapter.AddSource(new Dictionary<string, string>());

            Assert.NotEmpty(adapter.Sources);
        }
コード例 #3
0
        public void OrderAffectValuesWhenTheSameKeyIsPresent()
        {
            var dict1 = new Dictionary<string, string> { { "item1", "value1" } };
            var dict2 = new Dictionary<string, string> { { "item1", "value2" } };

            var adapter = new CascadingMultipleDictionaryAdapter(new[] { dict1, dict2 });

            Assert.Equal("value2", adapter["item1"]);
        }
コード例 #4
0
        public void ItGetsTheValueFomDictionary()
        {
            var dict1 = new Dictionary<string, string> { { "item1", "value1" } };
            var dict2 = new Dictionary<string, string> { { "item2", "value2" } };

            var adapter = new CascadingMultipleDictionaryAdapter(new[] { dict1, dict2 });

            Assert.Equal("value1", adapter["item1"]);
            Assert.Equal("value2", adapter["item2"]);
            Assert.Null(adapter["item3"]);
        }
コード例 #5
0
        public void ItContainsTheKeysOfSourceDictionaries()
        {
            var dict1 = new Dictionary<string, string> { { "item1", "value1" } };
            var dict2 = new Dictionary<string, string> { { "item2", "value2" } };

            var adapter = new CascadingMultipleDictionaryAdapter(new[] { dict1, dict2 });

            Assert.Equal(2, adapter.Sources.Count());
            Assert.True(adapter.Contains("item1"));
            Assert.True(adapter.Contains("item2"));
            Assert.False(adapter.Contains("item3"));
        }
コード例 #6
0
 public void EmptyInputIsOk()
 {
     // ReSharper disable once UnusedVariable
     var dummy = new CascadingMultipleDictionaryAdapter(new List<IDictionary<string, string>>());
 }
コード例 #7
0
        public void AddingNullSourceThrows()
        {
            var adapter = new CascadingMultipleDictionaryAdapter();

            Assert.Throws<ArgumentNullException>(() => adapter.AddSource(null));
        }