=== Test case: rest_client_SUITE:add_contact_and_invite/1 (click for source code)

=== Config value:

    [{watchdog,<0.16273.1>},
     {muc_light_host,<<"muclight.localhost">>},
     {mam_backend,disabled},
     {mim_data_dir,"/home/circleci/project/big_tests/tests/rest_client_SUITE_data"},
     {preset,"ldap_mnesia"},
     {tc_logfile,"/home/circleci/project/big_tests/ct_report/ct_run.test@fbe05ecb9552.2022-03-18_10.50.03/big_tests.tests.rest_client_SUITE.logs/run.2022-03-18_11.00.14/rest_client_suite.add_contact_and_invite.50179.html"},
     {tc_group_properties,[{name,roster},parallel]},
     {tc_group_path,[]},
     {data_dir,"/home/circleci/project/big_tests/_build/default/lib/mongoose_tests/ebin/rest_client_SUITE_data/"},
     {priv_dir,"/home/circleci/project/big_tests/ct_report/ct_run.test@fbe05ecb9552.2022-03-18_10.50.03/big_tests.tests.rest_client_SUITE.logs/run.2022-03-18_11.00.14/log_private/"},
     {{saved_modules,mongooseim@localhost,<<"localhost">>},
      #{mod_adhoc => #{iqdisc => one_queue,report_commands_node => false},
        mod_amp => [],
        mod_bosh =>
            #{backend => mnesia,inactivity => 30,max_pause => 120,
              max_wait => infinity,server_acks => false},
        mod_cache_users =>
            #{number_of_segments => 5,strategy => fifo,time_to_live => 2},
        mod_carboncopy => [],mod_commands => [],
        mod_disco =>
            #{extra_domains => [],iqdisc => one_queue,server_info => [],
              users_can_see_hidden_services => false},
        mod_muc_commands => [],mod_muc_light_commands => [],
        mod_register =>
            [{access,register},
             {ip_access,[{allow,"127.0.0.0/8"},{deny,"0.0.0.0/0"}]},
             {welcome_message,{[],[]}}],
        mod_roster =>
            #{backend => mnesia,iqdisc => one_queue,store_current_id => false,
              versioning => false},
        mod_sic => #{iqdisc => one_queue},
        mod_stream_management =>
            #{ack => true,ack_freq => 1,backend => mnesia,buffer => true,
              buffer_max => 100,resume_timeout => 600,
              stale_h =>
                  #{enabled => false,geriatric => 3600,repeat_after => 1800}},
        mod_vcard =>
            #{backend => ldap,
              host => {prefix,<<"vjud.">>},
              iqdisc => parallel,
              ldap =>
                  #{base => <<"ou=Users,dc=esl,dc=com">>,
                    binary_search_fields => [],deref => never,
                    filter => <<"(objectClass=inetOrgPerson)">>,
                    pool_tag => default,
                    search_fields =>
                        [{<<"User">>,<<"%u">>},
                         {<<"Full Name">>,<<"displayName">>},
                         {<<"Given Name">>,<<"givenName">>},
                         {<<"Middle Name">>,<<"initials">>},
                         {<<"Family Name">>,<<"sn">>},
                         {<<"Nickname">>,<<"%u">>},
                         {<<"Birthday">>,<<"birthDay">>},
                         {<<"Country">>,<<"c">>},
                         {<<"City">>,<<"l">>},
                         {<<"Email">>,<<"mail">>},
                         {<<"Organization Name">>,<<"o">>},
                         {<<"Organization Unit">>,<<"ou">>}],
                    search_operator => 'and',
                    search_reported =>
                        [{<<"Full Name">>,<<"FN">>},
                         {<<"Given Name">>,<<"FIRST">>},
                         {<<"Middle Name">>,<<"MIDDLE">>},
                         {<<"Family Name">>,<<"LAST">>},
                         {<<"Nickname">>,<<"NICK">>},
                         {<<"Birthday">>,<<"BDAY">>},
                         {<<"Country">>,<<"CTRY">>},
                         {<<"City">>,<<"LOCALITY">>},
                         {<<"Email">>,<<"EMAIL">>},
                         {<<"Organization Name">>,<<"ORGNAME">>},
                         {<<"Organization Unit">>,<<"ORGUNIT">>}],
                    uids => [{<<"uid">>,<<"%u">>}],
                    vcard_map =>
                        [{<<"NICKNAME">>,<<"%u">>,[]},
                         {<<"FN">>,<<"%s">>,[<<"displayName">>]},
                         {<<"FAMILY">>,<<"%s">>,[<<"sn">>]},
                         {<<"GIVEN">>,<<"%s">>,[<<"givenName">>]},
                         {<<"MIDDLE">>,<<"%s">>,[<<"initials">>]},
                         {<<"ORGNAME">>,<<"%s">>,[<<"o">>]},
                         {<<"ORGUNIT">>,<<"%s">>,[<<"ou">>]},
                         {<<"CTRY">>,<<"%s">>,[<<"c">>]},
                         {<<"LOCALITY">>,<<"%s">>,[<<"l">>]},
                         {<<"STREET">>,<<"%s">>,[<<"street">>]},
                         {<<"REGION">>,<<"%s">>,[<<"st">>]},
                         {<<"PCODE">>,<<"%s">>,[<<"postalCode">>]},
                         {<<"TITLE">>,<<"%s">>,[<<"title">>]},
                         {<<"URL">>,<<"%s">>,[<<"labeleduri">>]},
                         {<<"DESC">>,<<"%s">>,[<<"description">>]},
                         {<<"TEL">>,<<"%s">>,[<<"telephoneNumber">>]},
                         {<<"EMAIL">>,<<"%s">>,[<<"mail">>]},
                         {<<"BDAY">>,<<"%s">>,[<<"birthDay">>]},
                         {<<"ROLE">>,<<"%s">>,[<<"employeeType">>]},
                         {<<"PHOTO">>,<<"%s">>,[<<"jpegPhoto">>]}]},
              matches => 30,search => true}}}]

