2 次代码提交 b2926faa4b ... 5b6cd53e3d

作者 SHA1 备注 提交日期
  Giedrius Statkevičius 5b6cd53e3d test_libtn: add tests for repl() 8 年之前
  Giedrius Statkevičius 5f2344a633 libtn: return '' in case there is no average_fps 8 年之前
共有 2 个文件被更改,包括 20 次插入1 次删除
  1. 1 1
      libtn.py
  2. 19 0
      test_libtn.py

+ 1 - 1
libtn.py

@@ -417,7 +417,7 @@ def repl(stream, chan, msg):
                                                               ''))
         ret = ret.replace('$6', stream.get('channel', {}).get('language',
                                                               ''))
-        ret = ret.replace('$7', str(stream.get('average_fps')))
+        ret = ret.replace('$7', str(stream.get('average_fps', '')))
         ret = ret.replace('$8', str(stream.get('channel',
                                                {}).get('followers', '')))
         ret = ret.replace('$9', str(stream.get('channel', {}).get('views',

+ 19 - 0
test_libtn.py

@@ -79,5 +79,24 @@ class LibTest(unittest.TestCase):
         api.diff(example)
         self.assertEqual(output['abc'], False)
 
+    def test_repl(self):
+        chan = 'foo'
+        ret = libtn.repl(None, chan, '$1 $2')
+        self.assertEqual(ret, chan + ' offline')
+        ret = libtn.repl(None, chan, '$3$4$5$6$7$8$9')
+        self.assertEqual(ret, '$3$4$5$6$7$8$9')
+        ret = libtn.repl(None, chan, '${}')
+        self.assertNotEqual(ret, '${}')
+        ret = libtn.repl(None, chan, '$%3$@4$^5$&6$(7$&8$+9')
+        self.assertEqual(ret, '$%3$@4$^5$&6$(7$&8$+9')
+        stream = {'foo': 'bar'}
+        ret = libtn.repl(stream, chan, '$1 $2')
+        self.assertEqual(ret, chan + ' online')
+        ret = libtn.repl(stream, chan, '$3$4$5$6$7$8$9')
+        self.assertEqual(ret, '')
+        stream = {'game': 'test', 'viewers': 123, 'average_fps': 24.2}
+        ret = libtn.repl(stream, chan, '$3$4$7')
+        self.assertEqual(ret, 'test' + '123' + '24.2')
+
 if __name__ == '__main__':
     unittest.main()