{"categories":[{"label":"Utilities","url":"https://skillfed.io/packages/category/utilities/10"},{"label":"Testing","url":"https://skillfed.io/packages/category/software-development-testing/5"},{"label":"Database Engines/Servers","url":"https://skillfed.io/packages/category/database-database-engines-servers"}],"enrichment":{"capability":"Provides an in-memory MongoDB instance for testing by wrapping pymongo's MongoClient, eliminating the need for a running MongoDB server during development and test runs.","skillfed_tags":["mongodb-testing","test-fixtures","mocking"],"use_cases":["Unit testing code that reads/writes to MongoDB without needing a test database server running locally or in CI.","Integration testing a multi-service application where MongoDB is one component, using an isolated in-memory instance per test.","Rapid development iteration on MongoDB queries and schema changes without managing a persistent test database.","CI/CD pipelines where spinning up a full MongoDB container is too heavy or slow; the in-memory instance starts faster.","Testing edge cases and error conditions by configuring specific MongoDB versions or configurations via environment variables."],"what_it_does":"pymongo_inmemory is a testing library that spins up an ephemeral MongoDB instance in memory, allowing you to test code that uses MongoDB without needing a separate MongoDB server running. It wraps pymongo's MongoClient and automatically handles downloading, extracting, and configuring a MongoDB binary for your OS and Python version. The instance runs only for the duration of your test and leaves no persistent state.\n\nYou configure it via setup.cfg or environment variables (setting things like MongoDB version, port, and data folder), then import MongoClient from pymongo_inmemory instead of pymongo. The API is identical to the standard pymongo client, so existing test code requires minimal changes. It caches downloaded MongoDB binaries to avoid repeated downloads, and supports MongoDB versions from 3.0 through 8.0 across Linux, macOS, and Windows.","worth_installing":"Yes, if you test code that uses MongoDB and want to avoid external service dependencies. The low install friction, permissive license, and straightforward API make it a practical choice for unit and integration testing. The aging maintenance status (last release 519 days ago) is a minor concern but not a blocker\u2014the repository is not archived and recent commits exist. No known security vulnerabilities."},"id":"pymongo-inmemory","links":{"html":"https://skillfed.io/packages/pymongo-inmemory","md":"https://skillfed.io/packages/pymongo-inmemory.md","pypi":"https://pypi.org/project/pymongo-inmemory/"},"maintenance":{"status":"aging"},"meta":{"latest_release":"2025-03-13","license_spdx":null,"license_treatment":"permissive","name":"pymongo_inmemory","python_support":"supports_current","summary":"A mongo mocking library with an ephemeral MongoDB running in memory."},"popularity":{"monthly_downloads":117381,"position":12165,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.5.0"}
