mirror of
https://github.com/gocsaf/csaf.git
synced 2025-12-22 18:15:42 +01:00
Add integration test ability to provider
This commit is contained in:
parent
1f88a0abe8
commit
6abbac6c2d
1 changed files with 36 additions and 0 deletions
36
cmd/csaf_provider/main_test.go
Normal file
36
cmd/csaf_provider/main_test.go
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
package main
|
||||
|
||||
import (
|
||||
"os"
|
||||
"testing"
|
||||
)
|
||||
|
||||
// as main() does not process os.Args, we can call it directly as -test.*
|
||||
// parameters will be ignored.
|
||||
//
|
||||
// use like
|
||||
// go test -c -vet=off -covermode=atomic -o csaf_provider.debug
|
||||
// cp csaf_provider.debug /usr/lib/cgi-bin/
|
||||
//
|
||||
// pushd /usr/lib/cgi-bin
|
||||
// mv csaf_provider.go csaf_provider2.go
|
||||
// echo '#!/bin/bash
|
||||
// exec /usr/lib/cgi-bin/csaf_provider.debug -test.coverprofile=/tmp/csaf_provider-itest.cov -- "$@"
|
||||
// ' >csaf_provider.go
|
||||
// chmod a+x csaf_provider.go
|
||||
//
|
||||
// then do a cgi-bin action on the provider like using the uploader
|
||||
|
||||
func TestMain(t *testing.T) {
|
||||
var endOfTestParams int
|
||||
for i, a := range os.Args[1:] {
|
||||
if a == "--" {
|
||||
endOfTestParams = i + 1
|
||||
}
|
||||
}
|
||||
|
||||
if endOfTestParams == 0 {
|
||||
t.Skip("skipping integration test, no `--` parameter found")
|
||||
}
|
||||
main()
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue