Skip to content

Commit

Permalink
Split the Delta Lake product test suite per Databricks runtime
Browse files Browse the repository at this point in the history
  • Loading branch information
findinpath committed Nov 2, 2022
1 parent 5e3a9f9 commit a593830
Show file tree
Hide file tree
Showing 5 changed files with 135 additions and 37 deletions.
18 changes: 15 additions & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -683,7 +683,9 @@ jobs:
# suite-4 does not exist
- suite-5
- suite-azure
- suite-delta-lake-databricks
- suite-delta-lake-databricks73
- suite-delta-lake-databricks91
- suite-delta-lake-databricks104
- suite-gcs
exclude:
- config: default
Expand All @@ -708,9 +710,19 @@ jobs:
ignore exclusion if: >-
${{ secrets.GCP_CREDENTIALS_KEY != '' }}
- suite: suite-delta-lake-databricks
- suite: suite-delta-lake-databricks73
config: hdp3
- suite: suite-delta-lake-databricks
- suite: suite-delta-lake-databricks73
ignore exclusion if: >-
${{ secrets.DATABRICKS_TOKEN != '' }}
- suite: suite-delta-lake-databricks91
config: hdp3
- suite: suite-delta-lake-databricks91
ignore exclusion if: >-
${{ secrets.DATABRICKS_TOKEN != '' }}
- suite: suite-delta-lake-databricks104
config: hdp3
- suite: suite-delta-lake-databricks104
ignore exclusion if: >-
${{ secrets.DATABRICKS_TOKEN != '' }}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,27 +11,14 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package io.trino.tests.product.launcher.suite.suites;
package io.trino.tests.product.launcher.suite;

import com.google.common.collect.ImmutableList;
import io.trino.tests.product.launcher.env.EnvironmentConfig;
import io.trino.tests.product.launcher.env.environment.EnvSinglenodeDeltaLakeDatabricks104;
import io.trino.tests.product.launcher.env.environment.EnvSinglenodeDeltaLakeDatabricks73;
import io.trino.tests.product.launcher.env.environment.EnvSinglenodeDeltaLakeDatabricks91;
import io.trino.tests.product.launcher.suite.Suite;
import io.trino.tests.product.launcher.suite.SuiteTestRun;

import java.util.List;

import static io.trino.tests.product.launcher.suite.SuiteTestRun.testOnEnvironment;

public class SuiteDeltaLakeDatabricks
public abstract class SuiteDeltaLakeDatabricks
extends Suite
{
@Override
public List<SuiteTestRun> getTestRuns(EnvironmentConfig config)
protected String[] getExcludedTests()
{
String[] excludedTests = {
return new String[] {
// AWS Glue does not support table comments
"io.trino.tests.product.deltalake.TestHiveAndDeltaLakeRedirect.testDeltaToHiveCommentTable",
"io.trino.tests.product.deltalake.TestHiveAndDeltaLakeRedirect.testHiveToDeltaCommentTable",
Expand All @@ -46,22 +33,5 @@ public List<SuiteTestRun> getTestRuns(EnvironmentConfig config)
// TODO https://github.com/trinodb/trino/issues/13017
"io.trino.tests.product.deltalake.TestDeltaLakeDropTableCompatibility.testCreateManagedTableInDeltaDropTableInTrino"
};
return ImmutableList.of(
testOnEnvironment(EnvSinglenodeDeltaLakeDatabricks73.class)
.withGroups("configured_features", "delta-lake-databricks")
.withExcludedGroups("delta-lake-exclude-73")
.withExcludedTests(excludedTests)
.build(),

testOnEnvironment(EnvSinglenodeDeltaLakeDatabricks91.class)
.withGroups("configured_features", "delta-lake-databricks")
.withExcludedGroups("delta-lake-exclude-91")
.withExcludedTests(excludedTests)
.build(),

testOnEnvironment(EnvSinglenodeDeltaLakeDatabricks104.class)
.withGroups("configured_features", "delta-lake-databricks")
.withExcludedTests(excludedTests)
.build());
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
/*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package io.trino.tests.product.launcher.suite.suites;

import com.google.common.collect.ImmutableList;
import io.trino.tests.product.launcher.env.EnvironmentConfig;
import io.trino.tests.product.launcher.env.environment.EnvSinglenodeDeltaLakeDatabricks104;
import io.trino.tests.product.launcher.suite.SuiteDeltaLakeDatabricks;
import io.trino.tests.product.launcher.suite.SuiteTestRun;

import java.util.List;

import static io.trino.tests.product.launcher.suite.SuiteTestRun.testOnEnvironment;

public class SuiteDeltaLakeDatabricks104
extends SuiteDeltaLakeDatabricks
{
@Override
public List<SuiteTestRun> getTestRuns(EnvironmentConfig config)
{
return ImmutableList.of(
testOnEnvironment(EnvSinglenodeDeltaLakeDatabricks104.class)
.withGroups("configured_features", "delta-lake-databricks")
.withExcludedTests(getExcludedTests())
.build());
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
/*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package io.trino.tests.product.launcher.suite.suites;

import com.google.common.collect.ImmutableList;
import io.trino.tests.product.launcher.env.EnvironmentConfig;
import io.trino.tests.product.launcher.env.environment.EnvSinglenodeDeltaLakeDatabricks73;
import io.trino.tests.product.launcher.suite.SuiteDeltaLakeDatabricks;
import io.trino.tests.product.launcher.suite.SuiteTestRun;

import java.util.List;

import static io.trino.tests.product.launcher.suite.SuiteTestRun.testOnEnvironment;

public class SuiteDeltaLakeDatabricks73
extends SuiteDeltaLakeDatabricks
{
@Override
public List<SuiteTestRun> getTestRuns(EnvironmentConfig config)
{
return ImmutableList.of(
testOnEnvironment(EnvSinglenodeDeltaLakeDatabricks73.class)
.withGroups("configured_features", "delta-lake-databricks")
.withExcludedGroups("delta-lake-exclude-73")
.withExcludedTests(getExcludedTests())
.build());
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
/*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package io.trino.tests.product.launcher.suite.suites;

import com.google.common.collect.ImmutableList;
import io.trino.tests.product.launcher.env.EnvironmentConfig;
import io.trino.tests.product.launcher.env.environment.EnvSinglenodeDeltaLakeDatabricks91;
import io.trino.tests.product.launcher.suite.SuiteDeltaLakeDatabricks;
import io.trino.tests.product.launcher.suite.SuiteTestRun;

import java.util.List;

import static io.trino.tests.product.launcher.suite.SuiteTestRun.testOnEnvironment;

public class SuiteDeltaLakeDatabricks91
extends SuiteDeltaLakeDatabricks
{
@Override
public List<SuiteTestRun> getTestRuns(EnvironmentConfig config)
{
return ImmutableList.of(
testOnEnvironment(EnvSinglenodeDeltaLakeDatabricks91.class)
.withGroups("configured_features", "delta-lake-databricks")
.withExcludedGroups("delta-lake-exclude-91")
.withExcludedTests(getExcludedTests())
.build());
}
}

0 comments on commit a593830

Please sign in to comment.