@@ -19,7 +19,8 @@ groups() ->
19
19
20
20
cases () ->
21
21
[process_iq_works_across_multiple_nodes ,
22
- process_iq_timeout ].
22
+ process_iq_timeout ,
23
+ send_unexpected_result_iq ].
23
24
24
25
% %--------------------------------------------------------------------
25
26
% % Init & teardown
@@ -77,6 +78,19 @@ process_iq_timeout(Config) ->
77
78
end ,
78
79
escalus :fresh_story (Config , [{alice , 1 }], F ).
79
80
81
+
82
+ send_unexpected_result_iq (Config ) ->
83
+ F = fun (Alice ) ->
84
+ Jid = escalus_client :full_jid (Alice ),
85
+ Server = escalus_client :server (Alice ),
86
+ Request = unexpected_result_iq (Server ),
87
+ escalus_client :send (Alice , Request ),
88
+ Stanza = escalus :wait_for_stanza (Alice ),
89
+ escalus :assert (is_iq_error , [Request ], Stanza ),
90
+ escalus :assert (is_error , [<<" cancel" >>, <<" service-unavailable" >>], Stanza )
91
+ end ,
92
+ escalus :fresh_story (Config , [{alice , 1 }], F ).
93
+
80
94
% %--------------------------------------------------------------------
81
95
% % Helpers
82
96
% %--------------------------------------------------------------------
@@ -100,3 +114,10 @@ route_iq(Alice, Timeout) ->
100
114
Self ! {result , CbFrom , CbTo , CbAcc , CbIQ }, CbAcc end ,
101
115
Args = [From , To , Acc , IQ , Callback , Timeout ],
102
116
rpc (mim2 (), ejabberd_local , route_iq , Args ).
117
+
118
+
119
+ unexpected_result_iq (To ) ->
120
+ # xmlel {name = <<" iq" >>,
121
+ attrs = #{<<" id" >> => <<" unexp3443" >>, <<" type" >> => <<" result" >>,
122
+ <<" to" >> => To },
123
+ children = []}.
0 commit comments