mirror of
https://github.com/woodpecker-ci/woodpecker.git
synced 2025-02-28 09:06:43 +00:00
45 lines
1.4 KiB
Markdown
45 lines
1.4 KiB
Markdown
|
# checkstyle
|
||
|
[](https://godoc.org/github.com/phayes/checkstyle)
|
||
|
[](https://goreportcard.com/report/github.com/phayes/checkstyle)
|
||
|
[](https://scrutinizer-ci.com/g/phayes/checkstyle/build-status/master)
|
||
|
|
||
|
Read and write checksyle_report.xml files with golang
|
||
|
|
||
|
Checkstyle XML files are a standard file format for reporting errors in source code, and is often generated by static analysis tools.
|
||
|
|
||
|
Example usage:
|
||
|
|
||
|
```go
|
||
|
|
||
|
import "github.com/phayes/checkstyle"
|
||
|
|
||
|
// Print XML into human readable format
|
||
|
checkSyle, err := checkstyle.ReadFile("checkstyle_report.xml")
|
||
|
if err != nil {
|
||
|
log.Fatal(err)
|
||
|
}
|
||
|
for _, file := range checkStyle.File {
|
||
|
fmt.Println(File.Name)
|
||
|
for _, codingError := range file.Error {
|
||
|
fmt.Println("\t", codingError.Line, codingError.Message)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Create a new XML file from scratch
|
||
|
check := checkstyle.New()
|
||
|
|
||
|
// Ensure that a file has been added
|
||
|
file := check.EnsureFile("/path/to/file")
|
||
|
|
||
|
// Create an error on line 10
|
||
|
codingError := checkstyle.NewError(10, "format", "line must end with a full stop")
|
||
|
|
||
|
// Add the error to the file
|
||
|
file.AddError(codingError)
|
||
|
|
||
|
// Output XML
|
||
|
fmt.Print(check)
|
||
|
```
|
||
|
|
||
|
For more information on checkstyle XML see: http://checkstyle.sourceforge.net/checks.html
|