Merge branch 'feature/pr_22' into develop
This commit is contained in:
27
.github/workflows/run_test.yml
vendored
Normal file
27
.github/workflows/run_test.yml
vendored
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
name: Run All UnitTest
|
||||||
|
|
||||||
|
on: [push, pull_request]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
max-parallel: 4
|
||||||
|
matrix:
|
||||||
|
python-version: [3.7, 3.8]
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- name: Set up Python ${{ matrix.python-version }}
|
||||||
|
uses: actions/setup-python@v2
|
||||||
|
with:
|
||||||
|
python-version: ${{ matrix.python-version }}
|
||||||
|
- name: Install dependencies
|
||||||
|
run: |
|
||||||
|
python -m pip install --upgrade pip
|
||||||
|
pip install -r requirements.txt -r requirements_test.txt
|
||||||
|
- name: Test with pytest
|
||||||
|
run: |
|
||||||
|
export PYTHONPATH=./
|
||||||
|
pytest --verbose --color=yes
|
||||||
@@ -1,8 +1,17 @@
|
|||||||
import json
|
import json
|
||||||
|
from datetime import datetime
|
||||||
from pytchat.parser.live import Parser
|
from pytchat.parser.live import Parser
|
||||||
from pytchat.processors.default.processor import DefaultProcessor
|
from pytchat.processors.default.processor import DefaultProcessor
|
||||||
|
|
||||||
|
|
||||||
|
TEST_TIMETSTAMP = 1570678496000000
|
||||||
|
|
||||||
|
|
||||||
|
def get_local_datetime(timestamp):
|
||||||
|
dt = datetime.fromtimestamp(timestamp / 1000000)
|
||||||
|
return dt.strftime('%Y-%m-%d %H:%M:%S')
|
||||||
|
|
||||||
|
|
||||||
def test_textmessage(mocker):
|
def test_textmessage(mocker):
|
||||||
'''text message'''
|
'''text message'''
|
||||||
processor = DefaultProcessor()
|
processor = DefaultProcessor()
|
||||||
@@ -20,7 +29,7 @@ def test_textmessage(mocker):
|
|||||||
assert ret.id == "dummy_id"
|
assert ret.id == "dummy_id"
|
||||||
assert ret.message == "dummy_message"
|
assert ret.message == "dummy_message"
|
||||||
assert ret.timestamp == 1570678496000
|
assert ret.timestamp == 1570678496000
|
||||||
assert ret.datetime == "2019-10-10 12:34:56"
|
assert ret.datetime == get_local_datetime(TEST_TIMETSTAMP)
|
||||||
assert ret.author.name == "author_name"
|
assert ret.author.name == "author_name"
|
||||||
assert ret.author.channelId == "author_channel_id"
|
assert ret.author.channelId == "author_channel_id"
|
||||||
assert ret.author.channelUrl == "http://www.youtube.com/channel/author_channel_id"
|
assert ret.author.channelUrl == "http://www.youtube.com/channel/author_channel_id"
|
||||||
@@ -51,7 +60,7 @@ def test_textmessage_replay_member(mocker):
|
|||||||
assert ret.message == "dummy_message"
|
assert ret.message == "dummy_message"
|
||||||
assert ret.messageEx == ["dummy_message"]
|
assert ret.messageEx == ["dummy_message"]
|
||||||
assert ret.timestamp == 1570678496000
|
assert ret.timestamp == 1570678496000
|
||||||
assert ret.datetime == "2019-10-10 12:34:56"
|
assert ret.datetime == get_local_datetime(TEST_TIMETSTAMP)
|
||||||
assert ret.elapsedTime == "1:23:45"
|
assert ret.elapsedTime == "1:23:45"
|
||||||
assert ret.author.name == "author_name"
|
assert ret.author.name == "author_name"
|
||||||
assert ret.author.channelId == "author_channel_id"
|
assert ret.author.channelId == "author_channel_id"
|
||||||
@@ -83,7 +92,7 @@ def test_superchat(mocker):
|
|||||||
assert ret.message == "dummy_message"
|
assert ret.message == "dummy_message"
|
||||||
assert ret.messageEx == ["dummy_message"]
|
assert ret.messageEx == ["dummy_message"]
|
||||||
assert ret.timestamp == 1570678496000
|
assert ret.timestamp == 1570678496000
|
||||||
assert ret.datetime == "2019-10-10 12:34:56"
|
assert ret.datetime == get_local_datetime(TEST_TIMETSTAMP)
|
||||||
assert ret.elapsedTime == ""
|
assert ret.elapsedTime == ""
|
||||||
assert ret.amountValue == 800
|
assert ret.amountValue == 800
|
||||||
assert ret.amountString == "¥800"
|
assert ret.amountString == "¥800"
|
||||||
@@ -125,7 +134,7 @@ def test_supersticker(mocker):
|
|||||||
assert ret.message == ""
|
assert ret.message == ""
|
||||||
assert ret.messageEx == []
|
assert ret.messageEx == []
|
||||||
assert ret.timestamp == 1570678496000
|
assert ret.timestamp == 1570678496000
|
||||||
assert ret.datetime == "2019-10-10 12:34:56"
|
assert ret.datetime == get_local_datetime(TEST_TIMETSTAMP)
|
||||||
assert ret.elapsedTime == ""
|
assert ret.elapsedTime == ""
|
||||||
assert ret.amountValue == 200
|
assert ret.amountValue == 200
|
||||||
assert ret.amountString == "¥200"
|
assert ret.amountString == "¥200"
|
||||||
@@ -166,7 +175,7 @@ def test_sponsor(mocker):
|
|||||||
assert ret.message == "新規メンバー"
|
assert ret.message == "新規メンバー"
|
||||||
assert ret.messageEx == ["新規メンバー"]
|
assert ret.messageEx == ["新規メンバー"]
|
||||||
assert ret.timestamp == 1570678496000
|
assert ret.timestamp == 1570678496000
|
||||||
assert ret.datetime == "2019-10-10 12:34:56"
|
assert ret.datetime == get_local_datetime(TEST_TIMETSTAMP)
|
||||||
assert ret.elapsedTime == ""
|
assert ret.elapsedTime == ""
|
||||||
assert ret.bgColor == 0
|
assert ret.bgColor == 0
|
||||||
assert ret.author.name == "author_name"
|
assert ret.author.name == "author_name"
|
||||||
@@ -199,7 +208,7 @@ def test_sponsor_legacy(mocker):
|
|||||||
assert ret.message == "新規メンバー / ようこそ、author_name!"
|
assert ret.message == "新規メンバー / ようこそ、author_name!"
|
||||||
assert ret.messageEx == ["新規メンバー / ようこそ、author_name!"]
|
assert ret.messageEx == ["新規メンバー / ようこそ、author_name!"]
|
||||||
assert ret.timestamp == 1570678496000
|
assert ret.timestamp == 1570678496000
|
||||||
assert ret.datetime == "2019-10-10 12:34:56"
|
assert ret.datetime == get_local_datetime(TEST_TIMETSTAMP)
|
||||||
assert ret.elapsedTime == ""
|
assert ret.elapsedTime == ""
|
||||||
assert ret.bgColor == 0
|
assert ret.bgColor == 0
|
||||||
assert ret.author.name == "author_name"
|
assert ret.author.name == "author_name"
|
||||||
|
|||||||
Reference in New Issue
Block a user