Testing
🚦Gosip automated testing
In a clone or fork.
Authentication testing
Create auth credentials store files in ./config folder for corresponding strategies:
See samples.
go test ./... -v -race -count=1Not provided auth configs and therefore strategies are ignored and not skipped in tests.
API integration tests
Create auth credentials store files in ./config/integration folder for corresponding environments:
private.spo.json
private.2013.json // 2013 has its nuances with OData mod and not supported methods
SPAUTH_ENVCODE=spo go test ./api/... -v -race -count=1
SPAUTH_ENVCODE=2013 go test ./api/... -v -race -count=1API integration tests are mostly targeted to SharePoint Online and not regularly processed on the legacy versions of the platform so you can face some test exceptions which still should be escaped with t.Skip and envCode != "spo" condition:
if envCode != "spo" {
t.Skip("is not supported with old SharePoint versions")
}Environment variables
SPAUTH_ENVCODE=codeenvironment variable switches target environments.spois a default one.SPAPI_HEAVY_TESTS=trueturns on "heavy" methods, e.g. web creation.
Run manual tests
Modify cmd/test/main.go to include required scenarios and run:
go run ./cmd/testOptionally, you can provide a strategy to use with a corresponding flag:
go run ./cmd/test -strategy adfsRun CI tests
Configure environment variables:
SPAUTH_SITEURL
SPAUTH_CLIENTID
SPAUTH_CLIENTSECRET
SPAUTH_USERNAME
SPAUTH_PASSWORD
go test ./... -v -race -count=1
SPAUTH_ENVCODE=spo SPAPI_HEAVY_TESTS=true go test ./api/... -v -race -count=1Test coverage
Check Codecov.
Branch
Coverage
Master
Dev
We are targeted to keep code coverage higher than 80% for API and Auth methods altogether.
Last updated
Was this helpful?
