@@ -107,28 +107,44 @@ def test_remove_delegated_service(mdns_console, dig_app):
107
107
mdns_console .get_output ('MDNS: Service Instance: extern' )
108
108
109
109
110
- def check_txt_for_service (instance , service , proto , mdns_console , dig_app , host = None ):
110
+ def check_txt_for_service (instance , service , proto , mdns_console , dig_app , host = None , with_inst = False ):
111
111
for_host_arg = f'-h { host } ' if host is not None else ''
112
- mdns_console .send_input (f'mdns_service_txt_set { service } { proto } { for_host_arg } key1 value1' )
112
+ for_inst_arg = f'-i { instance } ' if with_inst else ''
113
+ mdns_console .send_input (f'mdns_service_txt_set { service } { proto } { for_host_arg } { for_inst_arg } key1 value1' )
113
114
dig_app .check_record (f'{ instance } .{ service } .{ proto } .local' , query_type = 'SRV' , expected = True )
114
115
dig_app .check_record (f'{ service } .{ proto } .local' , query_type = 'TXT' , expected = True , expect = 'key1=value1' )
115
- mdns_console .send_input (f'mdns_service_txt_set { service } { proto } { for_host_arg } key2 value2' )
116
+ mdns_console .send_input (f'mdns_service_txt_set { service } { proto } { for_host_arg } { for_inst_arg } key2 value2' )
116
117
dig_app .check_record (f'{ service } .{ proto } .local' , query_type = 'TXT' , expected = True , expect = 'key2=value2' )
117
- mdns_console .send_input (f'mdns_service_txt_remove { service } { proto } { for_host_arg } key2' )
118
+ mdns_console .send_input (f'mdns_service_txt_remove { service } { proto } { for_host_arg } { for_inst_arg } key2' )
118
119
dig_app .check_record (f'{ service } .{ proto } .local' , query_type = 'TXT' , expected = False , expect = 'key2=value2' )
119
120
dig_app .check_record (f'{ service } .{ proto } .local' , query_type = 'TXT' , expected = True , expect = 'key1=value1' )
120
- mdns_console .send_input (f'mdns_service_txt_replace { service } { proto } { for_host_arg } key3=value3 key4=value4' )
121
+ mdns_console .send_input (f'mdns_service_txt_replace { service } { proto } { for_host_arg } { for_inst_arg } key3=value3 key4=value4' )
121
122
dig_app .check_record (f'{ service } .{ proto } .local' , query_type = 'TXT' , expected = False , expect = 'key1=value1' )
122
123
dig_app .check_record (f'{ service } .{ proto } .local' , query_type = 'TXT' , expected = True , expect = 'key3=value3' )
123
124
dig_app .check_record (f'{ service } .{ proto } .local' , query_type = 'TXT' , expected = True , expect = 'key4=value4' )
124
125
125
126
126
127
def test_update_txt (mdns_console , dig_app ):
127
128
check_txt_for_service ('local' , '_test' , '_tcp' , mdns_console = mdns_console , dig_app = dig_app )
129
+ check_txt_for_service ('local' , '_test' , '_tcp' , mdns_console = mdns_console , dig_app = dig_app , with_inst = True )
128
130
129
131
130
132
def test_update_delegated_txt (mdns_console , dig_app ):
131
133
check_txt_for_service ('extern' , '_test2' , '_tcp' , mdns_console = mdns_console , dig_app = dig_app , host = 'delegated' )
134
+ check_txt_for_service ('extern' , '_test2' , '_tcp' , mdns_console = mdns_console , dig_app = dig_app , host = 'delegated' , with_inst = True )
135
+
136
+
137
+ def test_service_port_set (mdns_console , dig_app ):
138
+ dig_app .check_record ('local._test._tcp.local' , query_type = 'SRV' , expected = True , expect = '80' )
139
+ mdns_console .send_input ('mdns_service_port_set _test _tcp 81' )
140
+ dig_app .check_record ('local._test._tcp.local' , query_type = 'SRV' , expected = True , expect = '81' )
141
+ mdns_console .send_input ('mdns_service_port_set _test2 _tcp -h delegated 82' )
142
+ dig_app .check_record ('extern._test2._tcp.local' , query_type = 'SRV' , expected = True , expect = '82' )
143
+ mdns_console .send_input ('mdns_service_port_set _test2 _tcp -h delegated -i extern 83' )
144
+ dig_app .check_record ('extern._test2._tcp.local' , query_type = 'SRV' , expected = True , expect = '83' )
145
+ mdns_console .send_input ('mdns_service_port_set _test2 _tcp -h delegated -i invalid_inst 84' )
146
+ mdns_console .get_output ('ESP_ERR_NOT_FOUND' )
147
+ dig_app .check_record ('extern._test2._tcp.local' , query_type = 'SRV' , expected = True , expect = '83' )
132
148
133
149
134
150
if __name__ == '__main__' :
0 commit comments