MockElementQuery
- Type
- Class
- Namespace
- craft\test\mockclasses\elements
- Inherits
- craft\test\mockclasses\elements\MockElementQuery » craft\elements\db\ElementQuery » craft\db\Query » yii\db\Query » yii\base\Component » yii\base\BaseObject
- Implements
- ArrayAccess, IteratorAggregate, craft\elements\db\ElementQueryInterface, yii\base\Configurable, yii\db\ExpressionInterface, yii\db\QueryInterface
- Uses traits
- craft\base\ClonefixTrait, yii\base\ArrayableTrait, yii\db\QueryTrait
- Since
- 3.5
MockElementQuery is used to mimic element queries and mock their results
Public Properties
Property | Description |
---|---|
ancestorDist | integer, null – The maximum number of levels that results may be separated from ancestorOf(). |
ancestorOf | integer, craft\base\ElementInterface, null – The element (or its ID) that results must be an ancestor of. |
archived | boolean – Whether to return only archived elements. |
asArray | boolean – Whether to return each element as an array. |
behaviors | yii\base\Behavior – List of behaviors attached to this component. |
cacheTags | string[] |
cachedResult | \craft\elements\db\TElement[] , null – $elements The resulting elements, or null if setCachedResult() was never called or the criteria has changed |
criteria | array |
customFields | craft\base\FieldInterface[], null – The fields that may be involved in this query. |
dateCreated | mixed – When the resulting elements must have been created. |
dateUpdated | mixed – When the resulting elements must have been last updated. |
descendantDist | integer, null – The maximum number of levels that results may be separated from descendantOf(). |
descendantOf | integer, craft\base\ElementInterface, null – The element (or its ID) that results must be a descendant of. |
distinct | boolean – Whether to select distinct rows of data only. |
draftCreator | integer, null – The drafts’ creator ID |
draftId | integer, null – The ID of the draft to return (from the drafts table) |
draftOf | mixed – The source element ID that drafts should be returned for. |
drafts | boolean, null – Whether draft elements should be returned. |
eagerLoadAlias | string, null – The eager-loading alias that should be used. |
eagerLoadHandle | string, null – The handle that could be used to eager-load the query's target elmeents. |
eagerLoadSourceElement | craft\base\ElementInterface, null – The source element that this query is fetching relations for. |
eagerly | boolean – Whether the query should be used to eager-load results for the $eagerSourceElement and any other elements in its collection. |
elementType | class-string<\craft\elements\db\TElement> – The name of the craft\base\ElementInterface class. |
emulateExecution | boolean – Whether to emulate the actual query execution, returning empty or false results. |
fixedOrder | boolean – Whether results should be returned in the order specified by id(). |
from | array, null – The table(s) to be selected from. |
groupBy | array, null – How to group the query results. |
hasDescendants | boolean, null – Whether the resulting elements must have descendants. |
having | string, array, yii\db\ExpressionInterface, null – The condition to be applied in the GROUP BY clause. |
id | mixed – The element ID(s). |
ignorePlaceholders | boolean – Whether to ignore placeholder elements when populating the results. |
inBulkOp | string, null – The bulk element operation key that the resulting elements were involved in. |
inReverse | boolean – Whether the results should be queried in reverse. |
indexBy | string, callable, null – The name of the column by which the query results should be indexed by. |
iterator | ArrayIterator |
join | array, null – How to join with other tables. |
leaves | boolean – Whether the elements must be “leaves” in the structure. |
level | mixed – The element’s level within the structure |
limit | integer, yii\db\ExpressionInterface, null – Maximum number of records to be returned. |
nextSiblingOf | integer, craft\base\ElementInterface, null – The element (or its ID) that the result must be the next sibling of. |
notRelatedTo | mixed – The element relation criteria. |
offset | integer, yii\db\ExpressionInterface, null – Zero-based offset from where the records are to be returned. |
orderBy | array, null – How to sort the query results. |
params | array, null – List of query parameter values indexed by parameter placeholders. |
positionedAfter | integer, craft\base\ElementInterface, null – The element (or its ID) that the results must be positioned after. |
positionedBefore | integer, craft\base\ElementInterface, null – The element (or its ID) that the results must be positioned before. |
preferSites | array, null – Determines which site should be selected when querying multi-site elements. |
prevSiblingOf | integer, craft\base\ElementInterface, null – The element (or its ID) that the result must be the previous sibling of. |
provisionalDrafts | boolean, null – Whether provisional drafts should be returned. |
query | craft\db\Query, null – The query object created by prepare() |
queryCacheDependency | yii\caching\Dependency, null – The dependency to be associated with the cached query result for this query |
queryCacheDuration | integer, boolean, null – The default number of seconds that query results can remain valid in cache. |
rawSql | string |
ref | mixed – The reference code(s) used to identify the element(s). |
relatedTo | mixed – The element relation criteria. |
revisionCreator | integer, null – The revisions’ creator ID |
revisionId | integer, null – The ID of the revision to return (from the revisions table) |
revisionOf | integer, null – The source element ID that revisions should be returned for |
revisions | boolean, null – Whether revision elements should be returned. |
savedDraftsOnly | boolean – Whether only unpublished drafts which have been saved after initial creation should be included in the results. |
search | mixed – The search term to filter the resulting elements by. |
select | array, null – The columns being selected. |
selectOption | string, null – Additional option that should be appended to the 'SELECT' keyword. |
siblingOf | integer, craft\base\ElementInterface, null – The element (or its ID) that the results must be a sibling of. |
site | string, string[], craft\models\Site – The site(s) that resulting elements must be returned in |
siteId | mixed – The site ID(s) that the elements should be returned in, or '*' if elements should be returned in all supported sites. |
siteSettingsId | mixed – The element ID(s) in the elements_sites table. |
slug | mixed – The slug that resulting elements must have. |
status | string, string[], null – The status(es) that the resulting elements must have. |
structureId | mixed – The structure ID that should be used to join in the structureelements table. |
subQuery | craft\db\Query, null – The subselect’s query object created by prepare() |
tablesUsedInFrom | string[] – Table names indexed by aliases. |
title | mixed – The title that resulting elements must have. |
trashed | boolean, null – Whether to return trashed (soft-deleted) elements. |
uid | mixed – The element UID(s). |
union | array, null – This is used to construct the UNION clause(s) in a SQL statement. |
unique | boolean – Whether only elements with unique IDs should be returned by the query. |
uri | mixed – The URI that the resulting element must have. |
where | string, array, yii\db\ExpressionInterface, null – Query condition. |
with | string, array, null – The eager-loading declaration. |
withCustomFields | boolean – Whether custom fields should be factored into the query. |
withQueries | array, null – This is used to construct the WITH section in a SQL query. |
withStructure | boolean, null – Whether element structure data should automatically be left-joined into the query. |
Protected Properties
Property | Description |
---|---|
defaultOrderBy | array – The default orderBy() value to use if orderBy() is empty but not null. |
properties | array |
returnValues | array |
properties
- Type
- array
- Default value
[]
returnValues
- Type
- array
- Default value
[]
Public Methods
Method | Description |
---|---|
__call() | Mock setting query arguments via a method call. |
__clone() | This method is called after the object is created by cloning an existing one. |
__construct() | MockElementQuery constructor. |
__get() | Getter for mock query arguments. |
__isset() | Check if a property has been set already. |
__set() | Setter for mock query arguments. |
__toString() | Returns the SQL representation of Query |
__unset() | Sets a component property to be null. |
addGroupBy() | Adds additional group-by columns to the existing ones. |
addOrderBy() | Adds additional ORDER BY columns to the query. |
addParams() | Adds additional parameters to be bound to the query. |
addSelect() | Add more columns to the SELECT part of the query. |
afterPopulate() | Performs any post-population processing on elements. |
all() | Return all the return values. |
ancestorDist() | Narrows the query results to only {elements} that are up to a certain distance away from the {element} specified by ancestorOf(). |
ancestorOf() | Narrows the query results to only {elements} that are ancestors of another {element} in its structure. |
andFilterCompare() | Adds a filtering condition for a specific column and allow the user to choose a filter operator. |
andFilterHaving() | Adds an additional HAVING condition to the existing one but ignores empty operands. |
andFilterWhere() | Adds an additional WHERE condition to the existing one but ignores empty operands. |
andHaving() | Adds an additional HAVING condition to the existing one. |
andNotRelatedTo() | Narrows the query results to only {elements} that are not related to certain other elements. |
andRelatedTo() | Narrows the query results to only {elements} that are related to certain other elements. |
andWhere() | Adds an additional WHERE condition to the existing one. |
andWith() | Causes the query to return matching {elements} eager-loaded with related elements, in addition to the elements that were already specified by with(). |
anyStatus() | Sets the status param to null . |
archived() | Sets the archived property. |
asArray() | Causes the query to return matching {elements} as arrays of data, rather than [[{element-class}]] objects. |
attachBehavior() | Attaches a behavior to this component. |
attachBehaviors() | Attaches a list of behaviors to the component. |
average() | Returns the average of the specified column values. |
batch() | Starts a batch query. |
behaviors() | Returns a list of behaviors that this component should behave as. |
cache() | Enables query cache for this Query. |
canGetProperty() | Returns a value indicating whether a property can be read. |
canSetProperty() | Returns a value indicating whether a property can be set. |
className() | Returns the fully qualified name of this class. |
clearCachedResult() | Clears the cached result. |
collect() | |
column() | Executes the query and returns the first column of the result. |
count() | Returns the number of records. |
create() | Creates a new Query object and copies its property values from an existing one. |
createCommand() | Creates a DB command that can be used to execute this query. |
createElement() | Converts a found row into an element instance. |
criteriaAttributes() | Returns the query's criteria attributes. |
dateCreated() | Narrows the query results based on the {elements}’ creation dates. |
dateUpdated() | Narrows the query results based on the {elements}’ last-updated dates. |
descendantDist() | Narrows the query results to only {elements} that are up to a certain distance away from the {element} specified by descendantOf(). |
descendantOf() | Narrows the query results to only {elements} that are descendants of another {element} in its structure. |
detachBehavior() | Detaches a behavior from the component. |
detachBehaviors() | Detaches all behaviors from the component. |
distinct() | Sets the value indicating whether to SELECT DISTINCT or not. |
draftCreator() | Narrows the query results to only drafts created by a given user. |
draftId() | Narrows the query results based on the {elements}’ draft’s ID (from the drafts table). |
draftOf() | Narrows the query results to only drafts of a given {element}. |
drafts() | Narrows the query results to only drafts {elements}. |
each() | Starts a batch query and retrieves data row by row. |
eagerly() | Causes the query to be used to eager-load results for the query’s source element and any other elements in its collection. |
emulateExecution() | Sets whether to emulate query execution, preventing any interaction with data storage. |
ensureBehaviors() | Makes sure that the behaviors declared in behaviors() are attached to this component. |
exists() | Returns a value indicating whether the query result contains any row of data. |
extraFields() | Returns the list of fields that can be expanded further and returned by toArray(). |
fields() | Returns the list of fields that should be returned by default by toArray() when no specific fields are specified. |
filterHaving() | Sets the HAVING part of the query but ignores empty operands. |
filterWhere() | Sets the WHERE part of the query but ignores empty operands. |
fixedOrder() | Causes the query results to be returned in the order specified by id(). |
from() | Sets the FROM part of the query. |
generateSpecificQueryClass() | Generate a more specific query class for the provided element type class. |
getBehavior() | Returns the named behavior object. |
getBehaviors() | Returns all behaviors attached to this component. |
getCacheTags() | |
getCachedResult() | Returns the resulting elements set by setCachedResult(), if the criteria params haven’t changed since then. |
getCriteria() | Returns an array of the current criteria attribute values. |
getIterator() | Required by the IteratorAggregate interface. |
getRawSql() | Shortcut for createCommand()->getRawSql() . |
getTablesUsedInFrom() | Returns table names used in from() indexed by aliases. |
groupBy() | Sets the GROUP BY part of the query. |
hasDescendants() | Narrows the query results based on whether the {elements} have any descendants in their structure. |
hasEventHandlers() | Returns a value indicating whether there is any handler attached to the named event. |
hasMethod() | Returns a value indicating whether a method is defined. |
hasProperty() | Returns a value indicating whether a property is defined for this component. |
having() | Sets the HAVING part of the query. |
id() | Narrows the query results based on the {elements}’ IDs. |
ids() | Executes the query and returns the IDs of the resulting elements. |
ignorePlaceholders() | Causes the query to return matching {elements} as they are stored in the database, ignoring matching placeholder elements that were set by craft\services\Elements::setPlaceholderElement(). |
inBulkOp() | Narrows the query results to only {elements} that were involved in a bulk element operation. |
inReverse() | Causes the query results to be returned in reverse order. |
indexBy() | Sets the indexBy() property. |
init() | Initializes the object. |
innerJoin() | Appends an INNER JOIN part to the query. |
isJoined() | Returns whether a given table has been joined in this query. |
join() | Appends a JOIN part to the query. |
language() | Determines which site(s) the {elements} should be queried in, based on their language. |
leaves() | Narrows the query results based on whether the {elements} are “leaves” ({elements} with no descendants). |
leftJoin() | Appends a LEFT OUTER JOIN part to the query. |
level() | Narrows the query results based on the {elements}’ level within the structure. |
limit() | Determines the number of {elements} that should be returned. |
max() | Returns the maximum of the specified column values. |
min() | Returns the minimum of the specified column values. |
nextSiblingOf() | Narrows the query results to only the {element} that comes immediately after another {element} in its structure. |
noCache() | Disables query cache for this Query. |
notRelatedTo() | Narrows the query results to only {elements} that are not related to certain other elements. |
nth() | Executes the query and returns a single row of result at a given offset. |
off() | Detaches an existing event handler from this component. |
offset() | Determines how many {elements} should be skipped in the results. |
offsetExists() | Required by the ArrayAccess interface. |
offsetGet() | Required by the ArrayAccess interface. |
offsetSet() | Required by the ArrayAccess interface. |
offsetUnset() | Required by the ArrayAccess interface. |
on() | Attaches an event handler to an event. |
one() | Executes the query and returns a single row of result. |
orFilterHaving() | Adds an additional HAVING condition to the existing one but ignores empty operands. |
orFilterWhere() | Adds an additional WHERE condition to the existing one but ignores empty operands. |
orHaving() | Adds an additional HAVING condition to the existing one. |
orWhere() | Adds an additional WHERE condition to the existing one. |
orderBy() | Determines the order that the {elements} should be returned in. (If empty, defaults to {default-order-by} , or the order defined by the section if the \craft\elements\db\section() or \craft\elements\db\sectionId params are set to a single Structure section.) |
pairs() | Executes the query and returns the first two columns in the results as key/value pairs. |
params() | Sets the parameters to be bound to the query. |
populate() | Converts the raw query results into the format as specified by this query. |
positionedAfter() | Narrows the query results to only {elements} that are positioned after another {element} in its structure. |
positionedBefore() | Narrows the query results to only {elements} that are positioned before another {element} in its structure. |
preferSites() | If unique() is set, this determines which site should be selected when querying multi-site elements. |
prepForEagerLoading() | Prepares the query for lazy eager loading. |
prepare() | Prepares for building SQL. |
prepareSubquery() | Prepares the element query and returns its subquery (which determines what elements will be returned). |
prevSiblingOf() | Narrows the query results to only the {element} that comes immediately before another {element} in its structure. |
provisionalDrafts() | Narrows the query results to only provisional drafts. |
ref() | Narrows the query results based on a reference string. |
relatedTo() | Narrows the query results to only {elements} that are related to certain other elements. |
render() | Executes the query and renders the resulting elements using their partial templates. |
revisionCreator() | Narrows the query results to only revisions created by a given user. |
revisionId() | Narrows the query results based on the {elements}’ revision’s ID (from the revisions table). |
revisionOf() | Narrows the query results to only revisions of a given {element}. |
revisions() | Narrows the query results to only revision {elements}. |
rightJoin() | Appends a RIGHT OUTER JOIN part to the query. |
savedDraftsOnly() | Narrows the query results to only unpublished drafts which have been saved after initial creation. |
scalar() | Returns the query result as a scalar value. |
search() | Narrows the query results to only {elements} that match a search query. |
select() | Sets the SELECT part of the query. |
setCachedResult() | Sets the resulting elements. |
setReturnValues() | Set the return values. |
siblingOf() | Narrows the query results to only {elements} that are siblings of another {element} in its structure. |
site() | Determines which site(s) the {elements} should be queried in. |
siteId() | Determines which site(s) the {elements} should be queried in, per the site’s ID. |
siteSettingsId() | Narrows the query results based on the {elements}’ IDs in the elements_sites table. |
slug() | Narrows the query results based on the {elements}’ slugs. |
status() | Narrows the query results based on the {elements}’ statuses. |
structureId() | Determines which structure data should be joined into the query. |
sum() | Returns the sum of the specified column values. |
title() | Narrows the query results based on the {elements}’ titles. |
toArray() | Converts the model into an array. |
trashed() | Narrows the query results to only {elements} that have been soft-deleted. |
trigger() | Triggers an event. |
uid() | Narrows the query results based on the {elements}’ UIDs. |
union() | Appends a SQL statement using UNION operator. |
unique() | Determines whether only elements with unique IDs should be returned by the query. |
uri() | Narrows the query results based on the {elements}’ URIs. |
wasCountEagerLoaded() | Returns whether the query result count was already eager loaded by the query's source element. |
wasEagerLoaded() | Returns whether the query results were already eager loaded by the query's source element. |
where() | Sets the WHERE part of the query. |
with() | Causes the query to return matching {elements} eager-loaded with related elements. |
withCustomFields() | Sets whether custom fields should be factored into the query. |
withQuery() | Prepends a SQL statement using WITH syntax. |
withStructure() | Explicitly determines whether the query should join in the structure data. |
__call()
Mock setting query arguments via a method call.
Arguments
Returns
static
__construct()
MockElementQuery constructor.
__get()
Getter for mock query arguments.
Arguments
$name
(string)
Returns
mixed
__isset()
Check if a property has been set already.
Arguments
$name
(string)
Returns
__set()
Setter for mock query arguments.
Arguments
$name
(string)$value
(mixed
)
all()
Return all the return values.
Arguments
$db
(mixed
)
Returns
generateSpecificQueryClass()
Generate a more specific query class for the provided element type class.
Arguments
$elementClass
(class-string<\craft\base\ElementInterface>
)
Returns
craft\elements\db\ElementQuery
one()
Executes the query and returns a single row of result.
Arguments
$db
(yii\db\Connection, null) – The database connection used to generate the SQL statement. If this parameter is not given, thedb
application component will be used.
Returns
\craft\elements\db\TElement
, array, null – The first row (in terms of an array) of the query result. False is returned if the query results in nothing.
setReturnValues()
Set the return values.
Arguments
$values
(array)
Returns
static
Protected Methods
Method | Description |
---|---|
afterPrepare() | This method is called at the end of preparing an element query for the query builder. |
beforePrepare() | This method is called at the beginning of preparing an element query for the query builder. |
cacheTags() | Returns any cache invalidation tags that caches involving this element query should use as dependencies. |
cleanUpTableNames() | Clean up table names and aliases Both aliases and names are enclosed into . |
customFields() | Returns the fields that should take part in an upcoming elements query. |
extractFieldsFor() | Extract nested fields from a fields collection for a given root field Nested fields are separated with dots (.). e.g: "item.id" The previous example would extract "id". |
extractRootFields() | Extracts the root field names from nested fields. |
fieldLayouts() | Returns the field layouts whose custom fields should be returned by customFields(). |
filterCondition() | Removes empty operands from the given query condition. |
getUnaliasedColumnsFromSelect() | |
getUniqueColumns() | Returns unique column names excluding duplicates. |
isEmpty() | Returns a value indicating whether the give value is "empty". |
joinElementTable() | Joins in a table with an id column that has a foreign key pointing to elements.id . |
normalizeOrderBy() | Normalizes format of ORDER BY data. |
normalizeSelect() | Normalizes the SELECT columns passed to select() or addSelect(). |
queryScalar() | Queries a scalar value by setting select() first. |
resolveFields() | Determines which fields can be returned by toArray(). |
setCommandCache() | Sets $command cache, if this query has enabled caching. |
statusCondition() | Returns the condition that should be applied to the element query for a given status. |
Constants
Constant | Description |
---|---|
CLASS_TEMPLATE_FILE |