version: 2
jobs:
  build:
    docker:
      - image: circleci/node:10

    working_directory: ~/repo

    steps:
      - checkout

      - restore_cache:
          keys:
          - v1-dependencies-{{ checksum "package.json" }}
      - run: npm install
      - save_cache:
          paths:
            - node_modules
          key: v1-dependencies-{{ checksum "package.json" }}

      - restore_cache:
          keys:
          - v1-dependencies-9-{{ checksum "package.json" }}
      - run: npm run test9
      - save_cache:
          paths:
            - node_modules
          key: v1-dependencies-9-{{ checksum "package.json" }}

      - restore_cache:
          keys:
          - v1-dependencies-10-{{ checksum "package.json" }}
      - run: npm run test10
      - save_cache:
          paths:
            - node_modules
          key: v1-dependencies-10-{{ checksum "package.json" }}

      - restore_cache:
          keys:
          - v1-dependencies-11-{{ checksum "package.json" }}
      - run: npm run test11
      - save_cache:
          paths:
            - node_modules
          key: v1-dependencies-11-{{ checksum "package.json" }}

      - restore_cache:
          keys:
          - v1-dependencies-12-{{ checksum "package.json" }}
      - run: npm run test12
      - save_cache:
          paths:
            - node_modules
          key: v1-dependencies-12-{{ checksum "package.json" }}

      - restore_cache:
          keys:
          - v1-dependencies-13-{{ checksum "package.json" }}
      - run: npm run test13
      - save_cache:
          paths:
            - node_modules
          key: v1-dependencies-13-{{ checksum "package.json" }}
