ptest

package
Version: v2.34.0-RC1 Latest Latest
Warning

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

Go to latest
Published: Oct 26, 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/v2/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) beam.PipelineResult

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

func RunWithMetrics

func RunWithMetrics(p *beam.Pipeline) (beam.PipelineResult, error)

RunWithMetrics runs a pipeline for testing with that returns metrics.Results in the form of Pipeline Result

Types

This section is empty.

Source Files

Jump to

Keyboard shortcuts

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