public void throws_TypeMatcherError_if_conditions_empty_and_filter_requested()
        {
            TypeMatcher emptyInstance = new TypeMatcher();

            emptyInstance.AllOf(EMPTY_CLASS_VECTOR.ToArray()).AnyOf(EMPTY_CLASS_VECTOR.ToArray()).NoneOf(EMPTY_CLASS_VECTOR.ToArray());

            emptyInstance.CreateTypeFilter();
        }
		/*============================================================================*/
		/* Private Functions                                                          */
		/*============================================================================*/

		private ITypeFilter CreateTypeFilter(Type[] allOf, Type[] anyOf = null, Type[] noneOf = null)
		{
			TypeMatcher matcher = new TypeMatcher();
			if (allOf != null)
				matcher.AllOf(allOf);
			if (anyOf != null)
				matcher.AnyOf(anyOf);
			if (noneOf != null)
				matcher.NoneOf(noneOf);

			return matcher.CreateTypeFilter();
		}
        public void not_supplying_anyOf_causes_no_errors()
        {
            TypeFilter expectedFilter = new TypeFilter(ALL_OF, new List <Type> {
            }, NONE_OF);

            instance.AllOf(ALL_OF.ToArray()).NoneOf(NONE_OF.ToArray());
            assertMatchesTypeFilter(expectedFilter, instance.CreateTypeFilter());
        }
		public void throws_TypeMatcherError_if_conditions_empty_and_filter_requested()
		{
			TypeMatcher emptyInstance = new TypeMatcher();
			emptyInstance.AllOf(EMPTY_CLASS_VECTOR.ToArray()).AnyOf(EMPTY_CLASS_VECTOR.ToArray()).NoneOf(EMPTY_CLASS_VECTOR.ToArray());

			emptyInstance.CreateTypeFilter();
		}