diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
new file mode 100644
index 00000000..70be437d
--- /dev/null
+++ b/.github/workflows/build.yml
@@ -0,0 +1,36 @@
+name: Build
+
+on: [push, pull_request]
+
+jobs:
+ build:
+ name: Node ${{ matrix.node_version }} on ${{ matrix.os }}
+
+ strategy:
+ matrix:
+ os: [ubuntu-latest, windows-latest, macOS-latest]
+ node_version: [
+ 10.x, # EOL: April 2021
+ 12.x, # EOL: April 2022
+ ]
+
+ runs-on: ${{ matrix.os }}
+
+ steps:
+ - uses: actions/checkout@master
+
+ - name: Setup Node.js
+ uses: actions/setup-node@v1
+ with:
+ node-version: ${{ matrix.node_version }}
+
+ - name: Install
+ run: yarn --frozen-lockfile --non-interactive
+
+ - name: Build
+ run: yarn build
+ env:
+ NODE_ENV: production
+
+ - name: Test
+ run: yarn test
diff --git a/README.md b/README.md
index 524eceae..16b8a71a 100644
--- a/README.md
+++ b/README.md
@@ -29,6 +29,9 @@
+
diff --git a/test/src/helperTest.js b/test/src/helperTest.js
index 65583f41..0eb827c5 100644
--- a/test/src/helperTest.js
+++ b/test/src/helperTest.js
@@ -21,11 +21,13 @@ describe("Helper", function() {
});
it("should not expand paths not starting with tilde", function() {
- expect(Helper.expandHome("/tmp")).to.match(/^\/tmp|[A-Z]:\\tmp$/);
+ expect(Helper.expandHome("/tmp")).to.match(/^\/tmp|[a-zA-Z]:\\{1,2}tmp$/);
});
it("should not expand a tilde in the middle of a string", function() {
- expect(Helper.expandHome("/tmp/~foo")).to.match(/^\/tmp\/~foo|[A-Z]:\\tmp\\~foo$/);
+ expect(Helper.expandHome("/tmp/~foo")).to.match(
+ /^\/tmp\/~foo|[a-zA-Z]:\\{1,2}?tmp\\{1,2}~foo$/
+ );
});
it("should return an empty string when given an empty string", function() {