Skip to content

Commit 3716ccc

Browse files
authored
generator: Use correct serviceconfig filename, display name, and version number (#233)
* generator tests: Rename example renders to match expected outputs Signed-off-by: Brad Keryan <brad.keryan@ni.com> * generator: Fix whitespace handling for serviceconfig file name Signed-off-by: Brad Keryan <brad.keryan@ni.com> * generator: Use correct version number --------- Signed-off-by: Brad Keryan <brad.keryan@ni.com>
1 parent 680d452 commit 3716ccc

File tree

6 files changed

+18
-22
lines changed

6 files changed

+18
-22
lines changed

ni_measurementlink_generator/ni_measurementlink_generator/template.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@ def create_measurement(
113113
display_name_for_filenames = re.sub(r"\s+", "", display_name)
114114
ui_file = _resolve_ui_file(ui_file, display_name_for_filenames)
115115
ui_file_type = _get_ui_type(ui_file)
116+
serviceconfig_file = f"{display_name_for_filenames}.serviceconfig"
116117
if directory_out is None:
117118
directory_out = pathlib.Path.cwd() / display_name_for_filenames
118119
else:
@@ -130,10 +131,11 @@ def create_measurement(
130131
ui_file_type=ui_file_type,
131132
service_class=service_class,
132133
description_url=description_url,
134+
serviceconfig_file=serviceconfig_file,
133135
)
134136
_create_file(
135137
"measurement.serviceconfig.mako",
136-
f"{display_name_for_filenames}.serviceconfig",
138+
serviceconfig_file,
137139
directory_out,
138140
display_name=display_name,
139141
service_class=service_class,
@@ -143,7 +145,7 @@ def create_measurement(
143145
if ui_file_type == "MeasurementUI":
144146
_create_file(
145147
"measurement.measui.mako",
146-
f"{ui_file}",
148+
ui_file,
147149
directory_out,
148150
display_name=display_name,
149151
service_class=service_class,

ni_measurementlink_generator/ni_measurementlink_generator/templates/measurement.py.mako

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<%page args="display_name, version, ui_file, ui_file_type, service_class, description_url"/>\
1+
<%page args="display_name, version, ui_file, ui_file_type, service_class, description_url, serviceconfig_file"/>\
22
\
33
"""A default measurement with an array in and out."""
44
import logging
@@ -10,8 +10,8 @@ import ni_measurementlink_service as nims
1010

1111
service_directory = pathlib.Path(__file__).resolve().parent
1212
measurement_service = nims.MeasurementService(
13-
service_config_path=service_directory / "${display_name}.serviceconfig",
14-
version="0.1.0.0",
13+
service_config_path=service_directory / "${serviceconfig_file}",
14+
version="${version}",
1515
ui_file_paths=[service_directory / "${ui_file}"],
1616
)
1717

@@ -33,7 +33,7 @@ def measure(array_input):
3333
help="Enable verbose logging. Repeat to increase verbosity.",
3434
)
3535
def main(verbose: int):
36-
"""Host the Sample Measurement service."""
36+
"""Host the ${display_name} service."""
3737
if verbose > 1:
3838
level = logging.DEBUG
3939
elif verbose == 1:

ni_measurementlink_generator/tests/test_assets/example_renders/example.serviceconfig renamed to ni_measurementlink_generator/tests/test_assets/example_renders/SampleMeasurement.serviceconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"services": [
33
{
4-
"displayName": "SampleMeasurement",
4+
"displayName": "Sample Measurement",
55
"serviceClass": "SampleMeasurement_Python",
66
"descriptionUrl": "https://www.example.com/SampleMeasurement.html",
77
"providedInterfaces": [ "ni.measurementlink.measurement.v1.MeasurementService" ],

ni_measurementlink_generator/tests/test_assets/example_renders/example.py renamed to ni_measurementlink_generator/tests/test_assets/example_renders/measurement.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
service_directory = pathlib.Path(__file__).resolve().parent
1010
measurement_service = nims.MeasurementService(
1111
service_config_path=service_directory / "SampleMeasurement.serviceconfig",
12-
version="0.1.0.0",
12+
version="1.2.3.4",
1313
ui_file_paths=[service_directory / "MeasurementUI.measui"],
1414
)
1515

ni_measurementlink_generator/tests/test_assets/example_renders/example.bat renamed to ni_measurementlink_generator/tests/test_assets/example_renders/start.bat

File renamed without changes.

ni_measurementlink_generator/tests/test_measurement_generator.py

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,9 @@ def test___command_line_args___create_measurement___render_without_exception(tmp
1515
with pytest.raises(SystemExit):
1616
template.create_measurement(
1717
[
18-
"SampleMeasurement",
18+
"Sample Measurement",
1919
"--measurement-version",
20-
"1.0.0.0",
20+
"1.2.3.4",
2121
"--ui-file",
2222
"MeasurementUI.measui",
2323
"--service-class",
@@ -31,18 +31,12 @@ def test___command_line_args___create_measurement___render_without_exception(tmp
3131

3232
golden_path = test_assets_path / "example_renders"
3333

34-
_assert_equal(
35-
golden_path / "example.py",
36-
temp_directory / "measurement.py",
37-
)
38-
_assert_equal(
39-
golden_path / "example.serviceconfig",
40-
temp_directory / "SampleMeasurement.serviceconfig",
41-
)
42-
_assert_equal(
43-
golden_path / "example.bat",
44-
temp_directory / "start.bat",
45-
)
34+
filenames = ["measurement.py", "SampleMeasurement.serviceconfig", "start.bat"]
35+
for filename in filenames:
36+
_assert_equal(
37+
golden_path / filename,
38+
temp_directory / filename,
39+
)
4640

4741

4842
def _assert_equal(expected_path: pathlib.Path, result_path: pathlib.Path):

0 commit comments

Comments
 (0)