1
0
Fork 0
mirror of https://github.com/gocsaf/csaf.git synced 2025-12-22 11:55:40 +01:00

Add integration test ability to provider

This commit is contained in:
Bernhard Reiter 2022-04-08 10:40:01 +02:00
parent 1f88a0abe8
commit 6abbac6c2d
No known key found for this signature in database
GPG key ID: 2B7BA3BF9BC3A554

View 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()
}