Skip to content

Commit 3cb1ddd

Browse files
committed
gh-65 combine unit test job with sonarqube
Signed-off-by: Victor Chang <[email protected]>
1 parent 203b8a8 commit 3cb1ddd

File tree

2 files changed

+32
-41
lines changed

2 files changed

+32
-41
lines changed

.github/workflows/ci.yml

Lines changed: 30 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -90,19 +90,15 @@ jobs:
9090

9191
- name: Perform CodeQL Analysis
9292
uses: github/codeql-action/analyze@v1
93+
9394

9495
unit-test:
95-
runs-on: ${{ matrix.os }}
96-
strategy:
97-
matrix:
98-
os: [ubuntu-latest]
99-
fail-fast: true
100-
96+
runs-on: windows-latest
10197
steps:
102-
- name: Checkout repository
103-
uses: actions/checkout@v2
98+
- name: Set up JDK 11
99+
uses: actions/setup-java@v1
104100
with:
105-
fetch-depth: 0
101+
java-version: 1.11
106102

107103
- uses: actions/setup-dotnet@v1
108104
with:
@@ -116,57 +112,36 @@ jobs:
116112
restore-keys: |
117113
${{ runner.os }}-nuget
118114
119-
- name: Restore dependencies
120-
run: dotnet restore
121-
working-directory: ./src
122-
123-
- name: Build Solution
124-
run: dotnet build -c ${{ env.BUILD_CONFIG }} --nologo ${{ env.SOLUTION }}
125-
working-directory: ./src
126-
127-
- name: Run Unit Test
128-
run: dotnet test --filter FullyQualifiedName\!~Monai.Deploy.InformaticsGateway.Integration.Test -c ${{ env.BUILD_CONFIG }} -v=minimal --results-directory "${{ env.TEST_RESULTS }}" --collect:"XPlat Code Coverage" --settings coverlet.runsettings ${{ env.SOLUTION }}
129-
working-directory: ./src
130-
131-
- uses: codecov/codecov-action@v2
132-
with:
133-
token: ${{ secrets.CODECOV_TOKEN }}
134-
directory: "src/${{ env.TEST_RESULTS }}"
135-
files: "**/coverage.opencover.xml"
136-
flags: unittests
137-
name: codecov-umbrella
138-
fail_ci_if_error: true
139-
verbose: true
140-
141-
sonar-qube:
142-
runs-on: windows-latest
143-
steps:
144-
- name: Set up JDK 11
145-
uses: actions/setup-java@v1
146-
with:
147-
java-version: 1.11
148115
- uses: actions/checkout@v2
149116
with:
150117
fetch-depth: 0
118+
151119
- name: Cache SonarCloud packages
152120
uses: actions/cache@v1
153121
with:
154122
path: ~\sonar\cache
155123
key: ${{ runner.os }}-sonar
156124
restore-keys: ${{ runner.os }}-sonar
125+
157126
- name: Cache SonarCloud scanner
158127
id: cache-sonar-scanner
159128
uses: actions/cache@v1
160129
with:
161130
path: .\.sonar\scanner
162131
key: ${{ runner.os }}-sonar-scanner
163132
restore-keys: ${{ runner.os }}-sonar-scanner
133+
164134
- name: Install SonarCloud scanner
165135
if: steps.cache-sonar-scanner.outputs.cache-hit != 'true'
166136
shell: powershell
167137
run: |
168138
New-Item -Path .\.sonar\scanner -ItemType Directory
169-
dotnet tool update dotnet-sonarscanner --tool-path .\.sonar\scanner
139+
dotnet tool update dotnet-sonarscanner --tool-path .\.sonar\scanner
140+
141+
- name: Restore dependencies
142+
run: dotnet restore
143+
working-directory: ./src
144+
170145
- name: Build and analyze
171146
env:
172147
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -177,6 +152,22 @@ jobs:
177152
dotnet build -c ${{ env.BUILD_CONFIG }} --nologo "src\${{ env.SOLUTION }}"
178153
.\.sonar\scanner\dotnet-sonarscanner end /d:sonar.login="${{ secrets.SONAR_TOKEN }}"
179154
155+
- name: Run Unit Test
156+
.\.sonar\scanner\dotnet-sonarscanner begin /k:"Project-MONAI_monai-deploy-informatics-gateway" /o:"project-monai" /d:sonar.login="${{ secrets.SONAR_TOKEN }}" /d:sonar.host.url="https://sonarcloud.io"
157+
run: dotnet test --filter FullyQualifiedName\!~Monai.Deploy.InformaticsGateway.Integration.Test -c ${{ env.BUILD_CONFIG }} -v=minimal --results-directory "${{ env.TEST_RESULTS }}" --collect:"XPlat Code Coverage" --settings coverlet.runsettings "src\${{ env.SOLUTION }}"
158+
.\.sonar\scanner\dotnet-sonarscanner end /d:sonar.login="${{ secrets.SONAR_TOKEN }}"
159+
160+
161+
- uses: codecov/codecov-action@v2
162+
with:
163+
token: ${{ secrets.CODECOV_TOKEN }}
164+
directory: "src/${{ env.TEST_RESULTS }}"
165+
files: "**/coverage.opencover.xml"
166+
flags: unittests
167+
name: codecov-umbrella
168+
fail_ci_if_error: true
169+
verbose: true
170+
180171
build:
181172
runs-on: ${{ matrix.os }}
182173
needs: [calc-version]

src/DicomWebClient/Services/WadoService.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ public async Task<DicomFile> Retrieve(
101101

102102
try
103103
{
104-
await response.ToDicomAsyncEnumerable().FirstOrDefaultAsync();
104+
return await response.ToDicomAsyncEnumerable().FirstOrDefaultAsync();
105105
}
106106
catch (Exception ex)
107107
{
@@ -237,7 +237,7 @@ public async Task<T> RetrieveMetadata<T>(
237237

238238
try
239239
{
240-
await GetMetadata<T>(instancMetadataUri).FirstOrDefaultAsync();
240+
return await GetMetadata<T>(instancMetadataUri).FirstOrDefaultAsync();
241241
}
242242
catch (Exception ex) when (ex is not UnsupportedReturnTypeException)
243243
{

0 commit comments

Comments
 (0)