On Fri, Sep 2, 2022, 08:47 Chris Withers <ch...@withers.org> wrote:

> On 01/09/2022 20:00, Jonathan Vanasco wrote:
> >
> >  > Create an empty schema from the models using create_all?
> >
> > This is what I usually do with smaller projects.
>
> When taking this approach, how do you ensure the accumulated schema
> migrations end up with a database that matches the one that create_all
> gives you?
>

You might consider adding a step to your CI pipeline where you
auto-generate a new revision and ensure it is empty. Some of the projects
at work use this as a safety valve.

Flask's Alembic integration makes this particularly nice, where the
migration command has an observable different exit code when no migrations
are necessary. You might want to look at how to detect for this case and
create a small check script, or even an explicit test in the suite.

>
> > When using unittest, some tests will use a fresh DB per test-run, others
> > per-class, and others per-test.
>
> Yeah, pytest fixture scoping gives a great way to set these up.
>
> > Sometimes the tests dictate that, other
> > times I control that with env vars.  That gives us the flexibility to
> > work on a small section and do efficient test runs during development.
>
> Creating a database for every unit test feels like something that would
> be slow enough to be annoying. How are you creating databases such that
> it's fast enough for this not to be the case?
>
> Chris
>
> --
> SQLAlchemy -
> The Python SQL Toolkit and Object Relational Mapper
>
> http://www.sqlalchemy.org/
>
> To post example code, please provide an MCVE: Minimal, Complete, and
> Verifiable Example.  See  http://stackoverflow.com/help/mcve for a full
> description.
> ---
> You received this message because you are subscribed to the Google Groups
> "sqlalchemy" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sqlalchemy+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/sqlalchemy/d779d7ad-1eff-e4e8-1f9c-9979b80a9146%40withers.org
> .
>

-- 
SQLAlchemy - 
The Python SQL Toolkit and Object Relational Mapper

http://www.sqlalchemy.org/

To post example code, please provide an MCVE: Minimal, Complete, and Verifiable 
Example.  See  http://stackoverflow.com/help/mcve for a full description.
--- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sqlalchemy+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sqlalchemy/CAA7D1eGNYQT-CBLCTSXMac5_FTw8DwG6c%3DmugdYfpQRJcQJFGw%40mail.gmail.com.

Reply via email to