From 77651ece39c0ed6fd71c546f1e6196ed2fd58317 Mon Sep 17 00:00:00 2001
From: Aditya Bansal 
Date: Tue, 31 Jul 2018 00:56:01 +0530
Subject: [PATCH] thumbnails: Rename size value 'original' to 'full'.
---
 zerver/lib/bugdown/__init__.py                |  2 +-
 .../tests/fixtures/markdown_test_cases.json   | 12 +++---
 zerver/tests/test_bugdown.py                  | 22 +++++-----
 zerver/tests/test_thumbnail.py                | 42 +++++++++----------
 zerver/views/thumbnail.py                     |  2 +-
 5 files changed, 40 insertions(+), 40 deletions(-)
diff --git a/zerver/lib/bugdown/__init__.py b/zerver/lib/bugdown/__init__.py
index 8207d8b147..aa5bd6836a 100644
--- a/zerver/lib/bugdown/__init__.py
+++ b/zerver/lib/bugdown/__init__.py
@@ -233,7 +233,7 @@ def add_a(
         img.set("src", "/thumbnail?url={0}&size=thumbnail".format(
             urllib.parse.quote(url, safe='')
         ))
-        img.set('data-src-fullsize', "/thumbnail?url={0}&size=original".format(
+        img.set('data-src-fullsize', "/thumbnail?url={0}&size=full".format(
             urllib.parse.quote(url, safe='')
         ))
     else:
diff --git a/zerver/tests/fixtures/markdown_test_cases.json b/zerver/tests/fixtures/markdown_test_cases.json
index 5d238c7a4a..5fc0b9e6f5 100644
--- a/zerver/tests/fixtures/markdown_test_cases.json
+++ b/zerver/tests/fixtures/markdown_test_cases.json
@@ -276,41 +276,41 @@
     {
       "name": "inline_image",
       "input": "Google logo today: https://www.google.com/images/srpr/logo4w.png\nKinda boring",
-      "expected_output": "Google logo today: https://www.google.com/images/srpr/logo4w.png
\nKinda boring
\n",
+      "expected_output": "Google logo today: https://www.google.com/images/srpr/logo4w.png
\nKinda boring
\n",
       "backend_only_rendering": true,
       "text_content": "Google logo today: https:\/\/www.google.com\/images\/srpr\/logo4w.png\nKinda boring\n"
     },
     {
       "name": "blockquote_inline_image",
       "input": ">Google logo today:\n>https://www.google.com/images/srpr/logo4w.png\n>Kinda boring",
-      "expected_output": "\nGoogle logo today:
\nhttps://www.google.com/images/srpr/logo4w.png
\nKinda boring
\n
",
+      "expected_output": "\nGoogle logo today:
\nhttps://www.google.com/images/srpr/logo4w.png
\nKinda boring
\n
",
       "backend_only_rendering": true,
       "text_content": "> Google logo today:\n> https:\/\/www.google.com\/images\/srpr\/logo4w.png\n> Kinda boring\n"
     },
     {
       "name": "two_inline_images",
       "input": "Google logo today: https://www.google.com/images/srpr/logo4w.png\nKinda boringGoogle logo today: https://www.google.com/images/srpr/logo4w.png\nKinda boring",
-      "expected_output": "Google logo today: https://www.google.com/images/srpr/logo4w.png
\nKinda boringGoogle logo today: https://www.google.com/images/srpr/logo4w.png
\nKinda boring
\n",
+      "expected_output": "Google logo today: https://www.google.com/images/srpr/logo4w.png
\nKinda boringGoogle logo today: https://www.google.com/images/srpr/logo4w.png
\nKinda boring
\n",
       "backend_only_rendering": true,
       "text_content": "Google logo today: https:\/\/www.google.com\/images\/srpr\/logo4w.png\nKinda boringGoogle logo today: https:\/\/www.google.com\/images\/srpr\/logo4w.png\nKinda boring\n"
     },
     {
       "name": "bulleted_list_inlining",
       "input": "* Google?\n* Google. https://www.google.com/images/srpr/logo4w.png\n* Google!",
-      "expected_output": "",
+      "expected_output": "",
       "backend_only_rendering": true,
       "text_content": "\nGoogle?\nGoogle. https://www.google.com/images/srpr/logo4w.png\nGoogle!\n"
     },
     {
       "name": "only_inline_image",
       "input": "https://www.google.com/images/srpr/logo4w.png",
-      "expected_output": "",
+      "expected_output": "",
       "backend_only_rendering": true
     },
     {
       "name": "only_named_inline_image",
       "input": "[Google Link](https://www.google.com/images/srpr/logo4w.png)",
-      "expected_output": "Google Link
\n",
+      "expected_output": "Google Link
\n",
       "backend_only_rendering": true,
       "text_content": "Google Link\n"
     },
diff --git a/zerver/tests/test_bugdown.py b/zerver/tests/test_bugdown.py
index 19828959f0..f450e6ae0c 100644
--- a/zerver/tests/test_bugdown.py
+++ b/zerver/tests/test_bugdown.py
@@ -343,17 +343,17 @@ class BugdownTest(ZulipTestCase):
     def test_inline_image_thumbnail_url(self):
         # type: () -> None
         msg = '[foobar](/user_uploads/2/50/w2G6ok9kr8AMCQCTNAUOFMln/IMG_0677.JPG)'
-        thumbnail_img = '
<'
+        thumbnail_img = '
<'
         converted = bugdown_convert(msg)
         self.assertIn(thumbnail_img, converted)
 
         msg = 'https://www.google.com/images/srpr/logo4w.png'
-        thumbnail_img = '
'
+        thumbnail_img = '
'
         converted = bugdown_convert(msg)
         self.assertIn(thumbnail_img, converted)
 
         msg = 'www.google.com/images/srpr/logo4w.png'
-        thumbnail_img = '
'
+        thumbnail_img = '
'
         converted = bugdown_convert(msg)
         self.assertIn(thumbnail_img, converted)
 
@@ -366,7 +366,7 @@ class BugdownTest(ZulipTestCase):
     @override_settings(INLINE_IMAGE_PREVIEW=True)
     def test_inline_image_preview(self):
         # type: () -> None
-        with_preview = ''
+        with_preview = ''
         without_preview = 'http://cdn.wallpapersafari.com/13/6/16eVjx.jpeg
'
         content = 'http://cdn.wallpapersafari.com/13/6/16eVjx.jpeg'
 
@@ -387,7 +387,7 @@ class BugdownTest(ZulipTestCase):
     @override_settings(INLINE_IMAGE_PREVIEW=True)
     def test_inline_image_preview_order(self) -> None:
         content = 'http://imaging.nikon.com/lineup/dslr/df/img/sample/img_01.jpg\nhttp://imaging.nikon.com/lineup/dslr/df/img/sample/img_02.jpg\nhttp://imaging.nikon.com/lineup/dslr/df/img/sample/img_03.jpg'
-        expected = 'http://imaging.nikon.com/lineup/dslr/df/img/sample/img_01.jpg
\nhttp://imaging.nikon.com/lineup/dslr/df/img/sample/img_02.jpg
\nhttp://imaging.nikon.com/lineup/dslr/df/img/sample/img_03.jpg
\n'
+        expected = 'http://imaging.nikon.com/lineup/dslr/df/img/sample/img_01.jpg
\nhttp://imaging.nikon.com/lineup/dslr/df/img/sample/img_02.jpg
\nhttp://imaging.nikon.com/lineup/dslr/df/img/sample/img_03.jpg
\n'
 
         sender_user_profile = self.example_user('othello')
         msg = Message(sender=sender_user_profile, sending_client=get_client("test"))
@@ -395,7 +395,7 @@ class BugdownTest(ZulipTestCase):
         self.assertEqual(converted, expected)
 
         content = 'http://imaging.nikon.com/lineup/dslr/df/img/sample/img_01.jpg\n\n>http://imaging.nikon.com/lineup/dslr/df/img/sample/img_02.jpg\n\n* http://imaging.nikon.com/lineup/dslr/df/img/sample/img_03.jpg\n* https://www.google.com/images/srpr/logo4w.png'
-        expected = '\n
\n'
+        expected = '\n
\n'
 
         sender_user_profile = self.example_user('othello')
         msg = Message(sender=sender_user_profile, sending_client=get_client("test"))
@@ -403,7 +403,7 @@ class BugdownTest(ZulipTestCase):
         self.assertEqual(converted, expected)
 
         content = 'Test 1\n[21136101110_1dde1c1a7e_o.jpg](/user_uploads/1/6d/F1PX6u16JA2P-nK45PyxHIYZ/21136101110_1dde1c1a7e_o.jpg) \n\nNext Image\n[IMG_20161116_023910.jpg](/user_uploads/1/69/sh7L06e7uH7NaX6d5WFfVYQp/IMG_20161116_023910.jpg) \n\nAnother Screenshot\n[Screenshot-from-2016-06-01-16-22-42.png](/user_uploads/1/70/_aZmIEWaN1iUaxwkDjkO7bpj/Screenshot-from-2016-06-01-16-22-42.png)'
-        expected = 'Test 1
\n21136101110_1dde1c1a7e_o.jpg 
\nNext Image
\nIMG_20161116_023910.jpg 
\nAnother Screenshot
\nScreenshot-from-2016-06-01-16-22-42.png
\n'
+        expected = 'Test 1
\n21136101110_1dde1c1a7e_o.jpg 
\nNext Image
\nIMG_20161116_023910.jpg 
\nAnother Screenshot
\nScreenshot-from-2016-06-01-16-22-42.png
\n'
 
         msg = Message(sender=sender_user_profile, sending_client=get_client("test"))
         converted = render_markdown(msg, content)
@@ -474,7 +474,7 @@ class BugdownTest(ZulipTestCase):
         with mock.patch('zerver.lib.bugdown.fetch_open_graph_image', return_value=None):
             converted = bugdown_convert(msg)
 
-        self.assertEqual(converted, 'Look at the new dropbox logo: https://www.dropbox.com/static/images/home_logo.png
\n')
+        self.assertEqual(converted, 'Look at the new dropbox logo: https://www.dropbox.com/static/images/home_logo.png
\n')
 
     def test_inline_dropbox_bad(self) -> None:
         # Don't fail on bad dropbox links
@@ -488,12 +488,12 @@ class BugdownTest(ZulipTestCase):
         msg = 'Test: https://github.com/zulip/zulip/blob/master/static/images/logo/zulip-icon-128x128.png'
         converted = bugdown_convert(msg)
 
-        self.assertEqual(converted, 'Test: https://github.com/zulip/zulip/blob/master/static/images/logo/zulip-icon-128x128.png
\n')
+        self.assertEqual(converted, 'Test: https://github.com/zulip/zulip/blob/master/static/images/logo/zulip-icon-128x128.png
\n')
 
         msg = 'Test: https://developer.github.com/assets/images/hero-circuit-bg.png'
         converted = bugdown_convert(msg)
 
-        self.assertEqual(converted, 'Test: https://developer.github.com/assets/images/hero-circuit-bg.png
\n')
+        self.assertEqual(converted, 'Test: https://developer.github.com/assets/images/hero-circuit-bg.png
\n')
 
     def test_twitter_id_extraction(self) -> None:
         self.assertEqual(bugdown.get_tweet_id('http://twitter.com/#!/VizzQuotes/status/409030735191097344'), '409030735191097344')
@@ -1145,7 +1145,7 @@ class BugdownTest(ZulipTestCase):
             '
\n'
             ''
         )
diff --git a/zerver/tests/test_thumbnail.py b/zerver/tests/test_thumbnail.py
index 8c7a60b884..f03e3a004b 100644
--- a/zerver/tests/test_thumbnail.py
+++ b/zerver/tests/test_thumbnail.py
@@ -40,8 +40,8 @@ class ThumbnailTest(ZulipTestCase):
 
         quoted_uri = urllib.parse.quote(uri[1:], safe='')
 
-        # Test original image size.
-        result = self.client_get("/thumbnail?url=%s&size=original" % (quoted_uri))
+        # Test full size image.
+        result = self.client_get("/thumbnail?url=%s&size=full" % (quoted_uri))
         self.assertEqual(result.status_code, 302, result)
         expected_part_url = get_file_path_urlpart(uri)
         self.assertIn(expected_part_url, result.url)
@@ -56,7 +56,7 @@ class ThumbnailTest(ZulipTestCase):
         self.logout()
         result = self.api_get(
             self.example_email("hamlet"),
-            '/thumbnail?url=%s&size=original' %
+            '/thumbnail?url=%s&size=full' %
             (quoted_uri,))
         self.assertEqual(result.status_code, 302, result)
         expected_part_url = get_file_path_urlpart(uri)
@@ -64,17 +64,17 @@ class ThumbnailTest(ZulipTestCase):
 
         # Test with another user trying to access image using thumbor.
         self.login(self.example_email("iago"))
-        result = self.client_get("/thumbnail?url=%s&size=original" % (quoted_uri))
+        result = self.client_get("/thumbnail?url=%s&size=full" % (quoted_uri))
         self.assertEqual(result.status_code, 403, result)
         self.assert_in_response("You are not authorized to view this file.", result)
 
     def test_external_source_type(self) -> None:
         def run_test_with_image_url(image_url: str) -> None:
-            # Test original image size.
+            # Test full size image.
             self.login(self.example_email("hamlet"))
             quoted_url = urllib.parse.quote(image_url, safe='')
             encoded_url = base64.urlsafe_b64encode(image_url.encode()).decode('utf-8')
-            result = self.client_get("/thumbnail?url=%s&size=original" % (quoted_url))
+            result = self.client_get("/thumbnail?url=%s&size=full" % (quoted_url))
             self.assertEqual(result.status_code, 302, result)
             expected_part_url = '/smart/filters:no_upscale()/' + encoded_url + '/source_type/external'
             self.assertIn(expected_part_url, result.url)
@@ -112,7 +112,7 @@ class ThumbnailTest(ZulipTestCase):
             # Test with another user trying to access image using thumbor.
             # File should be always accessible to user in case of external source
             self.login(self.example_email("iago"))
-            result = self.client_get("/thumbnail?url=%s&size=original" % (quoted_url))
+            result = self.client_get("/thumbnail?url=%s&size=full" % (quoted_url))
             self.assertEqual(result.status_code, 302, result)
             expected_part_url = '/smart/filters:no_upscale()/' + encoded_url + '/source_type/external'
             self.assertIn(expected_part_url, result.url)
@@ -145,11 +145,11 @@ class ThumbnailTest(ZulipTestCase):
         base = '/user_uploads/'
         self.assertEqual(base, uri[:len(base)])
 
-        # Test original image size.
+        # Test full size image.
         # We remove the forward slash infront of the `/user_uploads/` to match
         # bugdown behaviour.
         quoted_uri = urllib.parse.quote(uri[1:], safe='')
-        result = self.client_get("/thumbnail?url=%s&size=original" % (quoted_uri))
+        result = self.client_get("/thumbnail?url=%s&size=full" % (quoted_uri))
         self.assertEqual(result.status_code, 302, result)
         expected_part_url = get_file_path_urlpart(uri)
         self.assertIn(expected_part_url, result.url)
@@ -173,7 +173,7 @@ class ThumbnailTest(ZulipTestCase):
         # We remove the forward slash infront of the `/user_uploads/` to match
         # bugdown behaviour.
         quoted_uri = urllib.parse.quote(uri[1:], safe='')
-        result = self.client_get("/thumbnail?url=%s&size=original" % (quoted_uri))
+        result = self.client_get("/thumbnail?url=%s&size=full" % (quoted_uri))
         self.assertEqual(result.status_code, 302, result)
         expected_part_url = get_file_path_urlpart(uri)
         self.assertIn(expected_part_url, result.url)
@@ -183,7 +183,7 @@ class ThumbnailTest(ZulipTestCase):
         user_profile = self.example_user("hamlet")
         result = self.api_get(
             self.example_email("hamlet"),
-            '/thumbnail?url=%s&size=original' %
+            '/thumbnail?url=%s&size=full' %
             (quoted_uri,))
         self.assertEqual(result.status_code, 302, result)
         expected_part_url = get_file_path_urlpart(uri)
@@ -193,7 +193,7 @@ class ThumbnailTest(ZulipTestCase):
         # auth.
         user_profile = self.example_user("hamlet")
         result = self.client_get(
-            '/thumbnail?url=%s&size=original&api_key=%s' %
+            '/thumbnail?url=%s&size=full&api_key=%s' %
             (quoted_uri, user_profile.api_key))
         self.assertEqual(result.status_code, 302, result)
         expected_part_url = get_file_path_urlpart(uri)
@@ -201,7 +201,7 @@ class ThumbnailTest(ZulipTestCase):
 
         # Test with another user trying to access image using thumbor.
         self.login(self.example_email("iago"))
-        result = self.client_get("/thumbnail?url=%s&size=original" % (quoted_uri))
+        result = self.client_get("/thumbnail?url=%s&size=full" % (quoted_uri))
         self.assertEqual(result.status_code, 403, result)
         self.assert_in_response("You are not authorized to view this file.", result)
 
@@ -210,7 +210,7 @@ class ThumbnailTest(ZulipTestCase):
         self.login(self.example_email("hamlet"))
         uri = '/static/images/cute/turtle.png'
         quoted_uri = urllib.parse.quote(uri[1:], safe='')
-        result = self.client_get("/thumbnail?url=%s&size=original" % (quoted_uri))
+        result = self.client_get("/thumbnail?url=%s&size=full" % (quoted_uri))
         self.assertEqual(result.status_code, 302, result)
         self.assertEqual(uri, result.url)
 
@@ -230,21 +230,21 @@ class ThumbnailTest(ZulipTestCase):
         quoted_uri = urllib.parse.quote(uri[1:], safe='')
 
         with self.settings(THUMBOR_URL=''):
-            result = self.client_get("/thumbnail?url=%s&size=original" % (quoted_uri))
+            result = self.client_get("/thumbnail?url=%s&size=full" % (quoted_uri))
         self.assertEqual(result.status_code, 302, result)
         self.assertEqual(uri, result.url)
 
         uri = 'https://www.google.com/images/srpr/logo4w.png'
         quoted_uri = urllib.parse.quote(uri, safe='')
         with self.settings(THUMBOR_URL=''):
-            result = self.client_get("/thumbnail?url=%s&size=original" % (quoted_uri))
+            result = self.client_get("/thumbnail?url=%s&size=full" % (quoted_uri))
         self.assertEqual(result.status_code, 302, result)
         self.assertEqual(uri, result.url)
 
         uri = 'http://www.google.com/images/srpr/logo4w.png'
         quoted_uri = urllib.parse.quote(uri, safe='')
         with self.settings(THUMBOR_URL=''):
-            result = self.client_get("/thumbnail?url=%s&size=original" % (quoted_uri))
+            result = self.client_get("/thumbnail?url=%s&size=full" % (quoted_uri))
         self.assertEqual(result.status_code, 302, result)
         base = 'https://external-content.zulipcdn.net/7b6552b60c635e41e8f6daeb36d88afc4eabde79/687474703a2f2f7777772e676f6f676c652e636f6d2f696d616765732f737270722f6c6f676f34772e706e67'
         self.assertEqual(base, result.url)
@@ -265,7 +265,7 @@ class ThumbnailTest(ZulipTestCase):
         quoted_uri = urllib.parse.quote(uri[1:], safe='')
         hex_uri = base64.urlsafe_b64encode(uri[len('/user_uploads/'):].encode()).decode('utf-8')
         with self.settings(THUMBOR_URL='http://test-thumborhost.com'):
-            result = self.client_get("/thumbnail?url=%s&size=original" % (quoted_uri))
+            result = self.client_get("/thumbnail?url=%s&size=full" % (quoted_uri))
         self.assertEqual(result.status_code, 302, result)
         base = 'http://test-thumborhost.com/'
         self.assertEqual(base, result.url[:len(base)])
@@ -296,20 +296,20 @@ class ThumbnailTest(ZulipTestCase):
 
         # Test with size supplied as a query parameter.
         # size=thumbnail should return a 0x100 sized image.
-        # size=original should return the original resolution image.
+        # size=full should return the original resolution image.
         quoted_uri = urllib.parse.quote(uri[1:], safe='')
         result = self.client_get("/thumbnail?url=%s&size=thumbnail" % (quoted_uri))
         self.assertEqual(result.status_code, 302, result)
         expected_part_url = get_file_path_urlpart(uri, '0x100')
         self.assertIn(expected_part_url, result.url)
 
-        result = self.client_get("/thumbnail?url=%s&size=original" % (quoted_uri))
+        result = self.client_get("/thumbnail?url=%s&size=full" % (quoted_uri))
         self.assertEqual(result.status_code, 302, result)
         expected_part_url = get_file_path_urlpart(uri)
         self.assertIn(expected_part_url, result.url)
 
         # Test with size supplied as a query parameter where size is anything
-        # else than original or thumbnail. Result should be an error message.
+        # else than 'full' or 'thumbnail'. Result should be an error message.
         result = self.client_get("/thumbnail?url=%s&size=480x360" % (quoted_uri))
         self.assertEqual(result.status_code, 403, result)
         self.assert_in_response("Invalid size.", result)
diff --git a/zerver/views/thumbnail.py b/zerver/views/thumbnail.py
index c6ad1520fc..cc75e12401 100644
--- a/zerver/views/thumbnail.py
+++ b/zerver/views/thumbnail.py
@@ -28,7 +28,7 @@ def backend_serve_thumbnail(request: HttpRequest, user_profile: UserProfile,
     size = None
     if size_requested == 'thumbnail':
         size = '0x100'
-    elif size_requested == 'original':
+    elif size_requested == 'full':
         size = '0x0'
 
     if size is None: