diff --git a/.github/workflows/aarch64.yml b/.github/workflows/aarch64.yml new file mode 100644 index 000000000000..8d5d13d6220b --- /dev/null +++ b/.github/workflows/aarch64.yml @@ -0,0 +1,101 @@ +name: AArch64 CI + +on: [push, pull_request] + +jobs: + musl-build: + runs-on: [linux, ARM64] + steps: + - name: Download Crystal source + uses: actions/checkout@v2 + - name: Build Crystal + uses: docker://jhass/crystal:0.35.0-alpine-build + with: + args: make crystal + - name: Upload Crystal executable + uses: actions/upload-artifact@v1 + with: + name: crystal-aarch64-musl + path: .build/crystal + musl-test-stdlib: + needs: musl-build + runs-on: [linux, ARM64] + steps: + - name: Download Crystal source + uses: actions/checkout@v2 + - name: Download Crystal executable + uses: actions/download-artifact@v1 + with: + name: crystal-aarch64-musl + path: .build/ + - name: Mark downloaded compiler as executable + run: chmod +x .build/crystal + - name: Run stdlib specs + uses: docker://jhass/crystal:0.35.0-alpine-build + with: + args: make std_spec + musl-test-compiler: + needs: musl-build + runs-on: [linux, ARM64] + steps: + - name: Download Crystal source + uses: actions/checkout@v2 + - name: Download Crystal executable + uses: actions/download-artifact@v1 + with: + name: crystal-aarch64-musl + path: .build/ + - name: Mark downloaded compiler as executable + run: chmod +x .build/crystal + - name: Run compiler specs + uses: docker://jhass/crystal:0.35.0-alpine-build + with: + args: make compiler_spec + gnu-build: + runs-on: [linux, ARM64] + steps: + - name: Download Crystal source + uses: actions/checkout@v2 + - name: Build Crystal + uses: docker://jhass/crystal:0.35.0-build + with: + args: make crystal + - name: Upload Crystal executable + uses: actions/upload-artifact@v1 + with: + name: crystal-aarch64-gnu + path: .build/crystal + gnu-test-stdlib: + needs: gnu-build + runs-on: [linux, ARM64] + steps: + - name: Download Crystal source + uses: actions/checkout@v2 + - name: Download Crystal executable + uses: actions/download-artifact@v1 + with: + name: crystal-aarch64-gnu + path: .build/ + - name: Mark downloaded compiler as executable + run: chmod +x .build/crystal + - name: Run stdlib specs + uses: docker://jhass/crystal:0.35.0-build + with: + args: make std_spec + gnu-test-compiler: + needs: gnu-build + runs-on: [linux, ARM64] + steps: + - name: Download Crystal source + uses: actions/checkout@v2 + - name: Download Crystal executable + uses: actions/download-artifact@v1 + with: + name: crystal-aarch64-gnu + path: .build/ + - name: Mark downloaded compiler as executable + run: chmod +x .build/crystal + - name: Run compiler specs + uses: docker://jhass/crystal:0.35.0-build + with: + args: make compiler_spec diff --git a/spec/std/http/web_socket_spec.cr b/spec/std/http/web_socket_spec.cr index ad3b35c2e167..a0d9cf0d0e04 100644 --- a/spec/std/http/web_socket_spec.cr +++ b/spec/std/http/web_socket_spec.cr @@ -393,6 +393,7 @@ describe HTTP::WebSocket do ws.on_message do |str| ws.send("pong #{str}") + ws.close end ws.on_close do @@ -415,7 +416,6 @@ describe HTTP::WebSocket do random = Random::Secure.hex ws2.on_message do |str| str.should eq("pong #{random}") - ws2.close end ws2.send(random)