From 95c61aabc30dc791f6a41433275919e7ff056c13 Mon Sep 17 00:00:00 2001 From: Anna Headley Date: Thu, 29 Nov 2018 10:06:52 -0500 Subject: [PATCH] Add failing test for #448 --- spec/cassettes/full_manifest.yml | 554 ++++++++++++++++++ spec/factories/pages.rb | 8 + .../javascript/multi_image_select_spec.rb | 50 ++ spec/rails_helper.rb | 1 + .../support/features/test_features_helpers.rb | 40 ++ 5 files changed, 653 insertions(+) create mode 100644 spec/cassettes/full_manifest.yml create mode 100644 spec/factories/pages.rb create mode 100644 spec/features/javascript/multi_image_select_spec.rb create mode 100644 spec/support/features/test_features_helpers.rb diff --git a/spec/cassettes/full_manifest.yml b/spec/cassettes/full_manifest.yml new file mode 100644 index 00000000..b6f5b89b --- /dev/null +++ b/spec/cassettes/full_manifest.yml @@ -0,0 +1,554 @@ +--- +http_interactions: +- request: + method: head + uri: https://figgy-staging.princeton.edu/concern/scanned_resources/d26c6d2e-7935-4fff-8a9a-1dfec854d394/manifest + body: + encoding: US-ASCII + string: '' + headers: + User-Agent: + - Faraday v0.9.2 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Connection: + - keep-alive + Status: + - 200 OK + Cache-Control: + - max-age=0, private, must-revalidate + Strict-Transport-Security: + - max-age=15552000; includeSubDomains + X-Xss-Protection: + - 1; mode=block + X-Request-Id: + - 661dd6ea-952f-4b0b-b223-99f95bf3073a + Etag: + - W/"f014b73b181d449e00c570071edd5551" + X-Frame-Options: + - SAMEORIGIN + X-Runtime: + - '0.787883' + X-Content-Type-Options: + - nosniff + Date: + - Thu, 29 Nov 2018 15:31:43 GMT + X-Powered-By: + - Phusion Passenger 5.3.5 + Server: + - nginx/1.14.0 + Phusion Passenger 5.3.5 + Access-Control-Allow-Origin: + - "*" + Access-Control-Allow-Credentials: + - 'true' + Access-Control-Allow-Methods: + - GET, POST, OPTIONS + Access-Control-Allow-Headers: + - DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Origin + body: + encoding: UTF-8 + string: '' + http_version: + recorded_at: Thu, 29 Nov 2018 15:31:45 GMT +- request: + method: get + uri: https://figgy-staging.princeton.edu/concern/scanned_resources/d26c6d2e-7935-4fff-8a9a-1dfec854d394/manifest + body: + encoding: US-ASCII + string: '' + headers: + User-Agent: + - Faraday v0.9.2 + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Status: + - 200 OK + Cache-Control: + - max-age=0, private, must-revalidate + Strict-Transport-Security: + - max-age=15552000; includeSubDomains + X-Xss-Protection: + - 1; mode=block + X-Request-Id: + - '009f780b-cb54-4edb-9cc8-1a139107be06' + Etag: + - W/"5ed71429b9acf8eaba68ec3d020e4d9b" + X-Frame-Options: + - SAMEORIGIN + X-Runtime: + - '0.047920' + X-Content-Type-Options: + - nosniff + Date: + - Thu, 29 Nov 2018 15:31:43 GMT + X-Powered-By: + - Phusion Passenger 5.3.5 + Server: + - nginx/1.14.0 + Phusion Passenger 5.3.5 + Access-Control-Allow-Origin: + - "*" + Access-Control-Allow-Credentials: + - 'true' + Access-Control-Allow-Methods: + - GET, POST, OPTIONS + Access-Control-Allow-Headers: + - DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Origin + body: + encoding: ASCII-8BIT + string: !binary |- + eyJAY29udGV4dCI6Imh0dHA6Ly9paWlmLmlvL2FwaS9wcmVzZW50YXRpb24vMi9jb250ZXh0Lmpzb24iLCJAdHlwZSI6InNjOk1hbmlmZXN0IiwiQGlkIjoiaHR0cHM6Ly9maWdneS1zdGFnaW5nLnByaW5jZXRvbi5lZHUvY29uY2Vybi9zY2FubmVkX3Jlc291cmNlcy9kMjZjNmQyZS03OTM1LTRmZmYtOGE5YS0xZGZlYzg1NGQzOTQvbWFuaWZlc3QiLCJsYWJlbCI6WyJFYXJ0aCByaXRlcyA6IGZlcnRpbGl0eSByaXRlcyBpbiBwcmUtaW5kdXN0cmlhbCBCcml0YWluIl0sImRlc2NyaXB0aW9uIjoiSW5jbHVkZXMgaW5kZXguIiwidmlld2luZ0hpbnQiOiJpbmRpdmlkdWFscyIsIm1ldGFkYXRhIjpbeyJsYWJlbCI6IkNyZWF0ZWQgQXQiLCJ2YWx1ZSI6WyIwNy8xNi8xOCAwMzowOToyMSBQTSBVVEMiXX0seyJsYWJlbCI6IlVwZGF0ZWQgQXQiLCJ2YWx1ZSI6WyIwNy8xNi8xOCAwMzozNTowMSBQTSBVVEMiXX0seyJsYWJlbCI6IkF1dGhvciIsInZhbHVlIjpbIkJvcmQsIEphbmV0LCAxOTQ1LSJdfSx7ImxhYmVsIjoiRGVwb3NpdG9yIiwidmFsdWUiOlsidHBlbmQiXX0seyJsYWJlbCI6IkNyZWF0ZWQiLCJ2YWx1ZSI6WyIwMS8wMS8xOTgyIl19LHsibGFiZWwiOiJFeHRlbnQiLCJ2YWx1ZSI6WyJ4aXYsIDI3MyBwLiA6IGlsbC4gOyAyNCBjbS4iXX0seyJsYWJlbCI6IklkZW50aWZpZXIiLCJ2YWx1ZSI6WyJhcms6Lzk5OTk5L2ZrNGZqM3ByNXAiXX0seyJsYWJlbCI6IlRpdGxlIiwidmFsdWUiOlt7IkB2YWx1ZSI6IkVhcnRoIHJpdGVzIDogZmVydGlsaXR5IHJpdGVzIGluIHByZS1pbmR1c3RyaWFsIEJyaXRhaW4iLCJAbGFuZ3VhZ2UiOiJlbmcifV19LHsibGFiZWwiOiJDb250cmlidXRvciIsInZhbHVlIjpbIkJvcmQsIENvbGluIl19LHsibGFiZWwiOiJDcmVhdG9yIiwidmFsdWUiOlsiQm9yZCwgSmFuZXQsIDE5NDUtIl19LHsibGFiZWwiOiJEYXRlIiwidmFsdWUiOlsiMTk4MiJdfSx7ImxhYmVsIjoiRGVzY3JpcHRpb24iLCJ2YWx1ZSI6WyJJbmNsdWRlcyBpbmRleC4iXX0seyJsYWJlbCI6Ikxhbmd1YWdlIiwidmFsdWUiOlsiRW5nbGlzaCJdfSx7ImxhYmVsIjoiUHVibGlzaGVyIiwidmFsdWUiOlsiTG9uZG9uIDsgTmV3IFlvcmsgOiBHcmFuYWRhLCAxOTgyLiJdfSx7ImxhYmVsIjoiU3ViamVjdCIsInZhbHVlIjpbIkZlcnRpbGl0eSBjdWx0c+KAlEdyZWF0IEJyaXRhaW7igJRIaXN0b3J5Il19LHsibGFiZWwiOiJTb3VyY2UgTWV0YWRhdGEgSWRlbnRpZmllciIsInZhbHVlIjpbIjEyMzQ1NiJdfSx7ImxhYmVsIjoiQ2FsbCBOdW1iZXIiLCJ2YWx1ZSI6WyJCTDk4MC5HNyBCNjYgMTk4MiJdfSx7ImxhYmVsIjoiTG9jYXRpb24iLCJ2YWx1ZSI6WyJSQ1BQQSBCTDk4MC5HNyBCNjYgMTk4MiJdfSx7ImxhYmVsIjoiUERGIFR5cGUiLCJ2YWx1ZSI6WyJncmF5Il19XSwic2VxdWVuY2VzIjpbeyJAdHlwZSI6InNjOlNlcXVlbmNlIiwiQGlkIjoiaHR0cHM6Ly9maWdneS1zdGFnaW5nLnByaW5jZXRvbi5lZHUvY29uY2Vybi9zY2FubmVkX3Jlc291cmNlcy9kMjZjNmQyZS03OTM1LTRmZmYtOGE5YS0xZGZlYzg1NGQzOTQvbWFuaWZlc3Qvc2VxdWVuY2Uvbm9ybWFsIiwicmVuZGVyaW5nIjpbeyJAaWQiOiJodHRwczovL2ZpZ2d5LXN0YWdpbmcucHJpbmNldG9uLmVkdS9jb25jZXJuL3NjYW5uZWRfcmVzb3VyY2VzL2QyNmM2ZDJlLTc5MzUtNGZmZi04YTlhLTFkZmVjODU0ZDM5NC9wZGYiLCJsYWJlbCI6IkRvd25sb2FkIGFzIFBERiIsImZvcm1hdCI6ImFwcGxpY2F0aW9uL3BkZiJ9XSwiY2FudmFzZXMiOlt7IkB0eXBlIjoic2M6Q2FudmFzIiwiQGlkIjoiaHR0cHM6Ly9maWdneS1zdGFnaW5nLnByaW5jZXRvbi5lZHUvY29uY2Vybi9zY2FubmVkX3Jlc291cmNlcy9kMjZjNmQyZS03OTM1LTRmZmYtOGE5YS0xZGZlYzg1NGQzOTQvbWFuaWZlc3QvY2FudmFzLzhlMjBlY2M2LTAzNTMtNDVhNi05MDMwLTBjN2IyYmU0ZTIzNiIsImxhYmVsIjoiMDAwMDAwMDEudGlmIiwicmVuZGVyaW5nIjpbeyJAaWQiOiJodHRwczovL2ZpZ2d5LXN0YWdpbmcucHJpbmNldG9uLmVkdS9kb3dubG9hZHMvOGUyMGVjYzYtMDM1My00NWE2LTkwMzAtMGM3YjJiZTRlMjM2L2ZpbGUvNTY1ZjQ0NWYtMTIxOC00MjBmLWI5NTAtODRmMTE4ZjYyZjZhIiwibGFiZWwiOiJEb3dubG9hZCB0aGUgb3JpZ2luYWwgZmlsZSIsImZvcm1hdCI6ImltYWdlL3RpZmYifV0sIndpZHRoIjo3MjAwLCJoZWlnaHQiOjQ4NjcsImltYWdlcyI6W3siQHR5cGUiOiJvYTpBbm5vdGF0aW9uIiwibW90aXZhdGlvbiI6InNjOnBhaW50aW5nIiwicmVzb3VyY2UiOnsiQHR5cGUiOiJkY3R5cGVzOkltYWdlIiwiQGlkIjoiaHR0cHM6Ly9maWdneS1zdGFnaW5nLnByaW5jZXRvbi5lZHUvY2FudGFsb3VwZS9paWlmLzIvZjIlMkYxNyUyRmE5JTJGZjIxN2E5NDU0ZjYwNDU1OTgzZDgxZTU0NTNlMmFkZGElMkZpbnRlcm1lZGlhdGVfZmlsZS5qcDIvZnVsbC8hMTAwMCwvMC9kZWZhdWx0LmpwZyIsImhlaWdodCI6NDg2Nywid2lkdGgiOjcyMDAsImZvcm1hdCI6ImltYWdlL2pwZWciLCJzZXJ2aWNlIjp7IkBjb250ZXh0IjoiaHR0cDovL2lpaWYuaW8vYXBpL2ltYWdlLzIvY29udGV4dC5qc29uIiwiQGlkIjoiaHR0cHM6Ly9maWdneS1zdGFnaW5nLnByaW5jZXRvbi5lZHUvY2FudGFsb3VwZS9paWlmLzIvZjIlMkYxNyUyRmE5JTJGZjIxN2E5NDU0ZjYwNDU1OTgzZDgxZTU0NTNlMmFkZGElMkZpbnRlcm1lZGlhdGVfZmlsZS5qcDIiLCJwcm9maWxlIjoiaHR0cDovL2lpaWYuaW8vYXBpL2ltYWdlLzIvbGV2ZWwyLmpzb24ifX0sIm9uIjoiaHR0cHM6Ly9maWdneS1zdGFnaW5nLnByaW5jZXRvbi5lZHUvY29uY2Vybi9zY2FubmVkX3Jlc291cmNlcy9kMjZjNmQyZS03OTM1LTRmZmYtOGE5YS0xZGZlYzg1NGQzOTQvbWFuaWZlc3QvY2FudmFzLzhlMjBlY2M2LTAzNTMtNDVhNi05MDMwLTBjN2IyYmU0ZTIzNiJ9XX0seyJAdHlwZSI6InNjOkNhbnZhcyIsIkBpZCI6Imh0dHBzOi8vZmlnZ3ktc3RhZ2luZy5wcmluY2V0b24uZWR1L2NvbmNlcm4vc2Nhbm5lZF9yZXNvdXJjZXMvZDI2YzZkMmUtNzkzNS00ZmZmLThhOWEtMWRmZWM4NTRkMzk0L21hbmlmZXN0L2NhbnZhcy9kM2UzNzJlZC0yNTI3LTQ0MWUtOTlmYS1jODI1YzViODNhNGMiLCJsYWJlbCI6IjAwMDAwMDAyLnRpZiIsInJlbmRlcmluZyI6W3siQGlkIjoiaHR0cHM6Ly9maWdneS1zdGFnaW5nLnByaW5jZXRvbi5lZHUvZG93bmxvYWRzL2QzZTM3MmVkLTI1MjctNDQxZS05OWZhLWM4MjVjNWI4M2E0Yy9maWxlL2IyZTIyODQzLTdhM2UtNDVmYy1iZDk0LTU4NzU0NDM2ZjNiMSIsImxhYmVsIjoiRG93bmxvYWQgdGhlIG9yaWdpbmFsIGZpbGUiLCJmb3JtYXQiOiJpbWFnZS90aWZmIn1dLCJ3aWR0aCI6NzIwMCwiaGVpZ2h0Ijo0ODgxLCJpbWFnZXMiOlt7IkB0eXBlIjoib2E6QW5ub3RhdGlvbiIsIm1vdGl2YXRpb24iOiJzYzpwYWludGluZyIsInJlc291cmNlIjp7IkB0eXBlIjoiZGN0eXBlczpJbWFnZSIsIkBpZCI6Imh0dHBzOi8vZmlnZ3ktc3RhZ2luZy5wcmluY2V0b24uZWR1L2NhbnRhbG91cGUvaWlpZi8yL2E1JTJGMjUlMkZiZCUyRmE1MjViZDliZjE1NDRmMjg5YzI1NzUzNWQyY2EzODQzJTJGaW50ZXJtZWRpYXRlX2ZpbGUuanAyL2Z1bGwvITEwMDAsLzAvZGVmYXVsdC5qcGciLCJoZWlnaHQiOjQ4ODEsIndpZHRoIjo3MjAwLCJmb3JtYXQiOiJpbWFnZS9qcGVnIiwic2VydmljZSI6eyJAY29udGV4dCI6Imh0dHA6Ly9paWlmLmlvL2FwaS9pbWFnZS8yL2NvbnRleHQuanNvbiIsIkBpZCI6Imh0dHBzOi8vZmlnZ3ktc3RhZ2luZy5wcmluY2V0b24uZWR1L2NhbnRhbG91cGUvaWlpZi8yL2E1JTJGMjUlMkZiZCUyRmE1MjViZDliZjE1NDRmMjg5YzI1NzUzNWQyY2EzODQzJTJGaW50ZXJtZWRpYXRlX2ZpbGUuanAyIiwicHJvZmlsZSI6Imh0dHA6Ly9paWlmLmlvL2FwaS9pbWFnZS8yL2xldmVsMi5qc29uIn19LCJvbiI6Imh0dHBzOi8vZmlnZ3ktc3RhZ2luZy5wcmluY2V0b24uZWR1L2NvbmNlcm4vc2Nhbm5lZF9yZXNvdXJjZXMvZDI2YzZkMmUtNzkzNS00ZmZmLThhOWEtMWRmZWM4NTRkMzk0L21hbmlmZXN0L2NhbnZhcy9kM2UzNzJlZC0yNTI3LTQ0MWUtOTlmYS1jODI1YzViODNhNGMifV19LHsiQHR5cGUiOiJzYzpDYW52YXMiLCJAaWQiOiJodHRwczovL2ZpZ2d5LXN0YWdpbmcucHJpbmNldG9uLmVkdS9jb25jZXJuL3NjYW5uZWRfcmVzb3VyY2VzL2QyNmM2ZDJlLTc5MzUtNGZmZi04YTlhLTFkZmVjODU0ZDM5NC9tYW5pZmVzdC9jYW52YXMvZGM0MWUxZjAtOWRmOS00Zjg2LTgyNWYtOWM2NjY5NTExYjkyIiwibGFiZWwiOiIwMDAwMDAwMy50aWYiLCJyZW5kZXJpbmciOlt7IkBpZCI6Imh0dHBzOi8vZmlnZ3ktc3RhZ2luZy5wcmluY2V0b24uZWR1L2Rvd25sb2Fkcy9kYzQxZTFmMC05ZGY5LTRmODYtODI1Zi05YzY2Njk1MTFiOTIvZmlsZS82YTBkYmVlZC1hOTZmLTRjMjctYWFiOS0xMWE1YjhkMGNkNDUiLCJsYWJlbCI6IkRvd25sb2FkIHRoZSBvcmlnaW5hbCBmaWxlIiwiZm9ybWF0IjoiaW1hZ2UvdGlmZiJ9XSwid2lkdGgiOjcyMDAsImhlaWdodCI6NDg4MywiaW1hZ2VzIjpbeyJAdHlwZSI6Im9hOkFubm90YXRpb24iLCJtb3RpdmF0aW9uIjoic2M6cGFpbnRpbmciLCJyZXNvdXJjZSI6eyJAdHlwZSI6ImRjdHlwZXM6SW1hZ2UiLCJAaWQiOiJodHRwczovL2ZpZ2d5LXN0YWdpbmcucHJpbmNldG9uLmVkdS9jYW50YWxvdXBlL2lpaWYvMi9hMiUyRmJhJTJGODglMkZhMmJhODhjN2UwZDI0NWZlYmI5ODk0NDQ1ZTk2OTgzZSUyRmludGVybWVkaWF0ZV9maWxlLmpwMi9mdWxsLyExMDAwLC8wL2RlZmF1bHQuanBnIiwiaGVpZ2h0Ijo0ODgzLCJ3aWR0aCI6NzIwMCwiZm9ybWF0IjoiaW1hZ2UvanBlZyIsInNlcnZpY2UiOnsiQGNvbnRleHQiOiJodHRwOi8vaWlpZi5pby9hcGkvaW1hZ2UvMi9jb250ZXh0Lmpzb24iLCJAaWQiOiJodHRwczovL2ZpZ2d5LXN0YWdpbmcucHJpbmNldG9uLmVkdS9jYW50YWxvdXBlL2lpaWYvMi9hMiUyRmJhJTJGODglMkZhMmJhODhjN2UwZDI0NWZlYmI5ODk0NDQ1ZTk2OTgzZSUyRmludGVybWVkaWF0ZV9maWxlLmpwMiIsInByb2ZpbGUiOiJodHRwOi8vaWlpZi5pby9hcGkvaW1hZ2UvMi9sZXZlbDIuanNvbiJ9fSwib24iOiJodHRwczovL2ZpZ2d5LXN0YWdpbmcucHJpbmNldG9uLmVkdS9jb25jZXJuL3NjYW5uZWRfcmVzb3VyY2VzL2QyNmM2ZDJlLTc5MzUtNGZmZi04YTlhLTFkZmVjODU0ZDM5NC9tYW5pZmVzdC9jYW52YXMvZGM0MWUxZjAtOWRmOS00Zjg2LTgyNWYtOWM2NjY5NTExYjkyIn1dfV0sInZpZXdpbmdIaW50IjoiaW5kaXZpZHVhbHMifV0sInN0cnVjdHVyZXMiOlt7IkB0eXBlIjoic2M6UmFuZ2UiLCJAaWQiOiJodHRwczovL2ZpZ2d5LXN0YWdpbmcucHJpbmNldG9uLmVkdS9jb25jZXJuL3NjYW5uZWRfcmVzb3VyY2VzL2QyNmM2ZDJlLTc5MzUtNGZmZi04YTlhLTFkZmVjODU0ZDM5NC9tYW5pZmVzdC9yYW5nZS9yOGEwNzczZTktZmFiNy00N2U0LWIxYjUtZjRhMGNlYjEyMGFlIiwibGFiZWwiOiJMb2dpY2FsIiwidmlld2luZ0hpbnQiOiJ0b3AiLCJyYW5nZXMiOlsiaHR0cHM6Ly9maWdneS1zdGFnaW5nLnByaW5jZXRvbi5lZHUvY29uY2Vybi9zY2FubmVkX3Jlc291cmNlcy9kMjZjNmQyZS03OTM1LTRmZmYtOGE5YS0xZGZlYzg1NGQzOTQvbWFuaWZlc3QvcmFuZ2UvcmFkNzg4OGM3LWIwZmMtNDg0MS1hMzM2LTRlNzZjYjhjZTFiNiIsImh0dHBzOi8vZmlnZ3ktc3RhZ2luZy5wcmluY2V0b24uZWR1L2NvbmNlcm4vc2Nhbm5lZF9yZXNvdXJjZXMvZDI2YzZkMmUtNzkzNS00ZmZmLThhOWEtMWRmZWM4NTRkMzk0L21hbmlmZXN0L3JhbmdlL3I3OWIxZTVlNi1lOGY1LTRmOTktYTc1Mi1lZTJlNDJhODYxYzkiXSwiY2FudmFzZXMiOltdfSx7IkB0eXBlIjoic2M6UmFuZ2UiLCJAaWQiOiJodHRwczovL2ZpZ2d5LXN0YWdpbmcucHJpbmNldG9uLmVkdS9jb25jZXJuL3NjYW5uZWRfcmVzb3VyY2VzL2QyNmM2ZDJlLTc5MzUtNGZmZi04YTlhLTFkZmVjODU0ZDM5NC9tYW5pZmVzdC9yYW5nZS9yYWQ3ODg4YzctYjBmYy00ODQxLWEzMzYtNGU3NmNiOGNlMWI2IiwibGFiZWwiOiJDaGFwdGVyIDEiLCJyYW5nZXMiOltdLCJjYW52YXNlcyI6WyJodHRwczovL2ZpZ2d5LXN0YWdpbmcucHJpbmNldG9uLmVkdS9jb25jZXJuL3NjYW5uZWRfcmVzb3VyY2VzL2QyNmM2ZDJlLTc5MzUtNGZmZi04YTlhLTFkZmVjODU0ZDM5NC9tYW5pZmVzdC9jYW52YXMvOGUyMGVjYzYtMDM1My00NWE2LTkwMzAtMGM3YjJiZTRlMjM2IiwiaHR0cHM6Ly9maWdneS1zdGFnaW5nLnByaW5jZXRvbi5lZHUvY29uY2Vybi9zY2FubmVkX3Jlc291cmNlcy9kMjZjNmQyZS03OTM1LTRmZmYtOGE5YS0xZGZlYzg1NGQzOTQvbWFuaWZlc3QvY2FudmFzL2QzZTM3MmVkLTI1MjctNDQxZS05OWZhLWM4MjVjNWI4M2E0YyJdfSx7IkB0eXBlIjoic2M6UmFuZ2UiLCJAaWQiOiJodHRwczovL2ZpZ2d5LXN0YWdpbmcucHJpbmNldG9uLmVkdS9jb25jZXJuL3NjYW5uZWRfcmVzb3VyY2VzL2QyNmM2ZDJlLTc5MzUtNGZmZi04YTlhLTFkZmVjODU0ZDM5NC9tYW5pZmVzdC9yYW5nZS9yNzliMWU1ZTYtZThmNS00Zjk5LWE3NTItZWUyZTQyYTg2MWM5IiwibGFiZWwiOiJDaGFwdGVyIDIiLCJyYW5nZXMiOlsiaHR0cHM6Ly9maWdneS1zdGFnaW5nLnByaW5jZXRvbi5lZHUvY29uY2Vybi9zY2FubmVkX3Jlc291cmNlcy9kMjZjNmQyZS03OTM1LTRmZmYtOGE5YS0xZGZlYzg1NGQzOTQvbWFuaWZlc3QvcmFuZ2UvcjFmNjVjM2I3LTAzMGYtNGRiZi05ZDRlLTM5YWM3MmVhMDU5NyJdLCJjYW52YXNlcyI6W119LHsiQHR5cGUiOiJzYzpSYW5nZSIsIkBpZCI6Imh0dHBzOi8vZmlnZ3ktc3RhZ2luZy5wcmluY2V0b24uZWR1L2NvbmNlcm4vc2Nhbm5lZF9yZXNvdXJjZXMvZDI2YzZkMmUtNzkzNS00ZmZmLThhOWEtMWRmZWM4NTRkMzk0L21hbmlmZXN0L3JhbmdlL3IxZjY1YzNiNy0wMzBmLTRkYmYtOWQ0ZS0zOWFjNzJlYTA1OTciLCJsYWJlbCI6IkNoYXB0ZXIgMmEiLCJyYW5nZXMiOltdLCJjYW52YXNlcyI6WyJodHRwczovL2ZpZ2d5LXN0YWdpbmcucHJpbmNldG9uLmVkdS9jb25jZXJuL3NjYW5uZWRfcmVzb3VyY2VzL2QyNmM2ZDJlLTc5MzUtNGZmZi04YTlhLTFkZmVjODU0ZDM5NC9tYW5pZmVzdC9jYW52YXMvZGM0MWUxZjAtOWRmOS00Zjg2LTgyNWYtOWM2NjY5NTExYjkyIl19XSwic2VlQWxzbyI6W3siQGlkIjoiaHR0cHM6Ly9maWdneS1zdGFnaW5nLnByaW5jZXRvbi5lZHUvY2F0YWxvZy9kMjZjNmQyZS03OTM1LTRmZmYtOGE5YS0xZGZlYzg1NGQzOTQuanNvbmxkIiwiZm9ybWF0IjoiYXBwbGljYXRpb24vbGQranNvbiJ9LHsiQGlkIjoiaHR0cHM6Ly9iaWJkYXRhLnByaW5jZXRvbi5lZHUvYmlibGlvZ3JhcGhpYy8xMjM0NTYiLCJmb3JtYXQiOiJ0ZXh0L3htbCJ9XSwibGljZW5zZSI6Imh0dHA6Ly9yaWdodHNzdGF0ZW1lbnRzLm9yZy92b2NhYi9OS0MvMS4wLyIsInRodW1ibmFpbCI6eyJAaWQiOiJodHRwczovL2ZpZ2d5LXN0YWdpbmcucHJpbmNldG9uLmVkdS9jYW50YWxvdXBlL2lpaWYvMi9mMiUyRjE3JTJGYTklMkZmMjE3YTk0NTRmNjA0NTU5ODNkODFlNTQ1M2UyYWRkYSUyRmludGVybWVkaWF0ZV9maWxlLmpwMi9mdWxsLyEyMDAsMTUwLzAvZGVmYXVsdC5qcGciLCJzZXJ2aWNlIjp7IkBjb250ZXh0IjoiaHR0cDovL2lpaWlmLmlvL2FwaS9pbWFnZS8yL2NvbnRleHQuanNvbiIsIkBpZCI6Imh0dHBzOi8vZmlnZ3ktc3RhZ2luZy5wcmluY2V0b24uZWR1L2NhbnRhbG91cGUvaWlpZi8yL2YyJTJGMTclMkZhOSUyRmYyMTdhOTQ1NGY2MDQ1NTk4M2Q4MWU1NDUzZTJhZGRhJTJGaW50ZXJtZWRpYXRlX2ZpbGUuanAyIiwicHJvZmlsZSI6Imh0dHA7Ly9paWlpZi5pby9hcGkvaW1hZ2UvMi9sZXZlbDIuanNvbiJ9fSwicmVuZGVyaW5nIjp7IkBpZCI6Imh0dHA6Ly9hcmtzLnByaW5jZXRvbi5lZHUvYXJrOi85OTk5OS9mazRmajNwcjVwIiwiZm9ybWF0IjoidGV4dC9odG1sIn0sImxvZ28iOiJodHRwczovL2ZpZ2d5LXN0YWdpbmcucHJpbmNldG9uLmVkdS9hc3NldHMvcHVsX2xvZ29faWNvbi03YjVmOTM4NGRmYTVjYTA0ZjQ4NTFjNmVlOWU0NGUyZDY5NTNlNTVmODkzNDcyYTNlMjA1ZTE1OTFkM2IyY2E2LnBuZyJ9 + http_version: + recorded_at: Thu, 29 Nov 2018 15:31:46 GMT +- request: + method: get + uri: https://figgy-staging.princeton.edu/catalog/d26c6d2e-7935-4fff-8a9a-1dfec854d394.jsonld + body: + encoding: US-ASCII + string: '' + headers: + User-Agent: + - Faraday v0.9.2 + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/ld+json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Status: + - 200 OK + Cache-Control: + - max-age=0, private, must-revalidate + Strict-Transport-Security: + - max-age=15552000; includeSubDomains + X-Xss-Protection: + - 1; mode=block + X-Request-Id: + - 4152b1ee-6d66-4de5-b1c9-1d0274fb692f + Etag: + - W/"1a6c9b4de031e379d1179c3d27673725" + X-Frame-Options: + - SAMEORIGIN + X-Runtime: + - '0.024828' + X-Content-Type-Options: + - nosniff + Date: + - Thu, 29 Nov 2018 15:31:44 GMT + X-Powered-By: + - Phusion Passenger 5.3.5 + Server: + - nginx/1.14.0 + Phusion Passenger 5.3.5 + body: + encoding: ASCII-8BIT + string: !binary |- + eyJAY29udGV4dCI6Imh0dHBzOi8vYmliZGF0YS5wcmluY2V0b24uZWR1L2NvbnRleHQuanNvbiIsIkBpZCI6Imh0dHBzOi8vZmlnZ3ktc3RhZ2luZy5wcmluY2V0b24uZWR1L2NhdGFsb2cvZDI2YzZkMmUtNzkzNS00ZmZmLThhOWEtMWRmZWM4NTRkMzk0IiwidGl0bGUiOlt7IkB2YWx1ZSI6IkVhcnRoIHJpdGVzIDogZmVydGlsaXR5IHJpdGVzIGluIHByZS1pbmR1c3RyaWFsIEJyaXRhaW4iLCJAbGFuZ3VhZ2UiOiJlbmcifV0sImxhbmd1YWdlIjoiZW5nIiwiY3JlYXRvciI6IkJvcmQsIEphbmV0LCAxOTQ1LSIsImNhbGxfbnVtYmVyIjoiQkw5ODAuRzcgQjY2IDE5ODIiLCJleHRlbnQiOiJ4aXYsIDI3MyBwLiA6IGlsbC4gOyAyNCBjbS4iLCJmb3JtYXQiOiJCb29rIiwiZGVzY3JpcHRpb24iOiJJbmNsdWRlcyBpbmRleC4iLCJwdWJsaXNoZXIiOiJMb25kb24gOyBOZXcgWW9yayA6IEdyYW5hZGEsIDE5ODIuIiwic3ViamVjdCI6IkZlcnRpbGl0eSBjdWx0c+KAlEdyZWF0IEJyaXRhaW7igJRIaXN0b3J5IiwidGl0bGVfc29ydCI6IkVhcnRoIHJpdGVzIDogZmVydGlsaXR5IHJpdGVzIGluIHByZS1pbmR1c3RyaWFsIEJyaXRhaW4gLyBKYW5ldCBhbmQgQ29saW4gQm9yZC4iLCJzcGF0aWFsIjoiR3JlYXQgQnJpdGFpbiIsImNvbnRyaWJ1dG9yIjpbIkJvcmQsIENvbGluIl0sImF1dGhvciI6IkJvcmQsIEphbmV0LCAxOTQ1LSIsImNyZWF0ZWQiOiIxOTgyLTAxLTAxVDAwOjAwOjAwWiIsImRhdGUiOiIxOTgyIiwibG9jYXRpb24iOlsiUkNQUEEgQkw5ODAuRzcgQjY2IDE5ODIiXSwiaWRlbnRpZmllciI6WyJhcms6Lzk5OTk5L2ZrNGZqM3ByNXAiXSwiZWRtX3JpZ2h0cyI6eyJAaWQiOiJodHRwOi8vcmlnaHRzc3RhdGVtZW50cy5vcmcvdm9jYWIvTktDLzEuMC8iLCJAdHlwZSI6ImRjdGVybXM6UmlnaHRzU3RhdGVtZW50IiwicHJlZl9sYWJlbCI6Ik5vIEtub3duIENvcHlyaWdodCJ9fQ== + http_version: + recorded_at: Thu, 29 Nov 2018 15:31:46 GMT +- request: + method: get + uri: https://figgy-staging.princeton.edu/catalog/d26c6d2e-7935-4fff-8a9a-1dfec854d394.jsonld + body: + encoding: US-ASCII + string: '' + headers: + User-Agent: + - Faraday v0.9.2 + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/ld+json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Status: + - 200 OK + Cache-Control: + - max-age=0, private, must-revalidate + Strict-Transport-Security: + - max-age=15552000; includeSubDomains + X-Xss-Protection: + - 1; mode=block + X-Request-Id: + - ac8e7030-48c1-4d2a-bf2d-c90cdea5d699 + Etag: + - W/"1a6c9b4de031e379d1179c3d27673725" + X-Frame-Options: + - SAMEORIGIN + X-Runtime: + - '0.027783' + X-Content-Type-Options: + - nosniff + Date: + - Thu, 29 Nov 2018 15:31:44 GMT + X-Powered-By: + - Phusion Passenger 5.3.5 + Server: + - nginx/1.14.0 + Phusion Passenger 5.3.5 + body: + encoding: ASCII-8BIT + string: !binary |- + eyJAY29udGV4dCI6Imh0dHBzOi8vYmliZGF0YS5wcmluY2V0b24uZWR1L2NvbnRleHQuanNvbiIsIkBpZCI6Imh0dHBzOi8vZmlnZ3ktc3RhZ2luZy5wcmluY2V0b24uZWR1L2NhdGFsb2cvZDI2YzZkMmUtNzkzNS00ZmZmLThhOWEtMWRmZWM4NTRkMzk0IiwidGl0bGUiOlt7IkB2YWx1ZSI6IkVhcnRoIHJpdGVzIDogZmVydGlsaXR5IHJpdGVzIGluIHByZS1pbmR1c3RyaWFsIEJyaXRhaW4iLCJAbGFuZ3VhZ2UiOiJlbmcifV0sImxhbmd1YWdlIjoiZW5nIiwiY3JlYXRvciI6IkJvcmQsIEphbmV0LCAxOTQ1LSIsImNhbGxfbnVtYmVyIjoiQkw5ODAuRzcgQjY2IDE5ODIiLCJleHRlbnQiOiJ4aXYsIDI3MyBwLiA6IGlsbC4gOyAyNCBjbS4iLCJmb3JtYXQiOiJCb29rIiwiZGVzY3JpcHRpb24iOiJJbmNsdWRlcyBpbmRleC4iLCJwdWJsaXNoZXIiOiJMb25kb24gOyBOZXcgWW9yayA6IEdyYW5hZGEsIDE5ODIuIiwic3ViamVjdCI6IkZlcnRpbGl0eSBjdWx0c+KAlEdyZWF0IEJyaXRhaW7igJRIaXN0b3J5IiwidGl0bGVfc29ydCI6IkVhcnRoIHJpdGVzIDogZmVydGlsaXR5IHJpdGVzIGluIHByZS1pbmR1c3RyaWFsIEJyaXRhaW4gLyBKYW5ldCBhbmQgQ29saW4gQm9yZC4iLCJzcGF0aWFsIjoiR3JlYXQgQnJpdGFpbiIsImNvbnRyaWJ1dG9yIjpbIkJvcmQsIENvbGluIl0sImF1dGhvciI6IkJvcmQsIEphbmV0LCAxOTQ1LSIsImNyZWF0ZWQiOiIxOTgyLTAxLTAxVDAwOjAwOjAwWiIsImRhdGUiOiIxOTgyIiwibG9jYXRpb24iOlsiUkNQUEEgQkw5ODAuRzcgQjY2IDE5ODIiXSwiaWRlbnRpZmllciI6WyJhcms6Lzk5OTk5L2ZrNGZqM3ByNXAiXSwiZWRtX3JpZ2h0cyI6eyJAaWQiOiJodHRwOi8vcmlnaHRzc3RhdGVtZW50cy5vcmcvdm9jYWIvTktDLzEuMC8iLCJAdHlwZSI6ImRjdGVybXM6UmlnaHRzU3RhdGVtZW50IiwicHJlZl9sYWJlbCI6Ik5vIEtub3duIENvcHlyaWdodCJ9fQ== + http_version: + recorded_at: Thu, 29 Nov 2018 15:31:47 GMT +- request: + method: get + uri: https://figgy-staging.princeton.edu/catalog/d26c6d2e-7935-4fff-8a9a-1dfec854d394.jsonld + body: + encoding: US-ASCII + string: '' + headers: + User-Agent: + - Faraday v0.9.2 + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/ld+json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Status: + - 200 OK + Cache-Control: + - max-age=0, private, must-revalidate + Strict-Transport-Security: + - max-age=15552000; includeSubDomains + X-Xss-Protection: + - 1; mode=block + X-Request-Id: + - 10e0d3bc-7f5c-4aea-9348-40dd28ce9f13 + Etag: + - W/"1a6c9b4de031e379d1179c3d27673725" + X-Frame-Options: + - SAMEORIGIN + X-Runtime: + - '0.020999' + X-Content-Type-Options: + - nosniff + Date: + - Thu, 29 Nov 2018 15:31:44 GMT + X-Powered-By: + - Phusion Passenger 5.3.5 + Server: + - nginx/1.14.0 + Phusion Passenger 5.3.5 + body: + encoding: ASCII-8BIT + string: !binary |- + eyJAY29udGV4dCI6Imh0dHBzOi8vYmliZGF0YS5wcmluY2V0b24uZWR1L2NvbnRleHQuanNvbiIsIkBpZCI6Imh0dHBzOi8vZmlnZ3ktc3RhZ2luZy5wcmluY2V0b24uZWR1L2NhdGFsb2cvZDI2YzZkMmUtNzkzNS00ZmZmLThhOWEtMWRmZWM4NTRkMzk0IiwidGl0bGUiOlt7IkB2YWx1ZSI6IkVhcnRoIHJpdGVzIDogZmVydGlsaXR5IHJpdGVzIGluIHByZS1pbmR1c3RyaWFsIEJyaXRhaW4iLCJAbGFuZ3VhZ2UiOiJlbmcifV0sImxhbmd1YWdlIjoiZW5nIiwiY3JlYXRvciI6IkJvcmQsIEphbmV0LCAxOTQ1LSIsImNhbGxfbnVtYmVyIjoiQkw5ODAuRzcgQjY2IDE5ODIiLCJleHRlbnQiOiJ4aXYsIDI3MyBwLiA6IGlsbC4gOyAyNCBjbS4iLCJmb3JtYXQiOiJCb29rIiwiZGVzY3JpcHRpb24iOiJJbmNsdWRlcyBpbmRleC4iLCJwdWJsaXNoZXIiOiJMb25kb24gOyBOZXcgWW9yayA6IEdyYW5hZGEsIDE5ODIuIiwic3ViamVjdCI6IkZlcnRpbGl0eSBjdWx0c+KAlEdyZWF0IEJyaXRhaW7igJRIaXN0b3J5IiwidGl0bGVfc29ydCI6IkVhcnRoIHJpdGVzIDogZmVydGlsaXR5IHJpdGVzIGluIHByZS1pbmR1c3RyaWFsIEJyaXRhaW4gLyBKYW5ldCBhbmQgQ29saW4gQm9yZC4iLCJzcGF0aWFsIjoiR3JlYXQgQnJpdGFpbiIsImNvbnRyaWJ1dG9yIjpbIkJvcmQsIENvbGluIl0sImF1dGhvciI6IkJvcmQsIEphbmV0LCAxOTQ1LSIsImNyZWF0ZWQiOiIxOTgyLTAxLTAxVDAwOjAwOjAwWiIsImRhdGUiOiIxOTgyIiwibG9jYXRpb24iOlsiUkNQUEEgQkw5ODAuRzcgQjY2IDE5ODIiXSwiaWRlbnRpZmllciI6WyJhcms6Lzk5OTk5L2ZrNGZqM3ByNXAiXSwiZWRtX3JpZ2h0cyI6eyJAaWQiOiJodHRwOi8vcmlnaHRzc3RhdGVtZW50cy5vcmcvdm9jYWIvTktDLzEuMC8iLCJAdHlwZSI6ImRjdGVybXM6UmlnaHRzU3RhdGVtZW50IiwicHJlZl9sYWJlbCI6Ik5vIEtub3duIENvcHlyaWdodCJ9fQ== + http_version: + recorded_at: Thu, 29 Nov 2018 15:31:47 GMT +- request: + method: get + uri: https://figgy-staging.princeton.edu/catalog/d26c6d2e-7935-4fff-8a9a-1dfec854d394.jsonld + body: + encoding: US-ASCII + string: '' + headers: + User-Agent: + - Faraday v0.9.2 + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/ld+json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Status: + - 200 OK + Cache-Control: + - max-age=0, private, must-revalidate + Strict-Transport-Security: + - max-age=15552000; includeSubDomains + Etag: + - W/"1a6c9b4de031e379d1179c3d27673725" + X-Frame-Options: + - SAMEORIGIN + X-Xss-Protection: + - 1; mode=block + X-Content-Type-Options: + - nosniff + X-Runtime: + - '0.024194' + X-Request-Id: + - 62355ca4-7f2d-49f0-9aba-4e10d6c428b3 + Date: + - Thu, 29 Nov 2018 15:31:44 GMT + X-Powered-By: + - Phusion Passenger 5.3.5 + Server: + - nginx/1.14.0 + Phusion Passenger 5.3.5 + body: + encoding: ASCII-8BIT + string: !binary |- + eyJAY29udGV4dCI6Imh0dHBzOi8vYmliZGF0YS5wcmluY2V0b24uZWR1L2NvbnRleHQuanNvbiIsIkBpZCI6Imh0dHBzOi8vZmlnZ3ktc3RhZ2luZy5wcmluY2V0b24uZWR1L2NhdGFsb2cvZDI2YzZkMmUtNzkzNS00ZmZmLThhOWEtMWRmZWM4NTRkMzk0IiwidGl0bGUiOlt7IkB2YWx1ZSI6IkVhcnRoIHJpdGVzIDogZmVydGlsaXR5IHJpdGVzIGluIHByZS1pbmR1c3RyaWFsIEJyaXRhaW4iLCJAbGFuZ3VhZ2UiOiJlbmcifV0sImxhbmd1YWdlIjoiZW5nIiwiY3JlYXRvciI6IkJvcmQsIEphbmV0LCAxOTQ1LSIsImNhbGxfbnVtYmVyIjoiQkw5ODAuRzcgQjY2IDE5ODIiLCJleHRlbnQiOiJ4aXYsIDI3MyBwLiA6IGlsbC4gOyAyNCBjbS4iLCJmb3JtYXQiOiJCb29rIiwiZGVzY3JpcHRpb24iOiJJbmNsdWRlcyBpbmRleC4iLCJwdWJsaXNoZXIiOiJMb25kb24gOyBOZXcgWW9yayA6IEdyYW5hZGEsIDE5ODIuIiwic3ViamVjdCI6IkZlcnRpbGl0eSBjdWx0c+KAlEdyZWF0IEJyaXRhaW7igJRIaXN0b3J5IiwidGl0bGVfc29ydCI6IkVhcnRoIHJpdGVzIDogZmVydGlsaXR5IHJpdGVzIGluIHByZS1pbmR1c3RyaWFsIEJyaXRhaW4gLyBKYW5ldCBhbmQgQ29saW4gQm9yZC4iLCJzcGF0aWFsIjoiR3JlYXQgQnJpdGFpbiIsImNvbnRyaWJ1dG9yIjpbIkJvcmQsIENvbGluIl0sImF1dGhvciI6IkJvcmQsIEphbmV0LCAxOTQ1LSIsImNyZWF0ZWQiOiIxOTgyLTAxLTAxVDAwOjAwOjAwWiIsImRhdGUiOiIxOTgyIiwibG9jYXRpb24iOlsiUkNQUEEgQkw5ODAuRzcgQjY2IDE5ODIiXSwiaWRlbnRpZmllciI6WyJhcms6Lzk5OTk5L2ZrNGZqM3ByNXAiXSwiZWRtX3JpZ2h0cyI6eyJAaWQiOiJodHRwOi8vcmlnaHRzc3RhdGVtZW50cy5vcmcvdm9jYWIvTktDLzEuMC8iLCJAdHlwZSI6ImRjdGVybXM6UmlnaHRzU3RhdGVtZW50IiwicHJlZl9sYWJlbCI6Ik5vIEtub3duIENvcHlyaWdodCJ9fQ== + http_version: + recorded_at: Thu, 29 Nov 2018 15:31:47 GMT +- request: + method: get + uri: https://figgy-staging.princeton.edu/catalog/d26c6d2e-7935-4fff-8a9a-1dfec854d394.jsonld + body: + encoding: US-ASCII + string: '' + headers: + User-Agent: + - Faraday v0.9.2 + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/ld+json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Status: + - 200 OK + Cache-Control: + - max-age=0, private, must-revalidate + Strict-Transport-Security: + - max-age=15552000; includeSubDomains + X-Xss-Protection: + - 1; mode=block + X-Request-Id: + - 2e2ae52d-25d0-46ef-9bd9-df7a378d445c + Etag: + - W/"1a6c9b4de031e379d1179c3d27673725" + X-Frame-Options: + - SAMEORIGIN + X-Runtime: + - '0.030751' + X-Content-Type-Options: + - nosniff + Date: + - Thu, 29 Nov 2018 15:31:45 GMT + X-Powered-By: + - Phusion Passenger 5.3.5 + Server: + - nginx/1.14.0 + Phusion Passenger 5.3.5 + body: + encoding: ASCII-8BIT + string: !binary |- + eyJAY29udGV4dCI6Imh0dHBzOi8vYmliZGF0YS5wcmluY2V0b24uZWR1L2NvbnRleHQuanNvbiIsIkBpZCI6Imh0dHBzOi8vZmlnZ3ktc3RhZ2luZy5wcmluY2V0b24uZWR1L2NhdGFsb2cvZDI2YzZkMmUtNzkzNS00ZmZmLThhOWEtMWRmZWM4NTRkMzk0IiwidGl0bGUiOlt7IkB2YWx1ZSI6IkVhcnRoIHJpdGVzIDogZmVydGlsaXR5IHJpdGVzIGluIHByZS1pbmR1c3RyaWFsIEJyaXRhaW4iLCJAbGFuZ3VhZ2UiOiJlbmcifV0sImxhbmd1YWdlIjoiZW5nIiwiY3JlYXRvciI6IkJvcmQsIEphbmV0LCAxOTQ1LSIsImNhbGxfbnVtYmVyIjoiQkw5ODAuRzcgQjY2IDE5ODIiLCJleHRlbnQiOiJ4aXYsIDI3MyBwLiA6IGlsbC4gOyAyNCBjbS4iLCJmb3JtYXQiOiJCb29rIiwiZGVzY3JpcHRpb24iOiJJbmNsdWRlcyBpbmRleC4iLCJwdWJsaXNoZXIiOiJMb25kb24gOyBOZXcgWW9yayA6IEdyYW5hZGEsIDE5ODIuIiwic3ViamVjdCI6IkZlcnRpbGl0eSBjdWx0c+KAlEdyZWF0IEJyaXRhaW7igJRIaXN0b3J5IiwidGl0bGVfc29ydCI6IkVhcnRoIHJpdGVzIDogZmVydGlsaXR5IHJpdGVzIGluIHByZS1pbmR1c3RyaWFsIEJyaXRhaW4gLyBKYW5ldCBhbmQgQ29saW4gQm9yZC4iLCJzcGF0aWFsIjoiR3JlYXQgQnJpdGFpbiIsImNvbnRyaWJ1dG9yIjpbIkJvcmQsIENvbGluIl0sImF1dGhvciI6IkJvcmQsIEphbmV0LCAxOTQ1LSIsImNyZWF0ZWQiOiIxOTgyLTAxLTAxVDAwOjAwOjAwWiIsImRhdGUiOiIxOTgyIiwibG9jYXRpb24iOlsiUkNQUEEgQkw5ODAuRzcgQjY2IDE5ODIiXSwiaWRlbnRpZmllciI6WyJhcms6Lzk5OTk5L2ZrNGZqM3ByNXAiXSwiZWRtX3JpZ2h0cyI6eyJAaWQiOiJodHRwOi8vcmlnaHRzc3RhdGVtZW50cy5vcmcvdm9jYWIvTktDLzEuMC8iLCJAdHlwZSI6ImRjdGVybXM6UmlnaHRzU3RhdGVtZW50IiwicHJlZl9sYWJlbCI6Ik5vIEtub3duIENvcHlyaWdodCJ9fQ== + http_version: + recorded_at: Thu, 29 Nov 2018 15:31:48 GMT +- request: + method: get + uri: https://figgy-staging.princeton.edu/catalog/d26c6d2e-7935-4fff-8a9a-1dfec854d394.jsonld + body: + encoding: US-ASCII + string: '' + headers: + User-Agent: + - Faraday v0.9.2 + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/ld+json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Status: + - 200 OK + Cache-Control: + - max-age=0, private, must-revalidate + Strict-Transport-Security: + - max-age=15552000; includeSubDomains + X-Xss-Protection: + - 1; mode=block + X-Request-Id: + - 40c39be1-eb08-48e8-93a1-6e1e02ba59d0 + Etag: + - W/"1a6c9b4de031e379d1179c3d27673725" + X-Frame-Options: + - SAMEORIGIN + X-Runtime: + - '0.018951' + X-Content-Type-Options: + - nosniff + Date: + - Thu, 29 Nov 2018 15:31:45 GMT + X-Powered-By: + - Phusion Passenger 5.3.5 + Server: + - nginx/1.14.0 + Phusion Passenger 5.3.5 + body: + encoding: ASCII-8BIT + string: !binary |- + eyJAY29udGV4dCI6Imh0dHBzOi8vYmliZGF0YS5wcmluY2V0b24uZWR1L2NvbnRleHQuanNvbiIsIkBpZCI6Imh0dHBzOi8vZmlnZ3ktc3RhZ2luZy5wcmluY2V0b24uZWR1L2NhdGFsb2cvZDI2YzZkMmUtNzkzNS00ZmZmLThhOWEtMWRmZWM4NTRkMzk0IiwidGl0bGUiOlt7IkB2YWx1ZSI6IkVhcnRoIHJpdGVzIDogZmVydGlsaXR5IHJpdGVzIGluIHByZS1pbmR1c3RyaWFsIEJyaXRhaW4iLCJAbGFuZ3VhZ2UiOiJlbmcifV0sImxhbmd1YWdlIjoiZW5nIiwiY3JlYXRvciI6IkJvcmQsIEphbmV0LCAxOTQ1LSIsImNhbGxfbnVtYmVyIjoiQkw5ODAuRzcgQjY2IDE5ODIiLCJleHRlbnQiOiJ4aXYsIDI3MyBwLiA6IGlsbC4gOyAyNCBjbS4iLCJmb3JtYXQiOiJCb29rIiwiZGVzY3JpcHRpb24iOiJJbmNsdWRlcyBpbmRleC4iLCJwdWJsaXNoZXIiOiJMb25kb24gOyBOZXcgWW9yayA6IEdyYW5hZGEsIDE5ODIuIiwic3ViamVjdCI6IkZlcnRpbGl0eSBjdWx0c+KAlEdyZWF0IEJyaXRhaW7igJRIaXN0b3J5IiwidGl0bGVfc29ydCI6IkVhcnRoIHJpdGVzIDogZmVydGlsaXR5IHJpdGVzIGluIHByZS1pbmR1c3RyaWFsIEJyaXRhaW4gLyBKYW5ldCBhbmQgQ29saW4gQm9yZC4iLCJzcGF0aWFsIjoiR3JlYXQgQnJpdGFpbiIsImNvbnRyaWJ1dG9yIjpbIkJvcmQsIENvbGluIl0sImF1dGhvciI6IkJvcmQsIEphbmV0LCAxOTQ1LSIsImNyZWF0ZWQiOiIxOTgyLTAxLTAxVDAwOjAwOjAwWiIsImRhdGUiOiIxOTgyIiwibG9jYXRpb24iOlsiUkNQUEEgQkw5ODAuRzcgQjY2IDE5ODIiXSwiaWRlbnRpZmllciI6WyJhcms6Lzk5OTk5L2ZrNGZqM3ByNXAiXSwiZWRtX3JpZ2h0cyI6eyJAaWQiOiJodHRwOi8vcmlnaHRzc3RhdGVtZW50cy5vcmcvdm9jYWIvTktDLzEuMC8iLCJAdHlwZSI6ImRjdGVybXM6UmlnaHRzU3RhdGVtZW50IiwicHJlZl9sYWJlbCI6Ik5vIEtub3duIENvcHlyaWdodCJ9fQ== + http_version: + recorded_at: Thu, 29 Nov 2018 15:31:48 GMT +- request: + method: get + uri: https://figgy-staging.princeton.edu/catalog/d26c6d2e-7935-4fff-8a9a-1dfec854d394.jsonld + body: + encoding: US-ASCII + string: '' + headers: + User-Agent: + - Faraday v0.9.2 + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/ld+json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Status: + - 200 OK + Cache-Control: + - max-age=0, private, must-revalidate + Strict-Transport-Security: + - max-age=15552000; includeSubDomains + X-Xss-Protection: + - 1; mode=block + X-Request-Id: + - '0943796d-d6e6-475f-ba68-c694d7a9e747' + Etag: + - W/"1a6c9b4de031e379d1179c3d27673725" + X-Frame-Options: + - SAMEORIGIN + X-Runtime: + - '0.018704' + X-Content-Type-Options: + - nosniff + Date: + - Thu, 29 Nov 2018 15:31:45 GMT + X-Powered-By: + - Phusion Passenger 5.3.5 + Server: + - nginx/1.14.0 + Phusion Passenger 5.3.5 + body: + encoding: ASCII-8BIT + string: !binary |- + eyJAY29udGV4dCI6Imh0dHBzOi8vYmliZGF0YS5wcmluY2V0b24uZWR1L2NvbnRleHQuanNvbiIsIkBpZCI6Imh0dHBzOi8vZmlnZ3ktc3RhZ2luZy5wcmluY2V0b24uZWR1L2NhdGFsb2cvZDI2YzZkMmUtNzkzNS00ZmZmLThhOWEtMWRmZWM4NTRkMzk0IiwidGl0bGUiOlt7IkB2YWx1ZSI6IkVhcnRoIHJpdGVzIDogZmVydGlsaXR5IHJpdGVzIGluIHByZS1pbmR1c3RyaWFsIEJyaXRhaW4iLCJAbGFuZ3VhZ2UiOiJlbmcifV0sImxhbmd1YWdlIjoiZW5nIiwiY3JlYXRvciI6IkJvcmQsIEphbmV0LCAxOTQ1LSIsImNhbGxfbnVtYmVyIjoiQkw5ODAuRzcgQjY2IDE5ODIiLCJleHRlbnQiOiJ4aXYsIDI3MyBwLiA6IGlsbC4gOyAyNCBjbS4iLCJmb3JtYXQiOiJCb29rIiwiZGVzY3JpcHRpb24iOiJJbmNsdWRlcyBpbmRleC4iLCJwdWJsaXNoZXIiOiJMb25kb24gOyBOZXcgWW9yayA6IEdyYW5hZGEsIDE5ODIuIiwic3ViamVjdCI6IkZlcnRpbGl0eSBjdWx0c+KAlEdyZWF0IEJyaXRhaW7igJRIaXN0b3J5IiwidGl0bGVfc29ydCI6IkVhcnRoIHJpdGVzIDogZmVydGlsaXR5IHJpdGVzIGluIHByZS1pbmR1c3RyaWFsIEJyaXRhaW4gLyBKYW5ldCBhbmQgQ29saW4gQm9yZC4iLCJzcGF0aWFsIjoiR3JlYXQgQnJpdGFpbiIsImNvbnRyaWJ1dG9yIjpbIkJvcmQsIENvbGluIl0sImF1dGhvciI6IkJvcmQsIEphbmV0LCAxOTQ1LSIsImNyZWF0ZWQiOiIxOTgyLTAxLTAxVDAwOjAwOjAwWiIsImRhdGUiOiIxOTgyIiwibG9jYXRpb24iOlsiUkNQUEEgQkw5ODAuRzcgQjY2IDE5ODIiXSwiaWRlbnRpZmllciI6WyJhcms6Lzk5OTk5L2ZrNGZqM3ByNXAiXSwiZWRtX3JpZ2h0cyI6eyJAaWQiOiJodHRwOi8vcmlnaHRzc3RhdGVtZW50cy5vcmcvdm9jYWIvTktDLzEuMC8iLCJAdHlwZSI6ImRjdGVybXM6UmlnaHRzU3RhdGVtZW50IiwicHJlZl9sYWJlbCI6Ik5vIEtub3duIENvcHlyaWdodCJ9fQ== + http_version: + recorded_at: Thu, 29 Nov 2018 15:31:48 GMT +- request: + method: get + uri: https://figgy-staging.princeton.edu/catalog/d26c6d2e-7935-4fff-8a9a-1dfec854d394.jsonld + body: + encoding: US-ASCII + string: '' + headers: + User-Agent: + - Faraday v0.9.2 + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/ld+json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Status: + - 200 OK + Cache-Control: + - max-age=0, private, must-revalidate + Strict-Transport-Security: + - max-age=15552000; includeSubDomains + X-Xss-Protection: + - 1; mode=block + X-Request-Id: + - bc67562a-ac4a-4565-85a8-57cd9e79c13d + Etag: + - W/"1a6c9b4de031e379d1179c3d27673725" + X-Frame-Options: + - SAMEORIGIN + X-Runtime: + - '0.021083' + X-Content-Type-Options: + - nosniff + Date: + - Thu, 29 Nov 2018 15:31:45 GMT + X-Powered-By: + - Phusion Passenger 5.3.5 + Server: + - nginx/1.14.0 + Phusion Passenger 5.3.5 + body: + encoding: ASCII-8BIT + string: !binary |- + eyJAY29udGV4dCI6Imh0dHBzOi8vYmliZGF0YS5wcmluY2V0b24uZWR1L2NvbnRleHQuanNvbiIsIkBpZCI6Imh0dHBzOi8vZmlnZ3ktc3RhZ2luZy5wcmluY2V0b24uZWR1L2NhdGFsb2cvZDI2YzZkMmUtNzkzNS00ZmZmLThhOWEtMWRmZWM4NTRkMzk0IiwidGl0bGUiOlt7IkB2YWx1ZSI6IkVhcnRoIHJpdGVzIDogZmVydGlsaXR5IHJpdGVzIGluIHByZS1pbmR1c3RyaWFsIEJyaXRhaW4iLCJAbGFuZ3VhZ2UiOiJlbmcifV0sImxhbmd1YWdlIjoiZW5nIiwiY3JlYXRvciI6IkJvcmQsIEphbmV0LCAxOTQ1LSIsImNhbGxfbnVtYmVyIjoiQkw5ODAuRzcgQjY2IDE5ODIiLCJleHRlbnQiOiJ4aXYsIDI3MyBwLiA6IGlsbC4gOyAyNCBjbS4iLCJmb3JtYXQiOiJCb29rIiwiZGVzY3JpcHRpb24iOiJJbmNsdWRlcyBpbmRleC4iLCJwdWJsaXNoZXIiOiJMb25kb24gOyBOZXcgWW9yayA6IEdyYW5hZGEsIDE5ODIuIiwic3ViamVjdCI6IkZlcnRpbGl0eSBjdWx0c+KAlEdyZWF0IEJyaXRhaW7igJRIaXN0b3J5IiwidGl0bGVfc29ydCI6IkVhcnRoIHJpdGVzIDogZmVydGlsaXR5IHJpdGVzIGluIHByZS1pbmR1c3RyaWFsIEJyaXRhaW4gLyBKYW5ldCBhbmQgQ29saW4gQm9yZC4iLCJzcGF0aWFsIjoiR3JlYXQgQnJpdGFpbiIsImNvbnRyaWJ1dG9yIjpbIkJvcmQsIENvbGluIl0sImF1dGhvciI6IkJvcmQsIEphbmV0LCAxOTQ1LSIsImNyZWF0ZWQiOiIxOTgyLTAxLTAxVDAwOjAwOjAwWiIsImRhdGUiOiIxOTgyIiwibG9jYXRpb24iOlsiUkNQUEEgQkw5ODAuRzcgQjY2IDE5ODIiXSwiaWRlbnRpZmllciI6WyJhcms6Lzk5OTk5L2ZrNGZqM3ByNXAiXSwiZWRtX3JpZ2h0cyI6eyJAaWQiOiJodHRwOi8vcmlnaHRzc3RhdGVtZW50cy5vcmcvdm9jYWIvTktDLzEuMC8iLCJAdHlwZSI6ImRjdGVybXM6UmlnaHRzU3RhdGVtZW50IiwicHJlZl9sYWJlbCI6Ik5vIEtub3duIENvcHlyaWdodCJ9fQ== + http_version: + recorded_at: Thu, 29 Nov 2018 15:31:48 GMT +recorded_with: VCR 4.0.0 diff --git a/spec/factories/pages.rb b/spec/factories/pages.rb new file mode 100644 index 00000000..5aa89821 --- /dev/null +++ b/spec/factories/pages.rb @@ -0,0 +1,8 @@ +FactoryBot.define do + factory :about_page, class: 'Spotlight::AboutPage' do + exhibit + sequence(:title) { |n| "AboutPage#{n}" } + published true + content '[]' + end +end diff --git a/spec/features/javascript/multi_image_select_spec.rb b/spec/features/javascript/multi_image_select_spec.rb new file mode 100644 index 00000000..8669b0af --- /dev/null +++ b/spec/features/javascript/multi_image_select_spec.rb @@ -0,0 +1,50 @@ +require 'rails_helper' + +describe 'Multi image selector', type: :feature, js: true do + let(:exhibit) { FactoryBot.create(:exhibit) } + let(:user) { FactoryBot.create(:site_admin) } + let(:about_page) { FactoryBot.create(:about_page, exhibit: exhibit) } + + context 'with recorded http interactions', vcr: { cassette_name: 'full_manifest', allow_playback_repeats: true } do + let(:url) { "https://figgy-staging.princeton.edu/concern/scanned_resources/d26c6d2e-7935-4fff-8a9a-1dfec854d394/manifest" } + let(:resource) { IIIFResource.new url: url, exhibit: exhibit } + + before do + resource.save + resource.reindex + end + + it 'persists selected image when edit form is re-loaded' do + solr_doc = nil + resource.document_builder.to_solr { |x| solr_doc = x } + sign_in user + + visit spotlight.edit_exhibit_about_page_path(exhibit, about_page) + + add_widget 'solr_documents' # the "Item Row" widget + fill_in_typeahead_field with: solr_doc[:id] + + expect(page).to have_selector '.panel' + + within('.panel') do + expect(page).to have_content(/Image \d of \d/) + expect(page).to have_link 'Change' + find('a', text: 'Change').click + end + + expect(page).to have_css('.thumbs-list ul', visible: true) + + within('.thumbs-list ul') do + all('li')[1].click + end + save_page + + # Edit the page again and ensure it has loaded the image we just selected + click_link('Edit') + + within('.panel') do + expect(page).to have_content(/Image 2 of \d/) + end + end + end +end diff --git a/spec/rails_helper.rb b/spec/rails_helper.rb index 0b374a7d..5062be5e 100644 --- a/spec/rails_helper.rb +++ b/spec/rails_helper.rb @@ -30,6 +30,7 @@ RSpec.configure do |config| config.include Features::SessionHelpers, type: :feature + config.include Spotlight::TestFeaturesHelpers, type: :feature # Remove this line if you're not using ActiveRecord or ActiveRecord fixtures config.fixture_path = "#{::Rails.root}/spec/fixtures" diff --git a/spec/support/features/test_features_helpers.rb b/spec/support/features/test_features_helpers.rb new file mode 100644 index 00000000..97282357 --- /dev/null +++ b/spec/support/features/test_features_helpers.rb @@ -0,0 +1,40 @@ +module Spotlight + module TestFeaturesHelpers + def fill_in_typeahead_field(opts = {}) + type = opts[:type] || 'twitter' + # Poltergeist / Capybara doesn't fire the events typeahead.js + # is listening for, so we help it out a little: + page.execute_script <<-EOF + $("[data-#{type}-typeahead]:visible").val("#{opts[:with]}").trigger("input"); + $("[data-#{type}-typeahead]:visible").typeahead("open"); + $(".tt-suggestion").click(); + EOF + + find('.tt-suggestion', text: opts[:with], match: :first).click + end + + def add_widget(type) + click_add_widget + + # click the item + image widget + expect(page).to have_css("button[data-type='#{type}']") + find("button[data-type='#{type}']").click + end + + def click_add_widget + unless all('.st-block-replacer').present? + expect(page).to have_css('.st-block-addition') + first('.st-block-addition').click + end + expect(page).to have_css('.st-block-replacer') + first('.st-block-replacer').click + end + + def save_page + sleep 1 + click_button('Save changes') + # verify that the page was created + expect(page).to have_content('page was successfully updated') + end + end +end