All files / datamodel/src/operator outer-join.js

100% Statements 3/3
100% Branches 0/0
100% Functions 3/3
100% Lines 3/3

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17            2x       2x       1x    
import { crossProduct } from './cross-product';
import { JOINS } from '../constants';
import { union } from './union';
 
 
export function leftOuterJoin (dataModel1, dataModel2, filterFn) {
    return crossProduct(dataModel1, dataModel2, filterFn, false, JOINS.LEFTOUTER);
}
 
export function rightOuterJoin (dataModel1, dataModel2, filterFn) {
    return crossProduct(dataModel2, dataModel1, filterFn, false, JOINS.RIGHTOUTER);
}
 
export function fullOuterJoin (dataModel1, dataModel2, filterFn) {
    return union(leftOuterJoin(dataModel1, dataModel2, filterFn), rightOuterJoin(dataModel1, dataModel2, filterFn));
}