MCPcopy Create free account
hub / github.com/apache/pig / testJoinType

Method testJoinType

test/org/apache/pig/data/TestSchemaTuple.java:594–661  ·  view source on GitHub ↗
(String joinType, boolean preSort)

Source from the content-addressed store, hash-verified

592 }
593
594 public void testJoinType(String joinType, boolean preSort) throws Exception {
595 Properties props = PropertiesUtil.loadDefaultProperties();
596 props.setProperty("pig.schematuple", "true");
597 PigServer pigServer = new PigServer(ExecType.LOCAL, props);
598
599 Data data = resetData(pigServer);
600
601 data.set("foo1",
602 tuple(0, 0),
603 tuple(1, 1),
604 tuple(2, 2),
605 tuple(3, 3),
606 tuple(4, 4),
607 tuple(5, 5),
608 tuple(6, 6),
609 tuple(7, 7),
610 tuple(8, 8),
611 tuple(9, 9)
612 );
613
614 data.set("foo2",
615 tuple(0, 0),
616 tuple(1, 1),
617 tuple(2, 2),
618 tuple(3, 3),
619 tuple(4, 4),
620 tuple(5, 5),
621 tuple(6, 6),
622 tuple(7, 7),
623 tuple(8, 8),
624 tuple(9, 9)
625 );
626
627 pigServer.registerQuery("A = LOAD 'foo1' USING mock.Storage() as (x:int, y:int);");
628 pigServer.registerQuery("B = LOAD 'foo2' USING mock.Storage() as (x:int, y:int);");
629 if (preSort) {
630 pigServer.registerQuery("A = ORDER A BY x ASC;");
631 pigServer.registerQuery("B = ORDER B BY x ASC;");
632 }
633 pigServer.registerQuery("C = JOIN A by x, B by x using '"+joinType+"';");
634 pigServer.registerQuery("D = ORDER C BY $0 ASC;");
635
636 Iterator<Tuple> out = pigServer.openIterator("D");
637 for (int i = 0; i < 10; i++) {
638 if (!out.hasNext()) {
639 throw new Exception("Output should have had more elements! Failed on element: " + i);
640 }
641 assertEquals(tuple(i, i, i, i), out.next());
642 }
643 assertFalse(out.hasNext());
644
645 pigServer.registerQuery("STORE D INTO 'bar1' USING mock.Storage();");
646 pigServer.registerQuery("E = JOIN A by (x, y), B by (x, y) using '"+joinType+"';");
647 pigServer.registerQuery("F = ORDER E BY $0 ASC;");
648 pigServer.registerQuery("STORE F INTO 'bar2' USING mock.Storage();");
649
650 List<Tuple> bar1 = data.get("bar1");
651 List<Tuple> bar2 = data.get("bar2");

Callers 2

Calls 13

loadDefaultPropertiesMethod · 0.95
setMethod · 0.95
registerQueryMethod · 0.95
openIteratorMethod · 0.95
getMethod · 0.95
resetDataMethod · 0.80
setPropertyMethod · 0.65
sizeMethod · 0.65
getMethod · 0.65
tupleMethod · 0.45
hasNextMethod · 0.45
assertEqualsMethod · 0.45

Tested by

no test coverage detected