1717)
1818
1919if TYPE_CHECKING :
20+ import pytest_mock
2021 from typing_extensions import Unpack
2122
2223 from qcodes .instrument .instrument_base import InstrumentBaseKWArgs
@@ -97,18 +98,21 @@ def test_channels_call_function(
9798 assert mssgs == names
9899
99100
100- def test_channels_get (dci ) -> None :
101+ def test_channels_get (dci : DummyChannelInstrument ) -> None :
101102 temperatures = dci .channels .temperature .get ()
102103 assert len (temperatures ) == 6
103104
104105
105106@settings (suppress_health_check = (HealthCheck .function_scoped_fixture ,))
106107@given (value = hst .floats (0 , 300 ), channel = hst .integers (0 , 3 ))
107- def test_channel_access_is_identical (dci , value , channel ) -> None :
108+ def test_channel_access_is_identical (
109+ dci : DummyChannelInstrument , value , channel
110+ ) -> None :
108111 channel_to_label = {0 : "A" , 1 : "B" , 2 : "C" , 3 : "D" }
109112 label = channel_to_label [channel ]
110113 channel_via_label = getattr (dci , label )
111114 channel_via_name = dci .channels .get_channel_by_name (f"Chan{ label } " )
115+ assert isinstance (channel_via_name , DummyChannel )
112116 # set via labeled channel
113117 channel_via_label .temperature (value )
114118 assert channel_via_label .temperature () == value
@@ -431,7 +435,7 @@ def test_remove_tupled_channel(dci_with_list: DCIWithList) -> None:
431435
432436@settings (suppress_health_check = (HealthCheck .function_scoped_fixture ,))
433437@given (setpoints = hst .lists (hst .floats (0 , 300 ), min_size = 4 , max_size = 4 ))
434- def test_combine_channels (dci : DummyChannelInstrument , setpoints ) -> None :
438+ def test_combine_channels (dci : DummyChannelInstrument , setpoints : list [ float ] ) -> None :
435439 assert len (dci .channels ) == 6
436440
437441 mychannels = dci .channels [0 :2 ] + dci .channels [4 :]
@@ -453,7 +457,9 @@ def test_combine_channels(dci: DummyChannelInstrument, setpoints) -> None:
453457
454458@settings (suppress_health_check = (HealthCheck .function_scoped_fixture ,))
455459@given (start = hst .integers (- 8 , 7 ), stop = hst .integers (- 8 , 7 ), step = hst .integers (1 , 7 ))
456- def test_access_channels_by_slice (dci , start , stop , step ) -> None :
460+ def test_access_channels_by_slice (
461+ dci : DummyChannelInstrument , start : int , stop : int , step : int
462+ ) -> None :
457463 names = ("A" , "B" , "C" , "D" , "E" , "F" , "G" , "H" )
458464 channels = tuple (DummyChannel (dci , "Chan" + name , name ) for name in names )
459465 chlist = ChannelList (dci , "channels" , DummyChannel , channels )
@@ -468,7 +474,9 @@ def test_access_channels_by_slice(dci, start, stop, step) -> None:
468474
469475@settings (suppress_health_check = (HealthCheck .function_scoped_fixture ,), deadline = 1000 )
470476@given (myindexs = hst .lists (elements = hst .integers (- 8 , 7 ), min_size = 1 ))
471- def test_access_channels_by_tuple (dci , myindexs ) -> None :
477+ def test_access_channels_by_tuple (
478+ dci : DummyChannelInstrument , myindexs : list [int ]
479+ ) -> None :
472480 names = ("A" , "B" , "C" , "D" , "E" , "F" , "G" , "H" )
473481 mytuple = tuple (myindexs )
474482 channels = tuple (DummyChannel (dci , "Chan" + name , name ) for name in names )
@@ -479,13 +487,13 @@ def test_access_channels_by_tuple(dci, myindexs) -> None:
479487 assert chan .name == f"dci_Chan{ names [chanindex ]} "
480488
481489
482- def test_access_channels_by_name_empty_raises (dci ) -> None :
490+ def test_access_channels_by_name_empty_raises (dci : DummyChannelInstrument ) -> None :
483491 # todo this should raise a less generic error type
484492 with pytest .raises (Exception , match = "one or more names must be given" ):
485493 dci .channels .get_channel_by_name ()
486494
487495
488- def test_delete_from_channel_list (dci_with_list ) -> None :
496+ def test_delete_from_channel_list (dci_with_list : DCIWithList ) -> None :
489497 n_channels = len (dci_with_list .channels )
490498 chan0 = dci_with_list .channels [0 ]
491499 del dci_with_list .channels [0 ]
@@ -512,12 +520,12 @@ def test_delete_from_channel_list(dci_with_list) -> None:
512520 assert len (dci_with_list .channels ) == n_channels - 3
513521
514522
515- def test_set_element_by_int (dci_with_list ) -> None :
523+ def test_set_element_by_int (dci_with_list : DCIWithList ) -> None :
516524 dci_with_list .channels [0 ] = dci_with_list .channels [1 ]
517525 assert dci_with_list .channels [0 ] is dci_with_list .channels [1 ]
518526
519527
520- def test_set_element_by_slice (dci_with_list ) -> None :
528+ def test_set_element_by_slice (dci_with_list : DCIWithList ) -> None :
521529 foo = DummyChannel (dci_with_list , name = "foo" , channel = "foo" )
522530 bar = DummyChannel (dci_with_list , name = "bar" , channel = "bar" )
523531 dci_with_list .channels [0 :2 ] = [foo , bar ]
@@ -532,7 +540,7 @@ def test_set_element_by_slice(dci_with_list) -> None:
532540 )
533541
534542
535- def test_set_element_locked_raises (dci_with_list ) -> None :
543+ def test_set_element_locked_raises (dci_with_list : DCIWithList ) -> None :
536544 dci_with_list .channels .lock ()
537545
538546 with pytest .raises (
@@ -676,7 +684,7 @@ def test_channel_tuple_call_method_basic_test(dci: DummyChannelInstrument) -> No
676684
677685
678686def test_channel_tuple_call_method_called_as_expected (
679- dci : DummyChannelInstrument , mocker
687+ dci : DummyChannelInstrument , mocker : "pytest_mock.MockerFixture"
680688) -> None :
681689 for channel in dci .channels :
682690 channel .turn_on = mocker .MagicMock (return_value = 1 )
0 commit comments