All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.jqwik.api.arbitraries.CharacterArbitrary Maven / Gradle / Ivy

There is a newer version: 1.9.2
Show newest version
package net.jqwik.api.arbitraries;

import org.apiguardian.api.*;

import net.jqwik.api.*;

import static org.apiguardian.api.API.Status.*;

/**
 * Fluent interface to configure the generation of Character and char values.
 */
@API(status = MAINTAINED, since = "1.0")
public interface CharacterArbitrary extends Arbitrary {

	/**
	 * Allow all unicode chars to show up in generated values.
	 *
	 * Resets previous settings.
	 */
	CharacterArbitrary all();

	/**
	 * Allow all chars in {@code allowedChars} show up in generated values.
	 *
	 * Adds to all already allowed chars.
	 */
	@API(status = MAINTAINED, since = "1.1.3")
	CharacterArbitrary with(char... allowedChars);

	/**
	 * Allow all chars generated by {@code characterArbitrary}.
	 *
	 * Adds to all already allowed chars.
	 */
	@API(status = EXPERIMENTAL, since = "1.3.0")
	CharacterArbitrary with(Arbitrary characterArbitrary);

	/**
	 * Allow all chars in {@code allowedChars} show up in generated values.
	 *
	 * Adds to all already allowed chars.
	 */
	@API(status = MAINTAINED, since = "1.2.1")
	CharacterArbitrary with(CharSequence allowedChars);

	/**
	 * Allow all chars within {@code min} (included) and {@code max} (included) to show up in generated values.
	 *
	 * Adds to all already allowed chars.
	 */
	@API(status = MAINTAINED, since = "1.1.3")
	CharacterArbitrary range(char min, char max);

	/**
	 * Allow all ascii chars to show up in generated values.
	 *
	 * Adds to all already allowed chars.
	 */
	CharacterArbitrary ascii();

	/**
	 * Allow all numeric chars (digits) to show up in generated values.
	 *
	 * Adds to all already allowed chars.
	 */
	CharacterArbitrary digit();

	/**
	 * Allow all whitespace chars to show up in generated values.
	 *
	 * Adds to all already allowed chars.
	 */
	@API(status = MAINTAINED, since = "1.1.3")
	CharacterArbitrary whitespace();
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy