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 |
| contentTable | string, null – The content table that will be joined by this query. |
| 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. |
| 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. |
| 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. |
| 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. |
| 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. |
| 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(). |
| 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. |
| 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}.) |
| 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. |
| 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. |
| 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. |
| 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
self
__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, thedbapplication 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
self
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. |
| 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 |