Browse Source

prevent empty <failure/> tag

dorny/test-reporter@v1 will fail to parse <failure> tags that are empty as it's expected a message both in the attr and inside
ell 1 year ago
parent
commit
a513320a47
2 changed files with 5 additions and 3 deletions
  1. 1 1
      .github/workflows/main.yml
  2. 4 2
      testing/classes/TestMethod.lua

+ 1 - 1
.github/workflows/main.yml

@@ -206,7 +206,7 @@ jobs:
         name: love-windows-${{ steps.vars.outputs.arch }}${{ steps.vars.outputs.compatname }}-dbg
         name: love-windows-${{ steps.vars.outputs.arch }}${{ steps.vars.outputs.compatname }}-dbg
         path: pdb/Release/*.pdb
         path: pdb/Release/*.pdb
     - name: Run All Tests
     - name: Run All Tests
-      run: build/love-windows-${{ steps.vars.outputs.arch }}${{ steps.vars.outputs.compatname }}.exe testing --runAllTests
+      run: "build/love-windows-${{ steps.vars.outputs.arch }}${{ steps.vars.outputs.compatname }}.exe" "testing" --console --runAllTests
     - name: Test Report
     - name: Test Report
       uses: dorny/test-reporter@v1
       uses: dorny/test-reporter@v1
       with:
       with:

+ 4 - 2
testing/classes/TestMethod.lua

@@ -303,13 +303,15 @@ TestMethod = {
     -- get failure/skip message for output (if any)
     -- get failure/skip message for output (if any)
     local failure = ''
     local failure = ''
     local output = ''
     local output = ''
+    -- @NOTE if you don't put anything inside of the <failure></failure> then
+    -- dorny/test-reporter@v1 will fail to parse it
     if self.passed == false and self.skipped == false then
     if self.passed == false and self.skipped == false then
       failure = '\t\t\t<failure message="' .. self.result.key .. ' ' ..
       failure = '\t\t\t<failure message="' .. self.result.key .. ' ' ..
-        self.result.message .. '"></failure>\n'
+        self.result.message .. '">' .. self.result.key .. ' ' .. self.result.message .. '</failure>\n'
         output = self.result.key .. ' ' ..  self.result.message
         output = self.result.key .. ' ' ..  self.result.message
     end
     end
     if output == '' and self.skipped == true then
     if output == '' and self.skipped == true then
-      failure = '\t\t\t<skipped message="' .. self.skipreason .. '"></skipped>\n'
+      failure = '\t\t\t<skipped message="' .. self.skipreason .. '" />\n'
       output = self.skipreason
       output = self.skipreason
     end
     end