@@ -0,0 +1,1272 @@
+package org.hisp.dhis.android.core.arch.db;%0A%0Aimport org.junit.Test;%0A%0Aimport java.util.Arrays;%0Aimport java.util.Collections;%0Aimport java.util.List;%0A%0Aimport static org.assertj.core.api.Java6Assertions.assertThat;%0A%0Apublic class MultipleTableQueryBuilderShould %7B%0A%0A    @Test%0A    public void build_query_with_one_table() %7B%0A        List%3CString%3E tableNames = Collections.singletonList(%22table1%22);%0A        String query = new MultipleTableQueryBuilder().generateQuery(%22columnName%22, tableNames).build();%0A%0A        assertThat(query).isEqualTo(%22SELECT columnName FROM table1 WHERE columnName IS NOT NULL;%22);%0A    %7D%0A%0A    @Test%0A    public void build_query_with_more_than_one_table() %7B%0A        List%3CString%3E tableNames = Arrays.asList(%22table1%22, %22table2%22);%0A%0A        String query = new MultipleTableQueryBuilder()%0A                .generateQuery(%22columnName%22, tableNames)%0A                .build();%0A%0A        assertThat(query).isEqualTo(%22SELECT columnName FROM table1 WHERE columnName IS NOT NULL UNION %22 +%0A                %22SELECT columnName FROM table2 WHERE columnName IS NOT NULL;%22);%0A    %7D%0A%0A    @Test(expected = RuntimeException.class)%0A    public void throw_exception_for_no_pairs() %7B%0A        MultipleTableQueryBuilder builder = new MultipleTableQueryBuilder();%0A        builder.build();%0A    %7D%0A%7D

Add MultipleTableQueryBuilderShould