Search in sources :

Example 66 with DisplayData

use of org.apache.beam.sdk.transforms.display.DisplayData in project beam by apache.

the class AvroIOTest method testPrimitiveReadDisplayData.

@Test
@Category(ValidatesRunner.class)
public void testPrimitiveReadDisplayData() {
    DisplayDataEvaluator evaluator = DisplayDataEvaluator.create();
    AvroIO.Read<GenericRecord> read = AvroIO.readGenericRecords(Schema.create(Schema.Type.STRING)).from("/foo.*");
    Set<DisplayData> displayData = evaluator.displayDataForPrimitiveSourceTransforms(read);
    assertThat("AvroIO.Read should include the file pattern in its primitive transform", displayData, hasItem(hasDisplayItem("filePattern")));
}
Also used : DisplayDataEvaluator(org.apache.beam.sdk.transforms.display.DisplayDataEvaluator) GenericRecord(org.apache.avro.generic.GenericRecord) DisplayData(org.apache.beam.sdk.transforms.display.DisplayData) Category(org.junit.experimental.categories.Category) Test(org.junit.Test)

Example 67 with DisplayData

use of org.apache.beam.sdk.transforms.display.DisplayData in project beam by apache.

the class CombineJava8Test method testLambdaDisplayData.

@Test
public void testLambdaDisplayData() {
    Combine.Globally<?, ?> combine = Combine.globally(xs -> Iterables.getFirst(xs, 0));
    DisplayData displayData = DisplayData.from(combine);
    assertThat(displayData.items(), not(empty()));
}
Also used : DisplayData(org.apache.beam.sdk.transforms.display.DisplayData) Test(org.junit.Test)

Example 68 with DisplayData

use of org.apache.beam.sdk.transforms.display.DisplayData in project beam by apache.

the class DisplayDataTranslation method toProto.

public static List<RunnerApi.DisplayData> toProto(DisplayData displayData) {
    ImmutableList.Builder<RunnerApi.DisplayData> builder = ImmutableList.builder();
    for (DisplayData.Item item : displayData.items()) {
        Function<DisplayData.Item, ByteString> translator = WELL_KNOWN_URN_TRANSLATORS.get(item.getKey());
        String urn;
        if (translator != null) {
            urn = item.getKey();
        } else {
            urn = LABELLED;
            translator = DisplayDataTranslation::translate;
        }
        builder.add(RunnerApi.DisplayData.newBuilder().setUrn(urn).setPayload(translator.apply(item)).build());
    }
    return builder.build();
}
Also used : ImmutableList(org.apache.beam.vendor.guava.v26_0_jre.com.google.common.collect.ImmutableList) ByteString(org.apache.beam.vendor.grpc.v1p43p2.com.google.protobuf.ByteString) ByteString(org.apache.beam.vendor.grpc.v1p43p2.com.google.protobuf.ByteString) DisplayData(org.apache.beam.sdk.transforms.display.DisplayData) StandardDisplayData(org.apache.beam.model.pipeline.v1.RunnerApi.StandardDisplayData)

Example 69 with DisplayData

use of org.apache.beam.sdk.transforms.display.DisplayData in project beam by apache.

the class PrimitiveParDoSingleFactoryTest method getReplacementTransformPopulateDisplayData.

/**
 * A test that demonstrates that the replacement transform has the Display Data of the {@link
 * ParDo.SingleOutput} it replaces.
 */
@Test
public void getReplacementTransformPopulateDisplayData() {
    ParDo.SingleOutput<Integer, Long> originalTransform = ParDo.of(new ToLongFn());
    DisplayData originalDisplayData = DisplayData.from(originalTransform);
    PCollection<? extends Integer> input = pipeline.apply(Create.of(1, 2, 3));
    AppliedPTransform<PCollection<? extends Integer>, PCollection<Long>, ParDo.SingleOutput<Integer, Long>> application = AppliedPTransform.of("original", PValues.expandInput(input), PValues.expandOutput(input.apply(originalTransform)), originalTransform, ResourceHints.create(), pipeline);
    PTransformReplacement<PCollection<? extends Integer>, PCollection<Long>> replacement = factory.getReplacementTransform(application);
    DisplayData replacementDisplayData = DisplayData.from(replacement.getTransform());
    assertThat(replacementDisplayData, equalTo(originalDisplayData));
    DisplayData primitiveDisplayData = Iterables.getOnlyElement(DisplayDataEvaluator.create().displayDataForPrimitiveTransforms(replacement.getTransform(), VarIntCoder.of()));
    assertThat(primitiveDisplayData, equalTo(replacementDisplayData));
}
Also used : PCollection(org.apache.beam.sdk.values.PCollection) ParDo(org.apache.beam.sdk.transforms.ParDo) DisplayData(org.apache.beam.sdk.transforms.display.DisplayData) Test(org.junit.Test)

Example 70 with DisplayData

use of org.apache.beam.sdk.transforms.display.DisplayData in project beam by apache.

the class GenerateSequenceTest method testBoundedDisplayDataSubrange.

@Test
public void testBoundedDisplayDataSubrange() {
    PTransform<?, ?> input = GenerateSequence.from(12).to(1234);
    DisplayData displayData = DisplayData.from(input);
    assertThat(displayData, hasDisplayItem("from", 12));
    assertThat(displayData, hasDisplayItem("to", 1234));
}
Also used : DisplayData(org.apache.beam.sdk.transforms.display.DisplayData) Test(org.junit.Test)

Aggregations

DisplayData (org.apache.beam.sdk.transforms.display.DisplayData)117 Test (org.junit.Test)115 DisplayDataEvaluator (org.apache.beam.sdk.transforms.display.DisplayDataEvaluator)16 PCollection (org.apache.beam.sdk.values.PCollection)11 ByteString (com.google.protobuf.ByteString)9 Category (org.junit.experimental.categories.Category)9 Matchers.containsString (org.hamcrest.Matchers.containsString)6 Duration (org.joda.time.Duration)6 TableRow (com.google.api.services.bigquery.model.TableRow)4 Params (org.apache.beam.sdk.io.DefaultFilenamePolicy.Params)3 BigQueryHelpers.toJsonString (org.apache.beam.sdk.io.gcp.bigquery.BigQueryHelpers.toJsonString)3 Builder (org.apache.beam.sdk.transforms.display.DisplayData.Builder)3 Instant (org.joda.time.Instant)3 TableSchema (com.google.api.services.bigquery.model.TableSchema)2 RowFilter (com.google.bigtable.v2.RowFilter)2 ArrayList (java.util.ArrayList)2 WritableByteChannelFactory (org.apache.beam.sdk.io.FileBasedSink.WritableByteChannelFactory)2 ParDo (org.apache.beam.sdk.transforms.ParDo)2 StringUtils.byteArrayToJsonString (org.apache.beam.sdk.util.StringUtils.byteArrayToJsonString)2 ImmutableSet (com.google.common.collect.ImmutableSet)1