PutsBox makes email integration tests easy
Ruby HTML CSS CoffeeScript JavaScript Dockerfile
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
app
bin
config
lib
public
spec
vendor/assets
.codeclimate.yml
.coffeelint.json
.eslintignore
.eslintrc
.gitignore
.hound.yml
.jshintrc
.prettierrc
.reek
.rspec HEAD Initial commit Jul 30, 2015
.rubocop.yml
.ruby-version
.simplecov
.travis.yml
Dockerfile
Gemfile
Gemfile.lock
LICENSE
Procfile
README.md
Rakefile
config.ru
docker-compose.yml
package.json Add prettier; Run prettier auto correct Apr 21, 2018
yarn.lock

README.md

Build Status Code Climate Test Coverage

PutsBox

PutsBox makes email integration tests easy. Try it now.

Getting Started

PutsBox uses SendGrid Inbound Email Parse Webhook for receiving e-mails, therefore for running PutsBox in development or your server, you will need to setup a SendGrid account and configure an Inbound Parse within SendGrid admin.

Have a look at this post Test SendGrid Webhooks with ngrok for receiving Webhook calls in your localhost.

Steps to run PutsBox in development

For following the instructions below, you will need to install Docker.

cd ~/workspace

git clone git@github.com:phstc/putsbox.git

docker-compose up -d

open http://localhost:3000

docker-compose logs --follow --tail=100 app

Running tests

docker-compose run app bundle exec rspec

Production

Putsbox auto expires (removes) inactive buckets in 1 day and emails in 15 minutes.

For enabling this behavior, PutsBox uses MongoDB TTL.

db.buckets.createIndex({ "updated_at": 1 }, { expireAfterSeconds: 86400 })
db.emails.createIndex({ "created_at": 1 }, { expireAfterSeconds: 600 })

License

Please see LICENSE for licensing details.