version: 2.1
orbs:
  win: circleci/windows@1.0.0
jobs:
  linux:
    working_directory: ~/repo
    docker:
      - image: circleci/node:latest
    steps:
      - checkout
      - restore_cache:
          keys:
            - v1-linux-dependencies-{{ checksum "package.json" }}
            - v1-linux-dependencies-
      - run: npm install
      - save_cache:
          paths:
            - node_modules
          key: v1-linux-dependencies-{{ checksum "package.json" }}
      - run: npm test
  windows:
    executor: win/vs2019
    working_directory: ~/repo
    steps:
      - checkout
      - restore_cache:
          keys:
            - v1-windows-dependencies-{{ checksum "package.json" }}
            - v1-windows-dependencies-
      - run: npm install
      - save_cache:
          paths:
            - node_modules
          key: v1-windows-dependencies-{{ checksum "package.json" }}
      - run: npm test
workflows:
  version: 2
  build:
    jobs:
      - linux
      - windows
