Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions doc/changelog.d/7538.fixed.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Create Maxwell project datasets with import_dataset3d
11 changes: 8 additions & 3 deletions src/ansys/aedt/core/application/design.py
Original file line number Diff line number Diff line change
Expand Up @@ -2973,11 +2973,16 @@ def import_dataset3d(
if not name:
name = path.stem

is_project_dataset = False
if is_project_dataset and not name.startswith("$"):
name = "$" + name

if not is_project_dataset and name.startswith("$"):
name = name.removeprefix("$")

if name.startswith("$"):
name = name[1:]
is_project_dataset = True
name = name.removeprefix("$")

# Only Maxwell and Icepak enable design datasets
if self.design_type not in ["Maxwell 3D", "Icepak"]:
is_project_dataset = True

Expand Down
34 changes: 34 additions & 0 deletions tests/system/general/test_design.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@

from ansys.aedt.core import Hfss
from ansys.aedt.core import Icepak
from ansys.aedt.core import Maxwell3d
from ansys.aedt.core import get_pyaedt_app
from ansys.aedt.core.application.aedt_objects import AedtObjects
from ansys.aedt.core.application.design import DesignSettings
Expand Down Expand Up @@ -83,6 +84,13 @@ def aedt_app(add_app):
app.close_project(save=False)


@pytest.fixture
def maxwell_app(add_app):
app = add_app(application=Maxwell3d)
yield app
app.close_project(app.project_name, save=False)


def test_design_name(aedt_app) -> None:
design_names = ["myname", "design2"]
aedt_app.design_name = design_names[0] # Change the design name.
Expand Down Expand Up @@ -335,6 +343,32 @@ def test_import_dataset3d(aedt_app) -> None:
assert ds8.name == "$dataset_csv"


def test_import_dataset3d_maxwell(maxwell_app) -> None:
"""Test project-level and design-level datasets with Maxwell 3D."""
# Project level tests
filename_tab = TESTS_GENERAL_PATH / "example_models" / TEST_SUBFOLDER / "Dataset_3D.tab"
filename_csv = TESTS_GENERAL_PATH / "example_models" / TEST_SUBFOLDER / "Dataset_3D.csv"

ds8 = maxwell_app.import_dataset3d(filename_tab)
assert ds8.name == "$Dataset_3D"
ds8 = maxwell_app.import_dataset3d(filename_csv, name="dataset_csv")
assert ds8.name == "$dataset_csv"
assert ds8.delete()
ds10 = maxwell_app.import_dataset3d(filename_csv, name="$dataset_test")
assert ds10.zunit == "mm"
ds8 = maxwell_app.import_dataset3d(filename_csv, name="dataset_csv", encoding="utf-8-sig")
assert ds8.name == "$dataset_csv"
# Design level tests (only Maxwell 3D and Icepak support these)
ds = maxwell_app.import_dataset3d(filename_csv, name="$csv_design_dataset", is_project_dataset=False)
assert ds.name == "csv_design_dataset"
ds = maxwell_app.import_dataset3d(filename_csv, name="csv_design_dataset_2", is_project_dataset=False)
assert ds.name == "csv_design_dataset_2"
ds = maxwell_app.import_dataset3d(filename_tab, name="$tab_design_dataset", is_project_dataset=False)
assert ds.name == "tab_design_dataset"
ds = maxwell_app.import_dataset3d(filename_tab, name="tab_design_dataset_2", is_project_dataset=False)
assert ds.name == "tab_design_dataset_2"


def test_import_dataset3d_xlsx(aedt_app) -> None:
filename = TESTS_GENERAL_PATH / "example_models" / TEST_SUBFOLDER / "Dataset_3D.xlsx"
ds9 = aedt_app.import_dataset3d(filename, name="myExcel")
Expand Down
Loading