=== Current directory is "/home/circleci/project/big_tests/ct_report/ct_run.test@fbe05ecb9552.2022-03-18_10.50.03"

=== Started at 2022-03-18 11:00:17


*** CT 2022-03-18 11:00:17.279 *** View log from node mongooseim@localhost when started mongooseim@localhost_4763.html
*** CT 2022-03-18 11:00:17.280 *** View log from node ejabberd2@localhost when started ejabberd2@localhost_2002.html

*** User 2022-03-18 11:00:17.317 ***
alicE_add_contact_and_invite_1551@localhost/res1 out
<stream:stream to='localhost' version='1.0' xml:lang='en' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams'>

*** User 2022-03-18 11:00:17.322 ***
alicE_add_contact_and_invite_1551@localhost/res1 in
<stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' id='de1f3ab19a3fb8ee' from='localhost' version='1.0' xml:lang='en'>

*** User 2022-03-18 11:00:17.322 ***
alicE_add_contact_and_invite_1551@localhost/res1 in
<stream:features>
	<starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls'/>
	<compression xmlns='http://jabber.org/features/compress'>
		<method>zlib</method>
	</compression>
	<mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'>
		<mechanism>PLAIN</mechanism>
	</mechanisms>
	<register xmlns='http://jabber.org/features/iq-register'/>
	<amp xmlns='http://jabber.org/feature/amp'/>
	<sm xmlns='urn:xmpp:sm:3'/>
</stream:features>



*** User 2022-03-18 11:00:17.322 ***
alicE_add_contact_and_invite_1551@localhost/res1 out
<auth xmlns='urn:ietf:params:xml:ns:xmpp-sasl' mechanism='PLAIN'>AGFsaWNFX2FkZF9jb250YWN0X2FuZF9pbnZpdGVfMTU1MQBtYXR5Z3J5c2E=</auth>



*** User 2022-03-18 11:00:17.332 ***
alicE_add_contact_and_invite_1551@localhost/res1 in
<success xmlns='urn:ietf:params:xml:ns:xmpp-sasl'/>



