From 457ef5ca274a31b598d98d20c82020732bdd1cc5 Mon Sep 17 00:00:00 2001 From: Erik Johnston Date: Wed, 3 Nov 2021 09:28:48 +0000 Subject: [PATCH 1/4] Check that master key is returned when querying device for first time --- tests/41end-to-end-keys/08-cross-signing.pl | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/tests/41end-to-end-keys/08-cross-signing.pl b/tests/41end-to-end-keys/08-cross-signing.pl index 23f69266f..ecb60305e 100644 --- a/tests/41end-to-end-keys/08-cross-signing.pl +++ b/tests/41end-to-end-keys/08-cross-signing.pl @@ -652,6 +652,21 @@ matrix_join_room( $user2, $room_id ); })->then( sub { sync_until_user_in_device_list( $user1, $user2 ); + })->then( sub { + matrix_get_e2e_keys( $user1, $user2_id ); + })->then( sub { + my ( $content ) = @_; + + log_if_fail "key query content1", $content; + + # Check that we do in fact see the master key when querying the + # devices. + assert_json_keys( $content->{master_keys}, $user2_id ); + assert_json_keys( $content->{master_keys}->{$user2_id}, "keys"); + assert_json_keys( $content->{master_keys}->{$user2_id}{keys}, + "ed25519:nqOvzeuGWT/sRx3h7+MHoInYj3Uk2LD/unI9kDYcHwk"); + + matrix_sync_again( $user1 ) })->then( sub { sign_json( $device, secret_key => $self_signing_secret_key, @@ -671,8 +686,9 @@ })->then( sub { my ( $content ) = @_; - log_if_fail "key query content", $content; + log_if_fail "key query content2", $content; + # Check that fetching the devices again returns the new signature assert_json_keys( $content->{device_keys}->{$user2_id}->{$user2_device}, "signatures" ); assert_deeply_eq( $content->{device_keys}->{$user2_id}->{$user2_device}->{signatures}, { From cc922d6013c501e5e6b814d8bd84466eb8438246 Mon Sep 17 00:00:00 2001 From: Erik Johnston Date: Wed, 3 Nov 2021 11:42:56 +0000 Subject: [PATCH 2/4] Fix indents --- lib/SyTest/Homeserver.pm | 2 +- tests/41end-to-end-keys/08-cross-signing.pl | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/lib/SyTest/Homeserver.pm b/lib/SyTest/Homeserver.pm index 8a5b0cd41..a14f8c3fc 100644 --- a/lib/SyTest/Homeserver.pm +++ b/lib/SyTest/Homeserver.pm @@ -241,7 +241,7 @@ sub configure_logger loggers => { synapse => { - level => "INFO" + level => "DEBUG" } }, diff --git a/tests/41end-to-end-keys/08-cross-signing.pl b/tests/41end-to-end-keys/08-cross-signing.pl index ecb60305e..0aa0cc192 100644 --- a/tests/41end-to-end-keys/08-cross-signing.pl +++ b/tests/41end-to-end-keys/08-cross-signing.pl @@ -659,14 +659,14 @@ log_if_fail "key query content1", $content; - # Check that we do in fact see the master key when querying the - # devices. - assert_json_keys( $content->{master_keys}, $user2_id ); - assert_json_keys( $content->{master_keys}->{$user2_id}, "keys"); - assert_json_keys( $content->{master_keys}->{$user2_id}{keys}, - "ed25519:nqOvzeuGWT/sRx3h7+MHoInYj3Uk2LD/unI9kDYcHwk"); + # Check that we do in fact see the master key when querying the + # devices. + assert_json_keys( $content->{master_keys}, $user2_id ); + assert_json_keys( $content->{master_keys}->{$user2_id}, "keys"); + assert_json_keys( $content->{master_keys}->{$user2_id}{keys}, + "ed25519:nqOvzeuGWT/sRx3h7+MHoInYj3Uk2LD/unI9kDYcHwk"); - matrix_sync_again( $user1 ) + matrix_sync_again( $user1 ) })->then( sub { sign_json( $device, secret_key => $self_signing_secret_key, @@ -688,7 +688,7 @@ log_if_fail "key query content2", $content; - # Check that fetching the devices again returns the new signature + # Check that fetching the devices again returns the new signature assert_json_keys( $content->{device_keys}->{$user2_id}->{$user2_device}, "signatures" ); assert_deeply_eq( $content->{device_keys}->{$user2_id}->{$user2_device}->{signatures}, { From fe2846abcd3d6246a746e655a806100f272888c7 Mon Sep 17 00:00:00 2001 From: Erik Johnston Date: Wed, 3 Nov 2021 13:48:33 +0000 Subject: [PATCH 3/4] Remove debugging --- lib/SyTest/Homeserver.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/SyTest/Homeserver.pm b/lib/SyTest/Homeserver.pm index a14f8c3fc..8a5b0cd41 100644 --- a/lib/SyTest/Homeserver.pm +++ b/lib/SyTest/Homeserver.pm @@ -241,7 +241,7 @@ sub configure_logger loggers => { synapse => { - level => "DEBUG" + level => "INFO" } }, From 105f5059d2b95c3a4a2cc5b3372fdb6c66859ea8 Mon Sep 17 00:00:00 2001 From: Erik Johnston Date: Thu, 11 Nov 2021 09:33:23 +0000 Subject: [PATCH 4/4] Add extra check --- tests/41end-to-end-keys/08-cross-signing.pl | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tests/41end-to-end-keys/08-cross-signing.pl b/tests/41end-to-end-keys/08-cross-signing.pl index 0aa0cc192..07b721a3a 100644 --- a/tests/41end-to-end-keys/08-cross-signing.pl +++ b/tests/41end-to-end-keys/08-cross-signing.pl @@ -697,6 +697,12 @@ }, } ); + # Check that we still see the master key when querying the devices. + assert_json_keys( $content->{master_keys}, $user2_id ); + assert_json_keys( $content->{master_keys}->{$user2_id}, "keys"); + assert_json_keys( $content->{master_keys}->{$user2_id}{keys}, + "ed25519:nqOvzeuGWT/sRx3h7+MHoInYj3Uk2LD/unI9kDYcHwk"); + Future->done(1); }); };