test_class.declarator: input
test_class.original_string: Set<String> input;
test_class.type: Set<String>
test_class.var_name: input
test_class.file: lib/src/test/java/com/busybusy/dbc/conditions/SetConditionTest.java
test_class.identifier: SetConditionTest
test_case.body: @Test
  	public void hasSizeBetween() throws Exception
  	{
  		SetCondition<Set<String>, String> condition = new SetCondition<>(this.input);
  		condition.hasSizeBetween(2, 4);
  
  		SetCondition<Set<String>, String> badCondition = new SetCondition<>(this.input);
  		Assertions.assertThatThrownBy(() -> badCondition.hasSizeBetween(1, 2))
  		          .isInstanceOf(DbcAssertionError.class)
  		          .hasCauseInstanceOf(IllegalArgumentException.class);
  	}
test_case.class_method_signature: SetConditionTest.hasSizeBetween()
test_case.full_signature: @Test public void hasSizeBetween()
test_case.identifier: hasSizeBetween
test_case.invocations: hasSizeBetween hasCauseInstanceOf isInstanceOf assertThatThrownBy hasSizeBetween
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void hasSizeBetween()
focal_class.file: lib/src/main/java/com/busybusy/dbc/conditions/SetCondition.java
focal_class.identifier: SetCondition
focal_class.interfaces: implements SetChecks<T, E, SetCondition<T, E>>
focal_class.class_method_signature: SetCondition.SetCondition(T subject)
focal_class.full_signature: public  SetCondition(T subject)
focal_class.identifier: SetCondition
focal_class.modifiers: public
focal_class.parameters: (T subject)
focal_class.signature:  SetCondition(T subject)
focal_class.class_method_signature: SetCondition.isNotEmpty()
focal_class.full_signature: @Override public SetCondition<T, E> isNotEmpty()
focal_class.identifier: isNotEmpty
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: SetCondition<T, E>
focal_class.signature: SetCondition<T, E> isNotEmpty()
focal_class.class_method_signature: SetCondition.hasSize(int size)
focal_class.full_signature: @Override public SetCondition<T, E> hasSize(int size)
focal_class.identifier: hasSize
focal_class.modifiers: @Override public
focal_class.parameters: (int size)
focal_class.return: SetCondition<T, E>
focal_class.signature: SetCondition<T, E> hasSize(int size)
focal_class.class_method_signature: SetCondition.hasSizeBetween(int startInclusive, int endInclusive)
focal_class.full_signature: @Override public SetCondition<T, E> hasSizeBetween(int startInclusive, int endInclusive)
focal_class.identifier: hasSizeBetween
focal_class.modifiers: @Override public
focal_class.parameters: (int startInclusive, int endInclusive)
focal_class.return: SetCondition<T, E>
focal_class.signature: SetCondition<T, E> hasSizeBetween(int startInclusive, int endInclusive)
focal_class.class_method_signature: SetCondition.hasSizeGreaterThan(int minSizeExclusive)
focal_class.full_signature: @Override public SetCondition<T, E> hasSizeGreaterThan(int minSizeExclusive)
focal_class.identifier: hasSizeGreaterThan
focal_class.modifiers: @Override public
focal_class.parameters: (int minSizeExclusive)
focal_class.return: SetCondition<T, E>
focal_class.signature: SetCondition<T, E> hasSizeGreaterThan(int minSizeExclusive)
focal_class.class_method_signature: SetCondition.hasSizeGreaterThanOrEqual(int minSize)
focal_class.full_signature: @Override public SetCondition<T, E> hasSizeGreaterThanOrEqual(int minSize)
focal_class.identifier: hasSizeGreaterThanOrEqual
focal_class.modifiers: @Override public
focal_class.parameters: (int minSize)
focal_class.return: SetCondition<T, E>
focal_class.signature: SetCondition<T, E> hasSizeGreaterThanOrEqual(int minSize)
focal_class.class_method_signature: SetCondition.hasSizeLessThan(int maxSizeExclusive)
focal_class.full_signature: @Override public SetCondition<T, E> hasSizeLessThan(int maxSizeExclusive)
focal_class.identifier: hasSizeLessThan
focal_class.modifiers: @Override public
focal_class.parameters: (int maxSizeExclusive)
focal_class.return: SetCondition<T, E>
focal_class.signature: SetCondition<T, E> hasSizeLessThan(int maxSizeExclusive)
focal_class.class_method_signature: SetCondition.hasSizeLessThanOrEqual(int maxSize)
focal_class.full_signature: @Override public SetCondition<T, E> hasSizeLessThanOrEqual(int maxSize)
focal_class.identifier: hasSizeLessThanOrEqual
focal_class.modifiers: @Override public
focal_class.parameters: (int maxSize)
focal_class.return: SetCondition<T, E>
focal_class.signature: SetCondition<T, E> hasSizeLessThanOrEqual(int maxSize)
focal_class.class_method_signature: SetCondition.contains(E value)
focal_class.full_signature: @Override public SetCondition<T, E> contains(E value)
focal_class.identifier: contains
focal_class.modifiers: @Override public
focal_class.parameters: (E value)
focal_class.return: SetCondition<T, E>
focal_class.signature: SetCondition<T, E> contains(E value)
focal_class.superclass: extends BasicCondition<T, SetCondition<T, E>>
focal_method.body: @Override
  	public SetCondition<T, E> hasSizeBetween(int startInclusive, int endInclusive)
  	{
  		require(this.subject).isNotNull();
  
  		int setSize = this.subject.size();
  		if (!((setSize >= startInclusive && setSize <= endInclusive) || (setSize <= startInclusive && setSize >= endInclusive)))
  		{
  			DbcAssertionError.throwNew(new IllegalArgumentException("Expected set size to be between <" + startInclusive + "> and < " + endInclusive + "> but was <" + setSize + ">"), this.message);
  		}
  
  		return result();
  	}
focal_method.class_method_signature: SetCondition.hasSizeBetween(int startInclusive, int endInclusive)
focal_method.full_signature: @Override public SetCondition<T, E> hasSizeBetween(int startInclusive, int endInclusive)
focal_method.identifier: hasSizeBetween
focal_method.invocations: isNotNull require size throwNew result
focal_method.modifiers: @Override public
focal_method.parameters: (int startInclusive, int endInclusive)
focal_method.return: SetCondition<T, E>
focal_method.signature: SetCondition<T, E> hasSizeBetween(int startInclusive, int endInclusive)