*** User 2022-03-18 11:00:17.332 ***
alicE_add_contact_and_invite_1551@localhost/res1 out
<stream:stream to='localhost' version='1.0' xml:lang='en' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams'>

*** User 2022-03-18 11:00:17.332 ***
alicE_add_contact_and_invite_1551@localhost/res1 in
<stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' id='c1624f460f74a0bf' from='localhost' version='1.0' xml:lang='en'>

*** User 2022-03-18 11:00:17.332 ***
alicE_add_contact_and_invite_1551@localhost/res1 in
<stream:features>
	<compression xmlns='http://jabber.org/features/compress'>
		<method>zlib</method>
	</compression>
	<bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'/>
	<session xmlns='urn:ietf:params:xml:ns:xmpp-session'/>
	<register xmlns='http://jabber.org/features/iq-register'/>
	<amp xmlns='http://jabber.org/feature/amp'/>
	<sm xmlns='urn:xmpp:sm:3'/>
</stream:features>



*** User 2022-03-18 11:00:17.332 ***
alicE_add_contact_and_invite_1551@localhost/res1 out
<iq type='set' id='ca1a717805f28e6af8debc410b41aa14'>
	<bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'>
		<resource>res1</resource>
	</bind>
</iq>



*** User 2022-03-18 11:00:17.332 ***
alicE_add_contact_and_invite_1551@localhost/res1 in
<iq id='ca1a717805f28e6af8debc410b41aa14' type='result'>
	<bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'>
		<jid>alicE_add_contact_and_invite_1551@localhost/res1</jid>
	</bind>
</iq>



*** User 2022-03-18 11:00:17.333 ***
alicE_add_contact_and_invite_1551@localhost/res1 out
<iq type='set' id='ba0f2d90f4fc0e7117a5ba3484c0867b'>
	<session xmlns='urn:ietf:params:xml:ns:xmpp-session'/>
</iq>



*** User 2022-03-18 11:00:17.333 ***
alicE_add_contact_and_invite_1551@localhost/res1 in
<iq type='result' id='ba0f2d90f4fc0e7117a5ba3484c0867b'>
	<session xmlns='urn:ietf:params:xml:ns:xmpp-session'/>
</iq>



*** User 2022-03-18 11:00:17.333 ***
alicE_add_contact_and_invite_1551@localhost/res1 out
<presence/>



*** User 2022-03-18 11:00:17.334 ***
alicE_add_contact_and_invite_1551@localhost/res1 in
<presence from='alicE_add_contact_and_invite_1551@localhost/res1' to='alice_add_contact_and_invite_1551@localhost/res1' xml:lang='en'/>



*** User 2022-03-18 11:00:17.334 ***
bOb_add_contact_and_invite_1551@localhost/res1 out
<stream:stream to='localhost' version='1.0' xml:lang='en' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams'>

*** User 2022-03-18 11:00:17.334 ***
bOb_add_contact_and_invite_1551@localhost/res1 in
<stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' id='e39b2981704aa053' from='localhost' version='1.0' xml:lang='en'>

*** User 2022-03-18 11:00:17.335 ***
bOb_add_contact_and_invite_1551@localhost/res1 in
<stream:features>
	<starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls'/>
	<compression xmlns='http://jabber.org/features/compress'>
		<method>zlib</method>
	</compression>
	<mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'>
		<mechanism>PLAIN</mechanism>
	</mechanisms>
	<register xmlns='http://jabber.org/features/iq-register'/>
	<amp xmlns='http://jabber.org/feature/amp'/>
	<sm xmlns='urn:xmpp:sm:3'/>
</stream:features>



*** User 2022-03-18 11:00:17.335 ***
bOb_add_contact_and_invite_1551@localhost/res1 out
<auth xmlns='urn:ietf:params:xml:ns:xmpp-sasl' mechanism='PLAIN'>AGJPYl9hZGRfY29udGFjdF9hbmRfaW52aXRlXzE1NTEAbWFrcm9saWth</auth>



*** User 2022-03-18 11:00:17.336 ***
bOb_add_contact_and_invite_1551@localhost/res1 in
<success xmlns='urn:ietf:params:xml:ns:xmpp-sasl'/>



