ci: use github actions matrix

Signed-off-by: Tuan Anh Tran <me@tuananh.org>
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index e35dea1..2512d4b 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -1,91 +1,27 @@
 on: [push, pull_request]
 name: Test
 jobs:
-  test111:
-    runs-on: ubuntu-latest
+  test:
+    strategy:
+      matrix:
+        go-version:
+          - 1.11.x
+          - 1.12.x
+          - 1.13.x
+          - 1.14.x
+          - 1.15.x
+          - 1.16.x
+          - 1.17.x
+          - 1.18.x
+        os:
+          - ubuntu-latest
+    runs-on: ${{ matrix.os }}
     steps:
     - name: Install Go
       uses: actions/setup-go@v2
       with:
-        go-version: 1.11.x
+        go-version: ${{ matrix.go-version }}
     - name: Checkout code
       uses: actions/checkout@v2
     - name: Test
-      run: go test -v ./...
-  test112:
-    runs-on: ubuntu-latest
-    steps:
-    - name: Install Go
-      uses: actions/setup-go@v2
-      with:
-        go-version: 1.12.x
-    - name: Checkout code
-      uses: actions/checkout@v2
-    - name: Test
-      run: go test -v ./...
-  test113:
-    runs-on: ubuntu-latest
-    steps:
-    - name: Install Go
-      uses: actions/setup-go@v2
-      with:
-        go-version: 1.13.x
-    - name: Checkout code
-      uses: actions/checkout@v2
-    - name: Test
-      run: go test -v ./...
-  test114:
-    runs-on: ubuntu-latest
-    steps:
-    - name: Install Go
-      uses: actions/setup-go@v2
-      with:
-        go-version: 1.14.x
-    - name: Checkout code
-      uses: actions/checkout@v2
-    - name: Test
-      run: go test -v ./...
-  test115:
-    runs-on: ubuntu-latest
-    steps:
-    - name: Install Go
-      uses: actions/setup-go@v2
-      with:
-        go-version: 1.15.x
-    - name: Checkout code
-      uses: actions/checkout@v2
-    - name: Test
-      run: go test -v ./...
-  test116:
-    runs-on: ubuntu-latest
-    steps:
-    - name: Install Go
-      uses: actions/setup-go@v2
-      with:
-        go-version: 1.16.x
-    - name: Checkout code
-      uses: actions/checkout@v2
-    - name: Test
-      run: go test -v ./...
-  test117:
-    runs-on: ubuntu-latest
-    steps:
-    - name: Install Go
-      uses: actions/setup-go@v2
-      with:
-        go-version: 1.17.x
-    - name: Checkout code
-      uses: actions/checkout@v2
-    - name: Test
-      run: go test -v ./...
-  test118:
-    runs-on: ubuntu-latest
-    steps:
-    - name: Install Go
-      uses: actions/setup-go@v2
-      with:
-        go-version: 1.18.x
-    - name: Checkout code
-      uses: actions/checkout@v2
-    - name: Test
-      run: go test -v ./...
+      run: go test -v ./...
\ No newline at end of file