fix(dataset): add missing currency_code_column to DatasetPostSchema (#38853)

This commit is contained in:
Richard Fogaca Nienkotter
2026-03-26 16:58:04 -03:00
committed by GitHub
parent 8983edea66
commit 9c288d66b5
8 changed files with 136 additions and 30 deletions

View File

@@ -861,6 +861,29 @@ class TestDatasetApi(SupersetTestCase):
assert alpha in model.owners
self.items_to_delete = [model]
@pytest.mark.usefixtures("load_energy_table_with_slice")
def test_create_dataset_with_currency_code_column(self):
"""
Dataset API: Test create dataset persists currency_code_column
"""
energy_usage_ds = self.get_energy_usage_dataset()
self.login(ALPHA_USERNAME)
table_data = {
"database": energy_usage_ds.database_id,
"table_name": "energy_usage_virtual_currency_column",
"sql": "select * from energy_usage",
"currency_code_column": "currency",
}
if schema := get_example_default_schema():
table_data["schema"] = schema
rv = self.post_assert_metric("/api/v1/dataset/", table_data, "post")
assert rv.status_code == 201
data = json.loads(rv.data.decode("utf-8"))
model = db.session.query(SqlaTable).get(data.get("id"))
assert model.currency_code_column == "currency"
self.items_to_delete = [model]
@unittest.skip("test is failing stochastically")
def test_create_dataset_same_name_different_schema(self):
if backend() == "sqlite":