*** User 2022-03-18 11:00:17.336 ***
bOb_add_contact_and_invite_1551@localhost/res1 out
<stream:stream to='localhost' version='1.0' xml:lang='en' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams'>

*** User 2022-03-18 11:00:17.336 ***
bOb_add_contact_and_invite_1551@localhost/res1 in
<stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' id='3a2ef856be3a70af' from='localhost' version='1.0' xml:lang='en'>

*** User 2022-03-18 11:00:17.336 ***
bOb_add_contact_and_invite_1551@localhost/res1 in
<stream:features>
	<compression xmlns='http://jabber.org/features/compress'>
		<method>zlib</method>
	</compression>
	<bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'/>
	<session xmlns='urn:ietf:params:xml:ns:xmpp-session'/>
	<register xmlns='http://jabber.org/features/iq-register'/>
	<amp xmlns='http://jabber.org/feature/amp'/>
	<sm xmlns='urn:xmpp:sm:3'/>
</stream:features>



*** User 2022-03-18 11:00:17.336 ***
bOb_add_contact_and_invite_1551@localhost/res1 out
<iq type='set' id='b015945507969e2b46a4195088528d7d'>
	<bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'>
		<resource>res1</resource>
	</bind>
</iq>



*** User 2022-03-18 11:00:17.337 ***
bOb_add_contact_and_invite_1551@localhost/res1 in
<iq id='b015945507969e2b46a4195088528d7d' type='result'>
	<bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'>
		<jid>bOb_add_contact_and_invite_1551@localhost/res1</jid>
	</bind>
</iq>



*** User 2022-03-18 11:00:17.337 ***
bOb_add_contact_and_invite_1551@localhost/res1 out
<iq type='set' id='99b8d6c452732b997f43dade53f8f4e1'>
	<session xmlns='urn:ietf:params:xml:ns:xmpp-session'/>
</iq>



*** User 2022-03-18 11:00:17.338 ***
bOb_add_contact_and_invite_1551@localhost/res1 in
<iq type='result' id='99b8d6c452732b997f43dade53f8f4e1'>
	<session xmlns='urn:ietf:params:xml:ns:xmpp-session'/>
</iq>



*** User 2022-03-18 11:00:17.338 ***
bOb_add_contact_and_invite_1551@localhost/res1 out
<presence/>



*** User 2022-03-18 11:00:17.338 ***
bOb_add_contact_and_invite_1551@localhost/res1 in
<presence from='bOb_add_contact_and_invite_1551@localhost/res1' to='bob_add_contact_and_invite_1551@localhost/res1' xml:lang='en'/>



*** User 2022-03-18 11:00:17.347 ***
REST request:
Code: 200
Req: {<0.16360.1>,<<"/api/contacts">>,<<"GET">>,
      [{<<"Content-Type">>,<<"application/json">>},
       {<<"Request-Id">>,<<"6c1cd8229c5007eb">>},
       {<<"authorization">>,
        <<"Basic Ym9iX2FkZF9jb250YWN0X2FuZF9pbnZpdGVfMTU1MUBsb2NhbGhvc3Q6bWFrcm9saWth">>}],
      <<>>}
Result: {{<<"200">>,<<"OK">>},
         [{<<"server">>,<<"Cowboy">>},
          {<<"date">>,<<"Fri, 18 Mar 2022 11:00:16 GMT">>},
          {<<"content-type">>,<<"application/json">>},
          {<<"content-length">>,<<"2">>}],
         <<"[]">>,125,1452}
Params: #{body => <<>>,
          creds =>
              {<<"bob_add_contact_and_invite_1551@localhost">>,
               <<"makrolika">>},
          method => <<"GET">>,path => <<"/api/contacts">>,
          return_headers => true,role => client,
          server => #{node => mongooseim@localhost}}


