diff --git a/tests/unit/comments/__init__.py b/tests/unit/comments/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/tests/unit/comments/test_comment_signing.py b/tests/unit/comments/test_comment_signing.py new file mode 100644 index 000000000..313cdb662 --- /dev/null +++ b/tests/unit/comments/test_comment_signing.py @@ -0,0 +1,33 @@ +from torba.testcase import AsyncioTestCase + +from lbrynet.extras.daemon.comment_client import sign_comment +from lbrynet.extras.daemon.comment_client import is_comment_signed_by_channel + +from tests.unit.wallet.test_schema_signing import get_stream, get_channel + + +class TestSigningComments(AsyncioTestCase): + + @staticmethod + def create_claim_comment_body(comment, claim, channel): + return { + 'claim_id': claim.claim_id, + 'channel_name': channel.claim_name, + 'channel_id': channel.claim_id, + 'comment': comment + } + + def test01_successful_create_sign_and_validate_comment(self): + channel = get_channel('@BusterBluth') + stream = get_stream('pop secret') + comment = self.create_claim_comment_body('Cool stream', stream, channel) + sign_comment(comment, channel) + self.assertTrue(is_comment_signed_by_channel(comment, channel)) + + def test02_fail_to_validate_spoofed_channel(self): + pdiddy = get_channel('@PDitty') + channel2 = get_channel('@TomHaverford') + stream = get_stream() + comment = self.create_claim_comment_body('Woahh This is Sick!! Shout out 2 my boy Tommy H', stream, pdiddy) + sign_comment(comment, channel2) + self.assertFalse(is_comment_signed_by_channel(comment, pdiddy))