version: 2
jobs:
  node-10:
    docker:
    - image: circleci/node:10
    steps:
    - checkout
    - restore_cache:
        key: dependency-cache-10-{{ checksum "package-lock.json" }}
    - run: npm install
    - save_cache:
        key: dependency-cache-10-{{ checksum "package-lock.json" }}
        paths:
        - ./node_modules
    - run: npm test

  node-12:
    docker:
    - image: circleci/node:12
    steps:
    - checkout
    - restore_cache:
        key: dependency-cache-12-{{ checksum "package-lock.json" }}
    - run: npm install
    - save_cache:
        key: dependency-cache-12-{{ checksum "package-lock.json" }}
        paths:
        - ./node_modules
    - run: npm test

workflows:
  version: 2
  run:
    jobs:
    - node-10
    - node-12