*** User 2022-03-18 11:00:17.360 ***
REST request:
Code: 204
Req: {<0.16377.1>,<<"/api/contacts">>,<<"POST">>,
      [{<<"Content-Type">>,<<"application/json">>},
       {<<"Request-Id">>,<<"1b9fac83adb6d050">>},
       {<<"authorization">>,
        <<"Basic Ym9iX2FkZF9jb250YWN0X2FuZF9pbnZpdGVfMTU1MUBsb2NhbGhvc3Q6bWFrcm9saWth">>}],
      <<"{\"jid\":\"alice_add_contact_and_invite_1551@localhost\"}">>}
Result: {{<<"204">>,<<"No Content">>},
         [{<<"server">>,<<"Cowboy">>},
          {<<"date">>,<<"Fri, 18 Mar 2022 11:00:16 GMT">>}],
         <<>>,80,4092}
Params: #{body =>
              <<"{\"jid\":\"alice_add_contact_and_invite_1551@localhost\"}">>,
          creds =>
              {<<"bob_add_contact_and_invite_1551@localhost">>,
               <<"makrolika">>},
          method => <<"POST">>,path => <<"/api/contacts">>,
          return_headers => true,role => client,
          server => #{node => mongooseim@localhost}}


*** User 2022-03-18 11:00:17.360 ***
bOb_add_contact_and_invite_1551@localhost/res1 in
<iq from='bob_add_contact_and_invite_1551@localhost' to='bob_add_contact_and_invite_1551@localhost/res1' id='push0bffaf984faafe75' type='set'>
	<query xmlns='jabber:iq:roster'>
		<item subscription='none' jid='alice_add_contact_and_invite_1551@localhost'/>
	</query>
</iq>



*** User 2022-03-18 11:00:17.415 ***
REST request:
Code: 200
Req: {<0.16412.1>,<<"/api/contacts">>,<<"GET">>,
      [{<<"Content-Type">>,<<"application/json">>},
       {<<"Request-Id">>,<<"efa7a950e4121150">>},
       {<<"authorization">>,
        <<"Basic Ym9iX2FkZF9jb250YWN0X2FuZF9pbnZpdGVfMTU1MUBsb2NhbGhvc3Q6bWFrcm9saWth">>}],
      <<>>}
Result: {{<<"200">>,<<"OK">>},
         [{<<"server">>,<<"Cowboy">>},
          {<<"date">>,<<"Fri, 18 Mar 2022 11:00:16 GMT">>},
          {<<"content-type">>,<<"application/json">>},
          {<<"content-length">>,<<"90">>}],
         <<"[{\"subscription\":\"none\",\"jid\":\"alice_add_contact_and_invite_1551@localhost\",\"ask\":\"none\"}]">>,
         214,9357}
Params: #{body => <<>>,
          creds =>
              {<<"bob_add_contact_and_invite_1551@localhost">>,
               <<"makrolika">>},
          method => <<"GET">>,path => <<"/api/contacts">>,
          return_headers => true,role => client,
          server => #{node => mongooseim@localhost}}


*** User 2022-03-18 11:00:17.441 ***
REST request:
Code: 204
Req: {<0.16453.1>,
      <<"/api/contacts/alice_add_contact_and_invite_1551@localhost">>,
      <<"PUT">>,
      [{<<"Content-Type">>,<<"application/json">>},
       {<<"Request-Id">>,<<"47ec3eaaa3a12ca7">>},
       {<<"authorization">>,
        <<"Basic Ym9iX2FkZF9jb250YWN0X2FuZF9pbnZpdGVfMTU1MUBsb2NhbGhvc3Q6bWFrcm9saWth">>}],
      <<"{\"action\":\"invite\"}">>}
Result: {{<<"204">>,<<"No Content">>},
         [{<<"server">>,<<"Cowboy">>},
          {<<"date">>,<<"Fri, 18 Mar 2022 11:00:16 GMT">>}],
         <<>>,80,3077}
Params: #{body => <<"{\"action\":\"invite\"}">>,
          creds =>
              {<<"bob_add_contact_and_invite_1551@localhost">>,
               <<"makrolika">>},
          method => <<"PUT">>,
          path =>
              <<"/api/contacts/alice_add_contact_and_invite_1551@localhost">>,
          return_headers => true,role => client,
          server => #{node => mongooseim@localhost}}


