ptest

package
v2.32.0+incompatible Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 10, 2021 License: Apache-2.0, BSD-3-Clause, MIT Imports: 6 Imported by: 0

Documentation

Overview

Package ptest contains utilities for pipeline unit testing.

Index

Constants

This section is empty.

Variables

View Source
var (
	Runner = flag.String("runner", "", "Pipeline runner.")
)

Runner is a flag that sets which runner pipelines under test will use.

The test file must have a TestMain that calls Main or MainWithDefault to function.

Functions

func Create

func Create(values []interface{}) (*beam.Pipeline, beam.Scope, beam.PCollection)

Create creates a pipeline and a PCollection with the given values.

func Create2

func Create2(a, b []interface{}) (*beam.Pipeline, beam.Scope, beam.PCollection, beam.PCollection)

Create2 creates a pipeline and 2 PCollections with the given values.

func CreateList

func CreateList(values interface{}) (*beam.Pipeline, beam.Scope, beam.PCollection)

CreateList creates a pipeline and a PCollection with the given values.

func CreateList2

func CreateList2(a, b interface{}) (*beam.Pipeline, beam.Scope, beam.PCollection, beam.PCollection)

CreateList2 creates a pipeline and 2 PCollections with the given values.

func DefaultRunner

func DefaultRunner() string

func Main

func Main(m *testing.M)

Main is an implementation of testing's TestMain to permit testing pipelines on runners other than the direct runner.

To enable this behavior, _ import the desired runner, and set the flag accordingly. For example:

import _ "github.com/apache/beam/sdks/go/pkg/runners/flink"

func TestMain(m *testing.M) {
	ptest.Main(m)
}

func MainRet

func MainRet(m *testing.M) int

MainRet is equivelant to Main, but returns an exit code to pass to os.Exit().

Example:

func TestMain(m *testing.M) {
	os.Exit(ptest.Main(m))
}

func MainRetWithDefault

func MainRetWithDefault(m *testing.M, runner string) int

MainRetWithDefault is equivelant to MainWithDefault but returns an exit code to pass to os.Exit().

func MainWithDefault

func MainWithDefault(m *testing.M, runner string)

MainWithDefault is an implementation of testing's TestMain to permit testing pipelines on runners other than the direct runner, while setting the default runner to use.

func Run

func Run(p *beam.Pipeline) error

Run runs a pipeline for testing. The semantics of the pipeline is expected to be verified through passert.

func RunAndValidate

func RunAndValidate(t *testing.T, p *beam.Pipeline)

RunAndValidate runs a pipeline for testing and validates the result, failing the test if the pipeline fails.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL