mockgres 0.0.25

An in-memory database that replicates a reasonable subset of Postgres functionality to make unit tests that rely on a database to run.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use pgwire::error::PgWireResult;

use crate::db::CellInput;
use crate::engine::{EvalContext, InsertSource, Value, eval_scalar_expr};

pub fn evaluate_insert_source(
    src: &InsertSource,
    params: &[Value],
    ctx: &EvalContext,
) -> PgWireResult<CellInput> {
    match src {
        InsertSource::Default => Ok(CellInput::Default),
        InsertSource::Expr(expr) => {
            let value = eval_scalar_expr(&[], expr, params, ctx)?;
            Ok(CellInput::Value(value))
        }
    }
}