Skip to content

Commit 4002977

Browse files
Blahpapto1Avi Goel
andauthored
Update Default Value of Double2dArray in SampleMeasurement,Tests and block Input Support. (#1034)
* Update Default Value for Double2DArray in SampleMeasurement and generator tests * Update MeasUI file for SampleMeasurement adding Double2DArray Output * Disallow DataType.Double2DArray in configuration parameters * Disallow additional DataTypes in configuration parameters * Fix lint errors * Remove DoubleXYData and DoubleXYDataArray Input Configuration Parameter from measurement service tests --------- Co-authored-by: Avi Goel <[email protected]>
1 parent b2a4b93 commit 4002977

File tree

6 files changed

+48
-33
lines changed

6 files changed

+48
-33
lines changed

examples/sample_measurement/SampleAllParameters.measui

Lines changed: 27 additions & 22 deletions
Large diffs are not rendered by default.

examples/sample_measurement/measurement.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,9 @@
99
import click
1010
import ni_measurement_plugin_sdk_service as nims
1111
from _helpers import configure_logging, verbosity_option
12-
from ni_measurement_plugin_sdk_service._internal.stubs.ni.protobuf.types import array_pb2
12+
from ni_measurement_plugin_sdk_service._internal.stubs.ni.protobuf.types import (
13+
array_pb2,
14+
)
1315

1416
try:
1517
from _stubs import color_pb2
@@ -95,7 +97,9 @@ def cancel_callback() -> None:
9597
enum_output = enum_input
9698
protobuf_enum_output = protobuf_enum_input
9799
string_array_output = string_array_in
98-
double_2d_array_output = array_pb2.Double2DArray()
100+
double_2d_array_output = array_pb2.Double2DArray(
101+
rows=2, columns=3, data=[1.5, 2.5, 3.5, 4.5, 5.5, 6.5]
102+
)
99103
logging.info("Completed measurement")
100104

101105
return (

packages/generator/tests/acceptance/test_non_streaming_measurement_client.py

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@
66
from typing import Any, Generator, Tuple, Type, Union
77

88
import pytest
9+
from ni_measurement_plugin_sdk_service._internal.stubs.ni.protobuf.types import (
10+
array_pb2,
11+
)
912
from ni_measurement_plugin_sdk_service.measurement.service import MeasurementService
1013

1114
from tests.conftest import CliRunnerFunction
@@ -65,7 +68,9 @@ def test___measurement_plugin_client___measure___returns_output(
6568
enum_out=EnumInEnum.BLUE,
6669
enum_array_out=[EnumInEnum.RED, EnumInEnum.GREEN],
6770
protobuf_enum_out=ProtobufEnumInEnum.BLACK,
68-
double_2d_array_out=None,
71+
double_2d_array_out=array_pb2.Double2DArray(
72+
rows=2, columns=3, data=[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]
73+
),
6974
)
7075
measurement_plugin_client = test_measurement_client_type()
7176

@@ -121,7 +126,9 @@ def test___measurement_plugin_client___stream_measure___returns_output(
121126
enum_out=EnumInEnum.BLUE,
122127
enum_array_out=[EnumInEnum.RED, EnumInEnum.GREEN],
123128
protobuf_enum_out=ProtobufEnumInEnum.BLACK,
124-
double_2d_array_out=None,
129+
double_2d_array_out=array_pb2.Double2DArray(
130+
rows=2, columns=3, data=[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]
131+
),
125132
)
126133
measurement_plugin_client = test_measurement_client_type()
127134

@@ -219,7 +226,7 @@ def _verify_output_types(outputs: Any, measurement_plugin_client_module: ModuleT
219226
_assert_type(outputs.enum_out, enum_type)
220227
_assert_collection_type(outputs.enum_array_out, Sequence, enum_type)
221228
_assert_type(outputs.protobuf_enum_out, protobuf_enum_type)
222-
_assert_type(outputs.double_2d_array_out, type(None))
229+
_assert_type(outputs.double_2d_array_out, array_pb2.Double2DArray)
223230

224231

225232
def _assert_type(value: Any, expected_type: Union[Type[Any], Tuple[Type[Any], ...]]) -> None:

packages/generator/tests/utilities/measurements/non_streaming_data_measurement/__init__.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,9 @@ def measure(
138138
enum_output = enum_input
139139
enum_array_output = enum_array_input
140140
protobuf_enum_output = protobuf_enum_input
141-
double_2d_array_output = array_pb2.Double2DArray()
141+
double_2d_array_output = array_pb2.Double2DArray(
142+
rows=2, columns=3, data=[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]
143+
)
142144

143145
return (
144146
float_output,

packages/service/ni_measurement_plugin_sdk_service/measurement/service.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -424,6 +424,8 @@ def configuration(
424424
"DataType.PinArray1D is deprecated. Use DataType.IOResourceArray1D instead.",
425425
DeprecationWarning,
426426
)
427+
if type in [DataType.Double2DArray, DataType.DoubleXYData, DataType.DoubleXYDataArray1D]:
428+
raise ValueError(f"{type} is not supported for configuration parameters.")
427429
data_type_info = _datatypeinfo.get_type_info(type)
428430
annotations = self._make_annotations_dict(
429431
data_type_info.type_specialization, instrument_type=instrument_type, enum_type=enum_type

packages/service/tests/unit/test_service.py

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -65,9 +65,6 @@ def test___measurement_service___register_measurement_method___method_registered
6565
("UInt32", DataType.UInt32, 3994),
6666
("UInt64", DataType.UInt64, 3456),
6767
("UInt64", DataType.UInt64, False),
68-
("DoubleXYData", DataType.DoubleXYData, None),
69-
("DoubleXYDataArray", DataType.DoubleXYDataArray1D, None),
70-
("Double2DArray", DataType.Double2DArray, None),
7168
],
7269
)
7370
def test___measurement_service___add_configuration__configuration_added(
@@ -294,8 +291,6 @@ def test___measurement_service___add_non_path_configuration__path_type_annotatio
294291
("IOResource1DArray", DataType.IOResourceArray1D, [1.009, -1.0009]),
295292
("Path", DataType.Path, 1.0),
296293
("Path1DArray", DataType.PathArray1D, [1.009, -1.0009]),
297-
("DoubleXYDataArray", DataType.DoubleXYDataArray1D, [1.009, -1.0009]),
298-
("Double2DArray", DataType.Double2DArray, 12),
299294
],
300295
)
301296
@pytest.mark.filterwarnings("ignore:.*Pin.*:DeprecationWarning")

0 commit comments

Comments
 (0)