*** User 2022-03-18 11:00:17.441 ***
bOb_add_contact_and_invite_1551@localhost/res1 in
<iq from='bob_add_contact_and_invite_1551@localhost' to='bob_add_contact_and_invite_1551@localhost/res1' id='push73bb807aa982b981' type='set'>
	<query xmlns='jabber:iq:roster'>
		<item ask='subscribe' subscription='none' jid='alice_add_contact_and_invite_1551@localhost'/>
	</query>
</iq>



*** User 2022-03-18 11:00:17.441 ***
Push2: {xmlel,<<"iq">>,
              [{<<"from">>,<<"bob_add_contact_and_invite_1551@localhost">>},
               {<<"to">>,<<"bob_add_contact_and_invite_1551@localhost/res1">>},
               {<<"id">>,<<"push73bb807aa982b981">>},
               {<<"type">>,<<"set">>}],
              [{xmlel,<<"query">>,
                      [{<<"xmlns">>,<<"jabber:iq:roster">>}],
                      [{xmlel,<<"item">>,
                              [{<<"ask">>,<<"subscribe">>},
                               {<<"subscription">>,<<"none">>},
                               {<<"jid">>,
                                <<"alice_add_contact_and_invite_1551@localhost">>}],
                              []}]}]}

*** User 2022-03-18 11:00:17.441 ***
alicE_add_contact_and_invite_1551@localhost/res1 in
<presence from='bob_add_contact_and_invite_1551@localhost' to='alice_add_contact_and_invite_1551@localhost/res1' type='subscribe'/>



*** User 2022-03-18 11:00:17.452 ***
REST request:
Code: 200
Req: {<0.16481.1>,<<"/api/contacts">>,<<"GET">>,
      [{<<"Content-Type">>,<<"application/json">>},
       {<<"Request-Id">>,<<"2f1e9adcbb7dcf55">>},
       {<<"authorization">>,
        <<"Basic Ym9iX2FkZF9jb250YWN0X2FuZF9pbnZpdGVfMTU1MUBsb2NhbGhvc3Q6bWFrcm9saWth">>}],
      <<>>}
Result: {{<<"200">>,<<"OK">>},
         [{<<"server">>,<<"Cowboy">>},
          {<<"date">>,<<"Fri, 18 Mar 2022 11:00:16 GMT">>},
          {<<"content-type">>,<<"application/json">>},
          {<<"content-length">>,<<"89">>}],
         <<"[{\"subscription\":\"none\",\"jid\":\"alice_add_contact_and_invite_1551@localhost\",\"ask\":\"out\"}]">>,
         213,1056}
Params: #{body => <<>>,
          creds =>
              {<<"bob_add_contact_and_invite_1551@localhost">>,
               <<"makrolika">>},
          method => <<"GET">>,path => <<"/api/contacts">>,
          return_headers => true,role => client,
          server => #{node => mongooseim@localhost}}


*** User 2022-03-18 11:00:17.452 ***
alicE_add_contact_and_invite_1551@localhost/res1 out
<iq type='set' id='d06d473123c26646cb07cea4eab4fba8'>
	<query xmlns='jabber:iq:roster'>
		<item jid='bOb_add_contact_and_invite_1551@localhost' name='Bob'/>
	</query>
</iq>



*** User 2022-03-18 11:00:17.453 ***
alicE_add_contact_and_invite_1551@localhost/res1 in
<iq from='alicE_add_contact_and_invite_1551@localhost' to='alicE_add_contact_and_invite_1551@localhost/res1' id='push0f0e34e73cbe45a1' type='set'>
	<query xmlns='jabber:iq:roster'>
		<item subscription='none' name='Bob' jid='bob_add_contact_and_invite_1551@localhost'/>
	</query>
</iq>



*** User 2022-03-18 11:00:17.453 ***
alicE_add_contact_and_invite_1551@localhost/res1 out
<iq to='alicE_add_contact_and_invite_1551@localhost' id='push0f0e34e73cbe45a1' type='result'/>



