From 22c6c80310a8d3d3abbd1006598b4fbaec98ffd0 Mon Sep 17 00:00:00 2001 From: Azul Date: Fri, 22 Sep 2017 15:30:40 +0200 Subject: wkd: implement basic lookup of keys through wkd wkd is the web key directory. See the Readme.md in /lib/nickserver/wkd --- test/remote/hkp_source_test.rb | 8 +++----- test/remote/wkd_source_test.rb | 43 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+), 5 deletions(-) create mode 100644 test/remote/wkd_source_test.rb (limited to 'test/remote') diff --git a/test/remote/hkp_source_test.rb b/test/remote/hkp_source_test.rb index ff61513..c246097 100644 --- a/test/remote/hkp_source_test.rb +++ b/test/remote/hkp_source_test.rb @@ -34,10 +34,9 @@ class RemoteHkpSourceTest < CelluloidTest protected def assert_key_info_for_uid(uid) - source.search uid do |status, keys| - assert_equal 200, status - yield keys - end + status, keys = source.search uid + assert_equal 200, status + yield keys rescue HTTP::ConnectionError => e skip "could not talk to hkp server: #{e}" end @@ -45,5 +44,4 @@ class RemoteHkpSourceTest < CelluloidTest def source Nickserver::Hkp::Source.new adapter end - end diff --git a/test/remote/wkd_source_test.rb b/test/remote/wkd_source_test.rb new file mode 100644 index 0000000..acb6759 --- /dev/null +++ b/test/remote/wkd_source_test.rb @@ -0,0 +1,43 @@ +require 'test_helper' +require 'file_content' +require 'support/celluloid_test' +require 'support/http_adapter_helper' +require 'nickserver/wkd/source' +require 'nickserver/email_address' + +class RemoteWkdSourceTest < CelluloidTest + include HttpAdapterHelper + include FileContent + + def test_existing_key + response = source.query email_with_key + assert_equal 200, response.status + assert_pgp_key_in response + end + + def test_missing_key + uid = 'thisemaildoesnotexist@test.gnupg.org' + email = Nickserver::EmailAddress.new uid + status, body = source.query email + assert_nil status + assert_nil body + end + + protected + + def assert_pgp_key_in(response) + json = JSON.parse response.content + assert_equal email_with_key.to_s, json["address"] + refute_empty json["openpgp"] + assert_equal file_content('dewey.pgp.asc'), json['openpgp'] + end + + def email_with_key + uid = 'dewey@test.gnupg.org' + email = Nickserver::EmailAddress.new uid + end + + def source + Nickserver::Wkd::Source.new adapter + end +end -- cgit v1.2.3 From 40916407517f4bdb75a295caf29e02d4f403349b Mon Sep 17 00:00:00 2001 From: Azul Date: Sat, 23 Sep 2017 11:07:32 +0200 Subject: style: rubocop mostly auto-correct --- test/remote/celluloid_http_test.rb | 1 - test/remote/hkp_source_test.rb | 2 +- test/remote/nicknym_source_test.rb | 5 ++--- test/remote/wkd_source_test.rb | 4 ++-- 4 files changed, 5 insertions(+), 7 deletions(-) (limited to 'test/remote') diff --git a/test/remote/celluloid_http_test.rb b/test/remote/celluloid_http_test.rb index da5f5d7..b315c6b 100644 --- a/test/remote/celluloid_http_test.rb +++ b/test/remote/celluloid_http_test.rb @@ -3,7 +3,6 @@ require 'support/celluloid_test' require 'nickserver/adapters/celluloid_http' class Nickserver::Adapters::CelluloidHttpTest < CelluloidTest - def test_https_for_hkp url = Nickserver::Config.hkp_url status, _body = adapter.get url diff --git a/test/remote/hkp_source_test.rb b/test/remote/hkp_source_test.rb index c246097..8232dce 100644 --- a/test/remote/hkp_source_test.rb +++ b/test/remote/hkp_source_test.rb @@ -19,8 +19,8 @@ class RemoteHkpSourceTest < CelluloidTest ca_file = file_path('mayfirst-ca.pem') config.stub(:hkp_url, hkp_url) do + # config.stub(:hkp_ca_file, file_path('autistici-ca.pem')) do config.stub(:hkp_ca_file, ca_file) do - #config.stub(:hkp_ca_file, file_path('autistici-ca.pem')) do assert File.exist?(Nickserver::Config.hkp_ca_file) uid = 'elijah@riseup.net' assert_key_info_for_uid uid do |keys| diff --git a/test/remote/nicknym_source_test.rb b/test/remote/nicknym_source_test.rb index b97f2b2..6fff1f6 100644 --- a/test/remote/nicknym_source_test.rb +++ b/test/remote/nicknym_source_test.rb @@ -48,8 +48,8 @@ class RemoteNicknymSourceTest < CelluloidTest def assert_pgp_key_in(response) json = JSON.parse response.content - assert_equal email_with_key.to_s, json["address"] - refute_empty json["openpgp"] + assert_equal email_with_key.to_s, json['address'] + refute_empty json['openpgp'] rescue JSON::ParserError skip "invalid json response: #{response.content}" end @@ -65,5 +65,4 @@ class RemoteNicknymSourceTest < CelluloidTest def email_without_key Nickserver::EmailAddress.new('pleaseneverusethisemailweuseittotest@mail.bitmask.net') end - end diff --git a/test/remote/wkd_source_test.rb b/test/remote/wkd_source_test.rb index acb6759..7eaab79 100644 --- a/test/remote/wkd_source_test.rb +++ b/test/remote/wkd_source_test.rb @@ -27,8 +27,8 @@ class RemoteWkdSourceTest < CelluloidTest def assert_pgp_key_in(response) json = JSON.parse response.content - assert_equal email_with_key.to_s, json["address"] - refute_empty json["openpgp"] + assert_equal email_with_key.to_s, json['address'] + refute_empty json['openpgp'] assert_equal file_content('dewey.pgp.asc'), json['openpgp'] end -- cgit v1.2.3 From f40ef14010af08c49810c0a6a2349072948170e6 Mon Sep 17 00:00:00 2001 From: Azul Date: Sat, 23 Sep 2017 13:43:29 +0200 Subject: style: more rubocop fixes --- test/remote/wkd_source_test.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'test/remote') diff --git a/test/remote/wkd_source_test.rb b/test/remote/wkd_source_test.rb index 7eaab79..1ed7ea5 100644 --- a/test/remote/wkd_source_test.rb +++ b/test/remote/wkd_source_test.rb @@ -27,14 +27,14 @@ class RemoteWkdSourceTest < CelluloidTest def assert_pgp_key_in(response) json = JSON.parse response.content - assert_equal email_with_key.to_s, json['address'] - refute_empty json['openpgp'] + assert_equal email_with_key.to_s, json["address"] + refute_empty json["openpgp"] assert_equal file_content('dewey.pgp.asc'), json['openpgp'] end def email_with_key uid = 'dewey@test.gnupg.org' - email = Nickserver::EmailAddress.new uid + Nickserver::EmailAddress.new uid end def source -- cgit v1.2.3