treewide: replace error assertions with errors.As

Change-Id: I369cc1dd8f745203f6f24093049d60d971acdf11
Reviewed-on: https://review.monogon.dev/c/monogon/+/3038
Reviewed-by: Serge Bazanski <serge@monogon.tech>
Tested-by: Jenkins CI
diff --git a/metropolis/pkg/fsquota/fsquota_test.go b/metropolis/pkg/fsquota/fsquota_test.go
index 243dbf6..4044b60 100644
--- a/metropolis/pkg/fsquota/fsquota_test.go
+++ b/metropolis/pkg/fsquota/fsquota_test.go
@@ -17,6 +17,7 @@
 package fsquota
 
 import (
+	"errors"
 	"fmt"
 	"math"
 	"os"
@@ -92,11 +93,10 @@
 		for {
 			n, err := testfile.Write(testdata)
 			if err != nil {
-				if pathErr, ok := err.(*os.PathError); ok {
-					if pathErr.Err == syscall.ENOSPC {
-						// Running out of space is the only acceptable error to continue execution
-						break
-					}
+				var pathErr *os.PathError
+				if errors.As(err, &pathErr) && errors.Is(pathErr.Err, syscall.ENOSPC) {
+					// Running out of space is the only acceptable error to continue execution
+					break
 				}
 				t.Fatal(err)
 			}