All Classes and Interfaces
Class
Description
info about if the field is public
and if not, how to get/set value
Represent $all operation.
{ field: { $all: [ value1 , value2 ... ] } }
Represents a logical AND of multiple conditions.
Represents a CQL AND operation.
Represent $and operation.
{ $and: [ { expression1 }, { expression2 } , ... , { expressionN } ] }
The any-label wildcard % in a label expression, e.g.
An operand that is an arithmetic expression over other operands, e.g.
The arithmetic connectives an
ArithmeticOperand can carry.array param
info for JDK:
BigInteger constructors and operations throw ArithmeticException when the result is
out of the supported range of -2^Integer.MAX_VALUE (exclusive) to +2^Integer.MAX_VALUE (exclusive).
boolean param
this is created for handling binary in thrift, see https://thrift.apache.org/docs/types
handle it as string
a type schema for java.nio.ByteBuffer
byte param
char param
a set of util for generating instance creation and assertion with java in tests
in order to make endpoint invocation
collection param
collection type which includes Array, List, Set
A comparison from a WHERE clause: left OP right.
Represents a comparison operation.
Comparison operators used in Cypher WHERE clauses.
Represents a CQL CONTAINS KEY operation.
Represents a CQL CONTAINS operation.
This class provides an empty implementation of
CqlParserVisitor,
which can be extended to create a visitor which only needs to handle a subset
of the available methods.This interface defines a complete generic visitor for a parse tree produced
by
CqlParser.Represents a CQL query operation.
contains a set of method to customize info for testing
need to check with Andrea if putting them in this interface or moving them to SutController
a customized criteria to check if a field is required or (not nullable) with the following
three situations
- only [annotationType] is specified, then the field with such annotation
would be considered as `required`
- [annotationType], [annotationMethod] and [equalsTo] are specified, then
the field is considered as `required` only if the field is applied with the annotation
and the method of the annotation returns the same value as [equalsTo]
cycle object
CypherParser implementation built on the official Neo4j Cypher25
ANTLR grammar.This class provides an empty implementation of
Cypher25ParserVisitor,
which can be extended to create a visitor which only needs to handle a subset
of the available methods.This interface defines a complete generic visitor for a parse tree produced
by
Cypher25Parser.Represents a condition extracted from a Cypher query.
Parses the MATCH clause of a Cypher query into a structural
MatchOperation.Thrown when a Cypher query cannot be parsed: either it is not syntactically
valid Cypher, or it does not contain the expected MATCH clause.
Builds the default
CypherParser implementation.Represents a parsed Cypher query operation.
handle date param with java.util.Date
type schema for date
double param
util class for handling dto
Represent $elemMatch operation.
{ field: { $elemMatch: { query1, query2, ... } } }
Main class used to implement an EvoMaster Driver.
Note: usually a RESTful webservice would be stateless.
endpoint dto for RPC service
enum parameter
enumeration
Represent $eq operation.
{ field: { $eq: value } }
Represent $exists operation.
{ field: { $exists: boolean } }
DSL (Domain Specific Language) for expectation management.
float param
Represent $gte operation.
{ field: { $gte: value } }
Represent $gt operation.
{ field: { $gt: value } }
Two possible implicit operations (no operator)
Equals: { field: value }
And: {{ expression1 }, { expression2 } , ... , { expressionN } }
Represents a CQL IN operation for a single column.
Represent $in operation.
{ field: { $in: [value1, value2, ... valueN ] } }
Class responsible to handle the SutController in a way
in which bytecode instrumentation is activated.
schema dto of the RCP service
int param
Represent the operation that results from applying a $not to an $all operation.
Represent the operation that results from applying a $not to a $mod operation.
Represent the operation that results from applying a $not to a $size operation.
Represent the operation that results from applying a $not to a type operation.
supported specification of Java Dto
the specification would relate to how to construct dto
this class is to handle constraints defined with javax.validation.constraints
following the link
https://javaee.github.io/javaee-spec/javadocs/javax/validation/constraints/package-summary.html
Represent $jsonSchema operation.
Represents a label condition: n:Label
Extracted from patterns like (n:Person) or (n:Person:Employee)
Represent $lte operation.
{ field: { $lte: value } }
Represent $lt operation.
{ field: { $lt: value } }
A list operand, e.g. the right-hand side of x IN [1, 2, 3].
thrift
ArrayList (see https://thrift.apache.org/docs/types#containers)
A constant operand: a string, number, boolean or null literal.
long param
thrift
HashMap (see https://thrift.apache.org/docs/types#containers)
map type
Represents a parsed MATCH query containing the structural pattern and extracted conditions.
Represents the structural MATCH pattern (P_s) after stripping labels and properties.
Represent $mod operation.
{ field: { $mod: [ divisor, remainder ] } }
DSL (Domain Specific Language) for operations on
the Mongo Database
Class used to act upon Mongo commands executed by the SUT
Class used to execute Mongo commands
Selectors for operations whose value consist of a list of conditions
a named instance of the type with its value, eg Param/Field
it could be a request param or a response
Represent $nearSphere operation.
{ field: { $nearSphere: [ x, y ], $maxDistance: value, $minDistance: value } }
or
{ field: { $nearSphere: {$geometry: {type: "Point", coordinates: [ longitude, latitude ]}, $maxDistance: value, $minDistance: value}}
Represent $nor operation.
{ $nor: [ { expression1 }, { expression2 },
Represents a logical NOT of a condition.
Represent $ne operation.
{ field: { $ne: value } }
Represent $nin operation.
{ field: { $nin: [ value1, value2 ... valueN ] } }
Represent $not operation.
{ field: { $not: { operator-expression } } }
object param
object type
Helper class for working with OpenSearch queries.
One operand of a condition: a side of a WHERE comparison or an inline property value.
Represents a logical OR of multiple conditions.
Represent $or operation.
{ $or: [ { expression1 }, { expression2 }, ... , { expressionN } ] }
map entry which is only used for handling map
used AbstractMap.SimpleEntry for handling map
Represents an edge in a structural MATCH pattern.
Represents a node in a structural MATCH pattern (P_s).
Primitive types Param
primitive types
Depending on which kind of SUT we are dealing with (eg, REST, GraphQL or SPA frontend),
there is different info that must be provided.
Represents a property equality condition
n.key = value extracted from an inline property
map like {name: "Alice"}.A property reference operand: variable.key (e.g. n.age), resolved from the graph
element bound to the variable under the current mapping.
this is for handling bytes in gRPC with protobuf3 ByteString
handle it as string with utf8 now
copyFromUtf8
toStringUtf8
this class presents extracted info of a field of protobuf dto
A quantified path pattern (QPP), i.e. a sub-pattern repeated a number of times,
such as
((a)-[:KNOWS]->(b)){1,3}.Represents a MongoDB query operation.
Represents an OpenSearch query operation.
Determines to which operation a query correspond.
A selector is used to determine if a query correspond to a certain operation.
A selector is used to determine if a query correspond to a certain operation.
A WHERE predicate kept unchanged because the structural model does not decompose
it (e.g. a boolean-returning function call or a bare boolean expression).
An operand kept unchanged because the model does not decompose it: a function call, a parameter,
or string concatenation.
This class will link a given RedisCommand to the result of the distance calculation for that commmand.
Class used to execute Redis commands
This class will have the distance for a RedisCommand (between 0 and 1)
and the number of evaluated keys in that distance calculation.
DSL (Domain Specific Language) for insertions on
the Redis Database.
Class used to act upon Redis commands executed by the SUT
This class will contain all necessary information from Redis to perform the distance calculation for a given command.
Utils class for auxiliary operations in Redis heuristic value calculations.
This class will hold the data associated to the value for a given key in Redis.
RedisClient that uses Lettuce dynamically via reflection, avoiding
compile-time dependency on Spring or Lettuce.
Represent $regex operation.
Created by arcuri82 on 05-Nov-18.
created by manzhang on 2021/11/4
handle RPC exception, for instance
- extract possible category eg, application, protocol, if possible
- extract exception info, eg, customized exception, message, or status code
define RPCProblem used in driver
thrift
HashSet (see https://thrift.apache.org/docs/types#containers)
int param
Represent $size operation.
{ field: { $size: value } }
string param
string type
Abstract class used to connect to the EvoMaster process, and
that is responsible to start/stop/restart the tested application,
ie the system under test (SUT)
Base interface used to control the System Under Test (SUT)
from the generated tests.
Represent Term operation.
{ term: { field: value } }
Represent $text operation.
Represents a relationship type condition: type(r) = T
Extracted from patterns like -[:KNOWS]-> or -[r:WORKS_AT]->
Represent $type operation.
type schema
{ field: { $type: BSON type } }
Represent $where operation.
Represents a logical XOR of multiple conditions.