| ▼Nca | |
| ▼Nuqac | |
| ▼Nlif | |
| ▼Nsynthia | |
| ►Ncollection | Pickers generating and manipulating collections, such as lists and sets |
| CComparableList | Class that extends Java's ArrayList class to implements the Comparable interface |
| CComparableSet | |
| CComposeList | |
| CComposeShrunkList | Given a reference list, picks lists that are smaller |
| CCompositePicker | Picker that merges the result of other pickers into a composite data structure |
| CDeleteElement | Mutator that receives a list and selects an element to delete from it |
| CListPicker | Picker that merges the result of other pickers into a list |
| CMutateElement | Picker that selects an element of a list and applies the result of a mutator on this element |
| CSetPicker | Picker that merges the result of other pickers into a set |
| CSwap | Mutator that receives a list and selects two elements to be swapped |
| ►Nenumerative | Pickers that systematically enumerate all values from a set of other pickers |
| CAllBooleans | Picker who implements EnumerativePicker |
| CAllElements | |
| CAllIntegers | Picker who implements EnumerativePicker |
| CAllPickers | Picker who implements Bounded |
| CBound | Return the value picked by a picker a defined number of times |
| CUnbound | |
| ►Nexplanation | Objects related to the explanation of results produced by pickers |
| CExplanation | Constructs an explanation graph for the output produced by a picker |
| CNthSuccessiveOutput | A Part pointing to the n-th output produced by a picker since its last call to reset() |
| ►Ngrammar | Pickers generating sequences based on a context-free grammar |
| CGrammarSentence | Picker that generates sentences from a format grammar |
| CMain | Dummy main file |
| ►Nmap | |
| CAreaMap | |
| CAreaMapPicker | |
| CPoint | |
| ►Nrandom | Pickers that produce pseudo-random objects such as numbers |
| CAffineTransform | Applies an affine transform to a value produced by another picker |
| CBiasedRandomFloat | Generates pseudo-random floating-point numbers in the interval [0,1], but according to a probability distribution that is not uniform |
| CGaussianFloat | Produces a float picked from a Gaussian probability distribution |
| CPoissonInteger | Generates integer numbers following a Poisson distribution |
| CRandom | An instance of this class is used to generate a stream of pseudorandom numbers |
| CRandomBoolean | Picks a Boolean value |
| CRandomFloat | Picks a floating point number uniformly in an interval |
| CRandomInteger | Picks an integer uniformly in an interval |
| CRandomPicker | Picks an object based on the value of a random number generator |
| CRandomSubList | An equivalent of RandomSubString but for lists |
| ►Nrelative | Pickers that produce a value in relation to another value |
| CPickIf | Returns object from a picker satisfying a condition |
| CPickSmallerComparable | A variant of PickIf that selects an element if it is smaller than a reference object |
| CPickSmallerComparator | A variant of PickIf that selects an element if it is smaller than a reference object |
| ►Nsequence | Pickers related to the generation of a sequence of values |
| CBehaviorTree | Generates a sequence of objects by following a behavior tree |
| CKnit | Picker producing an "interleaved" sequence of objects from calls to multiple other pickers |
| CMarkovChain | Generates a sequence of objects by a random walk in a Markov chain |
| CPlayback | Picker that returns values taken from a list |
| CRecord | Picker that records and returns the values produced by another picker |
| ►Nsignal | Pickers producing values representing a form of (periodic) signal |
| CPeriodicSignal | A signal picker that is characterized by an amplitude and a phase |
| CSineWave | A periodic signal picker producing a sine wave |
| ►Nstring | Pickers producing and manipulating character strings |
| CAsString | Utility picker that converts an input into a string |
| CRandomPrefix | Like RandomSubString, but this time, the Picker returns a prefix of the original strings of randomly selected length |
| CRandomString | Generates a random character string |
| CRandomSubString | RandomPicker that produces random substrings from an original one |
| CRandomSuffix | Just like RandomPrefix but for suffixes |
| CRandomTrim | A combination of RandomPrefix and RandomSuffix |
| CStringPattern | Generates a string according to a predefined pattern |
| ►Ntest | Classes that enable Synthia to operate as a fuzz testing tool |
| CAction | Interface signaling that an object can perform an "action" |
| CAssert | |
| CCompositeAction | A Action that is made of a sequence of elementary actions |
| CMonkey | Performs monkey testing by interacting with a component |
| ►Ntree | Pickers for the generation of trees made of nodes with labels |
| CColoredNodePicker | |
| CColoredTreeRenderer | |
| CGraphCrawler | |
| CGraphPicker | |
| CGraphRenderer | Renders a tree of labeled nodes as a Graphviz input file |
| CIntegerNodePicker | |
| CMarkovReader | Converts a graph into an equivalent Markov chain |
| CNode | Simple implementation of a labeled nodel |
| CNodePicker | |
| CStringNodePicker | |
| CTreePicker | Generates a tree of labeled nodes |
| ►Nutil | Miscellaneous pickers performing various functions |
| CArrayPicker | Picker that merges the result of other pickers into an array |
| CAsInt | Utility picker that converts an input into an integer |
| CAsLong | Utility picker that converts an input into a long integer |
| CChoice | Picks an element from a collection, where the probability of picking each element can be user-defined |
| CConstant | Picker that returns the same object every time |
| CDelay | Picker that does not produce any value, but causes the thread to wait for a moment on every call to pick() |
| CDiscardRatio | A utility picker to calculate the discard ratio of a PickIf picker |
| CFreeze | Picker that returns the first object fetched from another picker and repeats it endlessly |
| CMutate | Transforms an object from a picker by selecting a mutator and applying it to an object |
| CMutator | A picker that applies a transformation ("mutation") on the value produced by another picker |
| CNothingPicker | A RelativePicker that only throws a NoMoreElementException when the pick() method is called |
| COffset | Takes the numerical value of a picker, and offsets it by an amount determined by another picker |
| COnce | Picker that returns the first value fetched from another picker, and then null afterwards |
| CReplace | |
| ►CShare | Allows values of a single picker to be shared among multiple copies of a picker instance |
| CQueuePicker | A picker that acts as a proxy for the values obtained by the parent Share picker |
| CTick | Generates a sequence of monotonically increasing numerical values |
| ►Nvector | Pickers generating multi-dimensional numerical vectors |
| CHyperspherePicker | Generates n-dimensional vectors with a given modulus |
| CPrismPicker | Generates a vector by independently picking a value for each of its coordinates |
| CVectorPicker | Interface for pickers that generate arrays of floating-point numbers |
| ►Nwidget | |
| CChooseAction | |
| CBounded | Interface used to signal that a picker enumerates all values from a set |
| CCannotShrinkException | An exception to throw when a picker can't pick an other element |
| CGiveUpException | An exception to throw to prevent the pick method of a PickIf picker from falling into an infinite loop |
| CIndexPicker | Picker for an integer from 0 to a fixed bound |
| CMain | Dummy main file |
| CNoMoreElementException | An exception to throw when a picker can't pick an other element |
| CPicker | Picks an object |
| CPickerException | Generic runtime exception thrown by the Picker interface |
| CReactive | Interface implemented by pickers whose picking of objects can be altered by external information |
| CResettable | Signals that an object can be put back into its initial state |
| CSeedable | Interface implemented by objects that can be seeded |
| CSequenceShrinkable | Signals that a picker can shrink the sequence of values it has produced since its last reset |
| CShrinkable | Interface signaling that a picker can be shrunk |
| ▼Nexamples | |
| ▼Napache | Generates a fake web server log simulating the trajectory of multiple visitors through a randomly-generated site map |
| CGenerateLog | Main program that generates the simulated log file interleaving multiple visitor instances |
| ▼CLogLine | Representation of a line of Apache's access log |
| CStatusCode | The possible status codes associated to each request |
| CVisitorPicker | A picker producing instances of visitors |
| ▼Nbasic | Simple examples involving only basic pickers |
| CBiasedCoin | Uses RandomBoolean to simulate a series of biased coin tosses |
| ▼Ngrammar | Generates values based on derivations of a formal grammar in Backus-Naur form |
| CGrammarDemo | Generates character strings corresponding to sentences formed according to a BNF grammar |
| ▼Ngraphs | Illustrates pickers generating various trees and general graphs |
| CBarabasiAlbert | Generates a graph following the Barabási–Albert model |
| CPickTrees1 | |
| ▼Ngui | Examples showing pickers interacting with elements of a graphical user interface |
| ▼CCalculator | A simple calculator |
| CCalculatorPanel | The actual panel containing the interface of the calculator |
| CCalculatorMonkey | Performs monkey testing over a simple calculator, using Synthia's Monkey |
| CWidgetAction | A Action that performs a concrete action on a widget |
| ▼Nhypersphere | A series of simple examples showing how the same HyperspherePicker can produce points following different patterns depending on the composition of pickers given as its input arguments |
| CVariation1 | Generates two-dimensional points lying along two concentric circles |
| CVariation2 | Generates two-dimensional points lying at right angles along a randomly selected circle |
| CVariation3 | Generates two-dimensional points producing a spiral pattern |
| CVariation4 | Generates two-dimensional points lying along an oblique line |
| ▼Nmutation | Examples showing the object mutation functionality of some pickers |
| CMutatedLists | Illustration of mutation operations on lists and list elements |
| ▼Noscilloscope | Examples combining the SineWave picker with a two-dimensional PrismPicker |
| CAMRadio | Illustrates the principle of amplitude modulation using sine wave and prism pickers |
| CFMRadio | Illustrates the principle of frequency modulation using sine wave and prism pickers |
| CLissajous | Uses the SineWave picker with the PrismPicker to generate Lissajous figures on an oscilloscope screen |
| COscilloscope | A simple JFrame that simulates the operation of an oscilloscope |
| ▼Nprovenance | Examples illustrating the explainability functionalities of Synthia |
| CExplanationList1 | Demonstration of Synthia's explainability features on a wiring of pickers producing a list of points |
| CExplanationList2 | A variation of ExplanationList1 where a different explanation is requested, showing that fine-grained parts of the output can be tracked |
| ▼Nquickcheck | Examples illustrating the shrinking functionalities of Synthia |
| CPrime | Simple illustration of the shrinking process on randomly generated integers |
| CSort | Illustrates the shrinking process when testing a procedure that sorts lists of numbers |
| ▼Nsequences | Examples of pickers generating sequences of objects |
| CBehaviorTreeExample | Generates a random sequence of strings whose content is defined by a behavior tree |
| CMarkovSimple | Generates a sequence of values according to a Markov chain |
| ▼Nutil | |
| CUtilities | Object providing a few utility methods to simplify the examples in this project |