integresql
pg-mem
integresql | pg-mem | |
---|---|---|
5 | 14 | |
710 | 1,802 | |
4.9% | - | |
8.9 | 6.6 | |
3 months ago | 8 days ago | |
Go | TypeScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
integresql
-
Mock unit test an API that uses postgres or integration test API with a "test" database?
For the case of PostgreSQL I've found IntegreSQL and its Javascript client really helpful because it can create a copy of the database per test case, which it helps to write integration tests with real DB calls.
-
Mocking database calls without a library?
Mocking has some advantages, but so does using a real database, at work we use https://github.com/allaboutapps/integresql and I quite like the approach that integresql has, since it makes possible to have a fresh database with your dummy data for every test without impacting the execution speed (compared to dropping an re-creating the database).
-
Ask HN: How do you test SQL?
Happy to hear that! When it comes to testing services that depend on PostgreSQL, this is still my preferred solution.
https://github.com/allaboutapps/integresql
disclaimer: author
- IntegreSQL – isolated PostgreSQL databases for integration tests
-
Pg_tmp – Run tests on an isolated, temporary PostgreSQL database
I haven't had a change to try it yet, but IntegreSQL[0] looks like this on steroids. It allows you to create a template (runs migrations and seed dates), and then uses Postgres's built in cloning functionality to maintain a pool of fresh databases. They claim 500ms to clone a database without the pool, and that the pool pretty much hides the latency entirely.
[0]: https://github.com/allaboutapps/integresql
pg-mem
- Setting up PostgreSQL for running integration tests
-
Show HN: I open-sourced the in-memory PostgreSQL I built at work for E2E tests
I've used pgmem https://github.com/oguimbal/pg-mem for the last couple of years for the same thing.
-
Ask HN: How do you test SQL?
I was wondering the other day how to classify tests that use a test double like pg-mem, which isn't a mock but isn't the Dockerized test DB either :
https://github.com/oguimbal/pg-mem
-
How to test nestjs modules?
In my case, I use TypeORM with PostgreSQL, and there's pg-mem to run an instance in memory, it supports most of the common functionality of PostgreSQL but you will need to do some adjustment to your code to be within the limits.
-
Working with offline data
Postgres in the browser is possible through pg-mem: "pg-mem is an experimental in-memory emulation of a postgres database" but it also suffers from no persistence. If you can persist to a file somewhere then read it in on startup (and if your local data isn't huge) this might work.
- Pg-mem: An in-memory re-implementation of PostgreSQL in JavaScript
-
Haskell as a first timer - Am I missing something ? Or is something broken ?
Dont get me wrong: I am trying to contribute to opensource as well, so I get that supporting small projects can be demanding. There's nothing wrong in not spending your weekends on OS. But not asking for help, nor specifying that a project is unmaintained, nor even answering issues & pull requests for years feels just wrong.
-
Ask HN: What Are You Working On?
A pure Javascript in memory emulation of Posgres, to help writing better node tests https://github.com/oguimbal/pg-mem
-
pg-mem, an in memory postgres DB instance for your unit tests, is now bound to multiple libraries (Knex, Typeorm, Slonik, pg, pg-promise) ... suggestions for the next one ?
Okay, I had a bit of spare time,I've implemented that, and it is now available with [email protected]
-
Zero delay development & unit testing iterations
To get a glimpse of what I'm talking about, you can clone this repo and follow "Development" instructions (by the way this is a small OS lib I maintain, I wrote about it here)
What are some alternatives?
flyway-spawn-demo - CI demo using Flyway and Spawn
NeDB - The JavaScript Database, for Node.js, nw.js, electron and the browser
otj-pg-embedded - Java embedded PostgreSQL component for testing
Prisma - Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB
testcontainers-go - Testcontainers for Go is a Go package that makes it simple to create and clean up container-based dependencies for automated integration/smoke tests. The clean, easy-to-use API enables developers to programmatically define containers that should be run as part of a test and clean up those resources when the test is done.
Lowdb - Simple and fast JSON database
spawn-demo - Demo application to show how Spawn can be integrated in Development and CI
typescript-clean-architecture - It is my attempt to create Clean Architecture based application in TypeScript.
entr - Run arbitrary commands when files change
maplibre-gl-js - MapLibre GL JS - Interactive vector tile maps in WebGL2
localstripe - A fake but stateful Stripe server that you can run locally, for testing purposes.
database-js - Common Database Interface for Node