Описание
Возвращает документы из фиксированного набора предопределенных объектов документов.
Этот этап обычно используется для тестирования других этапов по отдельности, хотя его также можно использовать в качестве входных данных для условий объединения.
Примеры
Node.js
const results = await db.pipeline()
.literals({ name: "joe", age: 10 }, { name: "bob", age: 30 }, { name: "alice", age: 40 })
.where(field("age").lessThan(35))
.execute();
Поведение
Этап literals(...) может использоваться только в качестве первого этапа конвейера (или подконвейера). Порядок документов, возвращаемых из literals(...) соответствует порядку их определения.
Хотя литеральные значения являются наиболее распространенными, также можно передавать выражения, которые будут вычислены и возвращены, что позволяет тестировать различное поведение запросов/выражений без предварительного создания тестовых данных.
Например, ниже показано, как быстро протестировать функцию length(...) на нескольких постоянных тестовых наборах данных:
Node.js
const results = await db.pipeline()
.literals({ x: constant("foo-bar-baz").length() }, { x: constant("bar").length() })
.execute();
...
[
{ x: 11 },
{ x: 3 }
]