Prechádzať zdrojové kódy

Add photo rail test

Zed 6 rokov pred
rodič
commit
34dd02df1b
3 zmenil súbory, kde vykonal 18 pridanie a 1 odobranie
  1. 2 1
      src/api.nim
  2. 1 0
      tests/base.py
  3. 15 0
      tests/test_timeline.py

+ 2 - 1
src/api.nim

@@ -50,7 +50,8 @@ proc getMediaTimeline*(id: string; after=""): Future[Timeline] {.async.} =
   result = parseTimeline(await fetch(url), after)
 
 proc getPhotoRail*(id: string): Future[PhotoRail] {.async.} =
-  result = parsePhotoRail(await getMediaTimeline(id))
+  let url = mediaTimeline / (id & ".json") ? genParams()
+  result = parsePhotoRail(await fetch(url))
 
 proc getSearch*[T](query: Query; after=""): Future[Result[T]] {.async.} =
   when T is Profile:

+ 1 - 0
tests/base.py

@@ -53,6 +53,7 @@ class Timeline(object):
     end = '.timeline-end'
     none = '.timeline-none'
     protected = '.timeline-protected'
+    photo_rail = '.photo-rail-grid'
 
 
 class Conversation(object):

+ 15 - 0
tests/test_timeline.py

@@ -12,6 +12,13 @@ empty = [['emptyuser'], ['mobile_test_10']]
 
 protected = [['mobile_test_7'], ['Empty_user']]
 
+photo_rail = [['mobile_test', [
+    'BzUnaDFCUAAmrjs', 'Bo0nDsYIYAIjqVn', 'Bos--KNIQAAA7Li', 'Boq1sDJIYAAxaoi',
+    'BonISmPIEAAhP3G', 'BoQbwJAIUAA0QCY', 'BoQbRQxIIAA3FWD', 'Bn8Qh8iIIAABXrG',
+    'Bn8QIG3IYAA0IGT', 'Bn8O3QeIUAAONai', 'Bn8NGViIAAATNG4', 'BkKovdrCUAAEz79',
+    'BkKoe_oCIAASAqr', 'BkKoRLNCAAAYfDf', 'BkKndxoCQAE1vFt', 'BPEmIbYCMAE44dl'
+]]]
+
 
 class TweetTest(BaseTestCase):
     @parameterized.expand(normal)
@@ -52,3 +59,11 @@ class TweetTest(BaseTestCase):
         self.assert_element_absent(Timeline.newest)
         self.assert_element_absent(Timeline.older)
         self.assert_element_absent(Timeline.end)
+
+    @parameterized.expand(photo_rail)
+    def test_photo_rail(self, username, images):
+        self.open_nitter(username)
+        self.assert_element_visible(Timeline.photo_rail)
+        for i, url in enumerate(images):
+            img = self.get_attribute(Timeline.photo_rail + f' a:nth-child({i + 1}) img', 'src')
+            self.assertIn(url, img)