-
Notifications
You must be signed in to change notification settings - Fork 13
50 lines (47 loc) · 1.72 KB
/
pull-request.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
name: PR Build
on: [ pull_request ]
jobs:
ballerina-build:
name: Run Ballerina Build
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v2
- name: Ballerina Build
uses: ballerina-platform/[email protected]
with:
args:
build
env:
WORKING_DIR: ./ballerina
JAVA_HOME: /usr/lib/jvm/default-jvm
ballerina-tests:
# Run Ballerina tests
name: Run Ballerina Tests
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v2
- name: Ballerina Tests
uses: ballerina-platform/[email protected]
with:
args:
test --code-coverage
env:
WORKING_DIR: ./ballerina
JAVA_HOME: /usr/lib/jvm/default-jvm
# Read the ballerina test results
- name: Read Ballerina Test Results
id: test_results
run: |
content=`cat ./ballerina/target/report/test_results.json`
content="${content//'%'/'%25'}"
content="${content//$'\n'/'%0A'}"
content="${content//$'\r'/'%0D'}"
echo "::set-output name=testResultsJson::$content"
# Print the code coverage information
- name: Code Coverage
run: |
echo "Covered Code Lines : ${{fromJson(steps.test_results.outputs.testResultsJson).coveredLines}}"
echo "Total Code Lines : $(expr ${{fromJson(steps.test_results.outputs.testResultsJson).missedLines}} + ${{fromJson(steps.test_results.outputs.testResultsJson).coveredLines}})"
echo "Code Coverage Percentage : ${{fromJson(steps.test_results.outputs.testResultsJson).coveragePercentage}}"