this repo has no description
1#!/usr/bin/env python3
2# Copyright (c) Facebook, Inc. and its affiliates. (http://www.facebook.com)
3import unittest
4import warnings
5
6
7def raisewarning(msg):
8 raise UserWarning(msg)
9
10
11class WarningsTests(unittest.TestCase):
12 def test_warn_calls_showwarnmsg(self):
13 orig = warnings._showwarnmsg
14 warnings._showwarnmsg = raisewarning
15 with self.assertRaises(UserWarning):
16 warnings.warn("hello")
17 warnings._showwarnmsg = orig
18
19 def test_warn_sets_fields(self):
20 orig = warnings._showwarnmsg
21 warnings._showwarnmsg = raisewarning
22 try:
23 warnings.warn("hello")
24 except UserWarning as exc:
25 msg = exc.args[0]
26 self.assertEqual(msg.message.args[0], "hello")
27 self.assertEqual(msg.category, UserWarning)
28 warnings._showwarnmsg = orig
29
30
31if __name__ == "__main__":
32 unittest.main()