*** User 2022-03-18 11:00:17.453 ***
alicE_add_contact_and_invite_1551@localhost/res1 in
<iq from='alicE_add_contact_and_invite_1551@localhost' to='alicE_add_contact_and_invite_1551@localhost/res1' id='d06d473123c26646cb07cea4eab4fba8' type='result'/>



*** User 2022-03-18 11:00:17.453 ***
alicE_add_contact_and_invite_1551@localhost/res1 out
<presence type='subscribed' to='bOb_add_contact_and_invite_1551@localhost'/>



*** User 2022-03-18 11:00:17.454 ***
bOb_add_contact_and_invite_1551@localhost/res1 in
<iq from='bOb_add_contact_and_invite_1551@localhost' to='bOb_add_contact_and_invite_1551@localhost/res1' id='push04c5e63fbecb333c' type='set'>
	<query xmlns='jabber:iq:roster'>
		<item subscription='to' jid='alice_add_contact_and_invite_1551@localhost'/>
	</query>
</iq>



*** User 2022-03-18 11:00:17.454 ***
Push3 {xmlel,<<"iq">>,
             [{<<"from">>,<<"bOb_add_contact_and_invite_1551@localhost">>},
              {<<"to">>,<<"bOb_add_contact_and_invite_1551@localhost/res1">>},
              {<<"id">>,<<"push04c5e63fbecb333c">>},
              {<<"type">>,<<"set">>}],
             [{xmlel,<<"query">>,
                     [{<<"xmlns">>,<<"jabber:iq:roster">>}],
                     [{xmlel,<<"item">>,
                             [{<<"subscription">>,<<"to">>},
                              {<<"jid">>,
                               <<"alice_add_contact_and_invite_1551@localhost">>}],
                             []}]}]}

*** User 2022-03-18 11:00:17.462 ***
REST request:
Code: 200
Req: {<0.16508.1>,<<"/api/contacts">>,<<"GET">>,
      [{<<"Content-Type">>,<<"application/json">>},
       {<<"Request-Id">>,<<"87e4898738c3e1e0">>},
       {<<"authorization">>,
        <<"Basic Ym9iX2FkZF9jb250YWN0X2FuZF9pbnZpdGVfMTU1MUBsb2NhbGhvc3Q6bWFrcm9saWth">>}],
      <<>>}
Result: {{<<"200">>,<<"OK">>},
         [{<<"server">>,<<"Cowboy">>},
          {<<"date">>,<<"Fri, 18 Mar 2022 11:00:16 GMT">>},
          {<<"content-type">>,<<"application/json">>},
          {<<"content-length">>,<<"88">>}],
         <<"[{\"subscription\":\"to\",\"jid\":\"alice_add_contact_and_invite_1551@localhost\",\"ask\":\"none\"}]">>,
         212,1317}
Params: #{body => <<>>,
          creds =>
              {<<"bob_add_contact_and_invite_1551@localhost">>,
               <<"makrolika">>},
          method => <<"GET">>,path => <<"/api/contacts">>,
          return_headers => true,role => client,
          server => #{node => mongooseim@localhost}}


*** User 2022-03-18 11:00:17.463 ***
bOb_add_contact_and_invite_1551@localhost/res1 out
</stream:stream>

*** User 2022-03-18 11:00:17.463 ***
bOb_add_contact_and_invite_1551@localhost/res1 in
</stream:stream>

*** User 2022-03-18 11:00:17.463 ***
alicE_add_contact_and_invite_1551@localhost/res1 out
</stream:stream>

*** User 2022-03-18 11:00:17.463 ***
alicE_add_contact_and_invite_1551@localhost/res1 in
</stream:stream>
*** CT 2022-03-18 11:00:17.465 *** View log from node ejabberd2@localhost when finished ejabberd2@localhost_2002.html
*** CT 2022-03-18 11:00:17.465 *** View log from node mongooseim@localhost when finished mongooseim@localhost_4763.html



=== Ended at 2022-03-18 11:00:17
=== successfully completed test case
=== === Returned value: ok