# CMS util #

# README #

### What is this repository for? ###

* Quick summary

    * A package of common utils for the holition-cms project

* Version

    * 0.0.1

### How do I get set up? ###

* Summary of set up

    * Install postgres locally
    * Set up NPM to publish the repository
    * Install npm Dependencies
    * Run tests

* Configuration



Set up npm

    * npm set init.author.name “Holition”
    * npm set init.author.email “admin@holition.com”
    * npm set init.author.url "www.holition.com"

Install Dependencies

* Dependencies

    * npm Install

* Database configuration

    * Our project uses postgres
    
        * https://www.postgresql.org/download/
        
    * We need to create a testing database with a specific name and user permissions

        * Open pgAdmin (there can be a small delay on first running, this is normal)

        * Double click on your one postgres server

        * Right click -> create -> login/group role

        * General -> name: 'test'

        * Definition -> password: 'password'

        * Privilieges -> can login? -> yes, superuser -> yes -> save

        * Right click on Databases -> create -> Database

        * General -> database: 'test_db' -> save

* How to run tests

    * npm test

    * You can also use 'npm run test-watch' to watch the files for changes and re-run the tests on a save

    * Tests use mocha as a runner 

        * https://mochajs.org/

    * Tests use chai and extensions for assertions 

        * http://chaijs.com/api/bdd/

        * http://chaijs.com/plugins/chai-as-promised/

* Deployment instructions

    * Increment the package.json version number
    * npm publish

### Contribution guidelines ###

* Writing tests
* Code review
* Other guidelines

### Who do I talk to? ###

* Repo owner or admin

    * Thomas.monkman@holition.com
    * Marcus.belcher@holition.com

* Other community or team contact

    * Joshua.levin@holition.com