Git Product home page Git Product logo

clean_like_gopher's Introduction

Clean like gopher

Clean like gopher is inspired from database_cleaner. The purpose of clean like gopher is to ensure that the DB is clean between tests.

Supported drivers

Install:

  go get "github.com/tborisova/clean_like_gopher"

Usage

  import 'github/tborisova/clean_like_gopher'
  ...

  options := make(map[string][]string)
  options["only"] = []string{"people"}
  m := clean_like_gopher.NewCleaningGopher("test", "mongo", "truncation", options) // clean collection 'test' using mongo driver and truncation strategy
  // m.Start() - only for transaction strategy
  ...
  dirty db
  ...
  m.Clean()

Availabe strategies:

  • For mysql:
    • truncation, deletion, transaction
  • For mongo:
    • truncation
  • For redis:
    • truncation

When using 'transaction' strategy you need to call Start() before the tests because it needs to know to open up a transaction.

Available options for truncation strategies:

  • except: ["people", "animals"] - deletes all tables except 'people' and 'animals'
  • only: ['people', 'animals'] - deletes only 'people' and 'animals' tables

clean_like_gopher's People

Contributors

tborisova avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.