示例#1
0
        public void DefaultPolicyUsedWhenSpecificPolicyIsntAvailable()
        {
            PolicyList list          = new PolicyList();
            MockPolicy defaultPolicy = new MockPolicy();

            list.SetDefault <IBuilderPolicy>(defaultPolicy);

            Assert.AreSame(defaultPolicy, list.Get <IBuilderPolicy>(typeof(object), null));
        }
示例#2
0
        public void CanClearPolicy()
        {
            PolicyList list   = new PolicyList();
            MockPolicy policy = new MockPolicy();

            list.Set <IBuilderPolicy>(policy, typeof(string), "1");
            list.Clear <IBuilderPolicy>(typeof(string), "1");

            Assert.IsNull(list.Get <IBuilderPolicy>(typeof(string), "1"));
        }
示例#3
0
        public void CanClearDefaultPolicy()
        {
            PolicyList list = new PolicyList();
            MockPolicy defaultPolicy = new MockPolicy();
            list.SetDefault<IBuilderPolicy>(defaultPolicy);

            list.ClearDefault<IBuilderPolicy>();

            Assert.IsNull(list.Get<IBuilderPolicy>(typeof(object), null));
        }
		public void CanClearPolicy()
		{
			PolicyList list = new PolicyList();
			MockPolicy policy = new MockPolicy();

			list.Set<IBuilderPolicy>(policy, typeof(string), "1");
			list.Clear<IBuilderPolicy>(typeof(string), "1");

			Assert.IsNull(list.Get<IBuilderPolicy>(typeof(string), "1"));
		}
示例#5
0
        public void SpecificPolicyOverridesDefaultPolicy()
        {
            PolicyList list           = new PolicyList();
            MockPolicy defaultPolicy  = new MockPolicy();
            MockPolicy specificPolicy = new MockPolicy();

            list.Set <IBuilderPolicy>(specificPolicy, typeof(object), null);
            list.SetDefault <IBuilderPolicy>(defaultPolicy);

            Assert.AreSame(specificPolicy, list.Get <IBuilderPolicy>(typeof(object), null));
        }
示例#6
0
        public void SetOverwritesExistingPolicy()
        {
            PolicyList list    = new PolicyList();
            MockPolicy policy1 = new MockPolicy();
            MockPolicy policy2 = new MockPolicy();

            list.Set <IBuilderPolicy>(policy1, typeof(string), "1");
            list.Set <IBuilderPolicy>(policy2, typeof(string), "1");

            Assert.AreSame(policy2, list.Get <IBuilderPolicy>(typeof(string), "1"));
        }
示例#7
0
        public void CanClearDefaultPolicy()
        {
            PolicyList list          = new PolicyList();
            MockPolicy defaultPolicy = new MockPolicy();

            list.SetDefault <IBuilderPolicy>(defaultPolicy);

            list.ClearDefault <IBuilderPolicy>();

            Assert.IsNull(list.Get <IBuilderPolicy>(typeof(object), null));
        }
		public void SetOverwritesExistingPolicy()
		{
			PolicyList list = new PolicyList();
			MockPolicy policy1 = new MockPolicy();
			MockPolicy policy2 = new MockPolicy();

			list.Set<IBuilderPolicy>(policy1, typeof(string), "1");
			list.Set<IBuilderPolicy>(policy2, typeof(string), "1");

			Assert.AreSame(policy2, list.Get<IBuilderPolicy>(typeof(string), "1"));
		}
示例#9
0
        public void CanAddMultiplePoliciesToBagAndRetrieveThem()
        {
            PolicyList list    = new PolicyList();
            MockPolicy policy1 = new MockPolicy();
            MockPolicy policy2 = new MockPolicy();

            list.Set <IBuilderPolicy>(policy1, typeof(object), "1");
            list.Set <IBuilderPolicy>(policy2, typeof(string), "2");

            Assert.AreSame(policy1, list.Get <IBuilderPolicy>(typeof(object), "1"));
            Assert.AreSame(policy2, list.Get <IBuilderPolicy>(typeof(string), "2"));
        }
示例#10
0
        public void CanAddMultiplePoliciesToBagAndRetrieveThem()
        {
            PolicyList list = new PolicyList();
            MockPolicy policy1 = new MockPolicy();
            MockPolicy policy2 = new MockPolicy();

            list.Set<IBuilderPolicy>(policy1, typeof(object), "1");
            list.Set<IBuilderPolicy>(policy2, typeof(string), "2");

            Assert.AreSame(policy1, list.Get<IBuilderPolicy>(typeof(object), "1"));
            Assert.AreSame(policy2, list.Get<IBuilderPolicy>(typeof(string), "2"));
        }
示例#11
0
        public void DefaultPolicyUsedWhenSpecificPolicyIsntAvailable()
        {
            PolicyList list = new PolicyList();
            MockPolicy defaultPolicy = new MockPolicy();

            list.SetDefault<IBuilderPolicy>(defaultPolicy);

            Assert.AreSame(defaultPolicy, list.Get<IBuilderPolicy>(typeof(object), null));
        }
示例#12
0
        public void SpecificPolicyOverridesDefaultPolicy()
        {
            PolicyList list = new PolicyList();
            MockPolicy defaultPolicy = new MockPolicy();
            MockPolicy specificPolicy = new MockPolicy();

            list.Set<IBuilderPolicy>(specificPolicy, typeof(object), null);
            list.SetDefault<IBuilderPolicy>(defaultPolicy);

            Assert.AreSame(specificPolicy, list.Get<IBuilderPolicy>(typeof(object), null));
        }