2019-08-12 22:29:48 +00:00
from base import BaseTestCase , Card , Conversation
from parameterized import parameterized
card = [
[ ' lorenlugosch/status/1115440394148487168 ' ,
2019-10-02 08:13:17 +00:00
' lorenlugosch/end-to-end-SLU ' ,
' PyTorch code for end-to-end spoken language understanding (SLU) with ASR-based transfer learning - lorenlugosch/end-to-end-SLU ' ,
2019-08-15 21:17:13 +00:00
' github.com ' , False ] ,
2019-08-12 22:29:48 +00:00
[ ' PyTorch/status/1123379369672450051 ' ,
' PyTorch ' ,
' An open source deep learning platform that provides a seamless path from research prototyping to production deployment. ' ,
2019-08-15 21:17:13 +00:00
' pytorch.org ' , False ] ,
2019-08-12 22:29:48 +00:00
[ ' Thom_Wolf/status/1122466524860702729 ' ,
' pytorch/fairseq ' ,
' Facebook AI Research Sequence-to-Sequence Toolkit written in Python. - pytorch/fairseq ' ,
2019-08-15 21:17:13 +00:00
' github.com ' , False ] ,
2019-08-12 22:29:48 +00:00
[ ' TheTwoffice/status/558685306090946561 ' ,
' Eternity: a moment standing still forever… ' ,
' - James Montgomery. | facebook | 500px | ferpectshotz | I dusted off this one from my old archives, it was taken while I was living in mighty new York city working at Wall St. I think this was the 11... ' ,
2019-08-15 21:17:13 +00:00
' flickr.com ' , True ] ,
2019-08-12 22:29:48 +00:00
[ ' nim_lang/status/1136652293510717440 ' ,
' Version 0.20.0 released ' ,
' We are very proud to announce Nim version 0.20. This is a massive release, both literally and figuratively. It contains more than 1,000 commits and it marks our release candidate for version 1.0! ' ,
2019-08-15 21:17:13 +00:00
' nim-lang.org ' , True ] ,
2019-08-12 22:29:48 +00:00
2019-09-13 10:38:41 +00:00
[ ' nim_lang/status/1082989146040340480 ' ,
' Nim in 2018: A short recap ' ,
' Posted in r/programming by u/miran1 ' ,
' reddit.com ' , False ] ,
2019-08-12 22:29:48 +00:00
[ ' Tesla/status/1141041022035623936 ' ,
' Experience the Tesla Arcade ' ,
' ' ,
2019-08-15 21:17:13 +00:00
' www.tesla.com ' , True ] ,
2019-08-12 22:29:48 +00:00
[ ' voidtarget/status/1094632512926605312 ' ,
' Basic OBS Studio plugin, written in nim, supporting C++ (C fine too) ' ,
' Basic OBS Studio plugin, written in nim, supporting C++ (C fine too) - obsplugin.nim ' ,
2019-08-15 21:17:13 +00:00
' gist.github.com ' , True ] ,
2019-08-12 22:29:48 +00:00
[ ' AdsAPI/status/1110272721005367296 ' ,
' Conversation Targeting ' ,
' ' ,
2019-08-15 21:17:13 +00:00
' view.highspot.com ' , True ] ,
2019-08-12 22:29:48 +00:00
[ ' FluentAI/status/1116417904831029248 ' ,
' Amazon’ s Alexa isn’ t just AI — thousands of humans are listening ' ,
' One of the only ways to improve Alexa is to have human beings check it for errors ' ,
2019-08-15 21:17:13 +00:00
' theverge.com ' , True ]
2019-08-12 22:29:48 +00:00
]
no_thumb = [
2019-09-13 10:38:41 +00:00
[ ' Bountysource/status/1141879700639215617 ' ,
' $1,000 Bounty on kivy/plyer ' ,
' Automation and Screen Reader Support ' ,
' bountysource.com ' ] ,
2019-08-12 22:29:48 +00:00
[ ' brent_p/status/1088857328680488961 ' ,
' Hts Nim Sugar ' ,
' hts-nim is a library that allows one to use htslib via the nim programming language. Nim is a garbage-collected language that compiles to C and often has similar performance. I have become very... ' ,
2019-10-17 22:10:40 +00:00
' brentp.github.io ' ] ,
2019-12-06 12:01:05 +00:00
[ ' voidtarget/status/1133028231672582145 ' ,
' sinkingsugar/nimqt-example ' ,
' A sample of a Qt app written using mostly nim. Contribute to sinkingsugar/nimqt-example development by creating an account on GitHub. ' ,
' github.com ' ] ,
2019-10-17 22:10:40 +00:00
[ ' mobile_test/status/490378953744318464 ' ,
' Nantasket Beach ' ,
' Rocks on the beach. ' ,
' 500px.com ' ]
2019-08-12 22:29:48 +00:00
]
playable = [
[ ' nim_lang/status/1118234460904919042 ' ,
' Nim development blog 2019-03 ' ,
' Arne (aka Krux02) * debugging: * improved nim-gdb, $ works, framefilter * alias for --debugger:native: -g * bugs: * forwarding of .pure. * sizeof union * fea... ' ,
2019-08-15 21:17:13 +00:00
' youtube.com ' ] ,
2019-08-12 22:29:48 +00:00
[ ' nim_lang/status/1121090879823986688 ' ,
' Nim - First natively compiled language w/ hot code-reloading at... ' ,
' #nim #c++ #ACCUConf Nim is a statically typed systems and applications programming language which offers perhaps some of the most powerful metaprogramming ca... ' ,
2019-10-02 08:13:17 +00:00
' youtube.com ' ]
2019-08-12 22:29:48 +00:00
]
promo = [
[ ' BangOlufsen/status/1145698701517754368 ' ,
' Upgrade your journey ' , ' ' ,
' www.bang-olufsen.com ' ] ,
[ ' BangOlufsen/status/1154934429900406784 ' ,
' Learn more about Beosound Shape ' , ' ' ,
' www.bang-olufsen.com ' ]
]
class CardTest ( BaseTestCase ) :
@parameterized.expand ( card )
2019-08-15 21:17:13 +00:00
def test_card ( self , tweet , title , description , destination , large ) :
2019-08-12 22:29:48 +00:00
self . open_nitter ( tweet )
card = Card ( Conversation . main + " " )
self . assert_text ( title , card . title )
self . assert_text ( destination , card . destination )
2019-08-15 21:17:13 +00:00
self . assertIn ( ' _img ' , self . get_image_url ( card . image + ' img ' ) )
2019-08-12 22:29:48 +00:00
if len ( description ) > 0 :
self . assert_text ( description , card . description )
if large :
self . assert_element_visible ( ' .card.large ' )
else :
self . assert_element_not_visible ( ' .card.large ' )
@parameterized.expand ( no_thumb )
def test_card_no_thumb ( self , tweet , title , description , destination ) :
self . open_nitter ( tweet )
card = Card ( Conversation . main + " " )
self . assert_text ( title , card . title )
self . assert_text ( destination , card . destination )
if len ( description ) > 0 :
self . assert_text ( description , card . description )
@parameterized.expand ( playable )
2019-08-15 21:17:13 +00:00
def test_card_playable ( self , tweet , title , description , destination ) :
2019-08-12 22:29:48 +00:00
self . open_nitter ( tweet )
card = Card ( Conversation . main + " " )
self . assert_text ( title , card . title )
self . assert_text ( destination , card . destination )
2019-08-15 21:17:13 +00:00
self . assertIn ( ' _img ' , self . get_image_url ( card . image + ' img ' ) )
2019-08-12 22:29:48 +00:00
self . assert_element_visible ( ' .card-overlay ' )
if len ( description ) > 0 :
self . assert_text ( description , card . description )
@parameterized.expand ( promo )
def test_card_promo ( self , tweet , title , description , destination ) :
self . open_nitter ( tweet )
card = Card ( Conversation . main + " " )
self . assert_text ( title , card . title )
self . assert_text ( destination , card . destination )
self . assert_element_visible ( ' .video-overlay ' )
if len ( description ) > 0 :
self . assert_text ( description , card . description )