python类mock()的实例源码

test_dcim.py 文件源码 项目:pynetbox 作者: digitalocean 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def test_delete(self):
        with patch(
            'pynetbox.lib.query.requests.get',
            return_value=Response(fixture='{}/{}.json'.format(
                self.app,
                self.name[:-1]
            ))
        ) as mock, patch('pynetbox.lib.query.requests.delete') as delete:
            ret = getattr(nb, self.name).get(1)
            self.assertTrue(ret.delete())
            mock.assert_called_with(
                'http://localhost:8000/api/{}/{}/1/'.format(
                    self.app,
                    self.name.replace('_', '-')
                ),
                headers=HEADERS
            )
            delete.assert_called_with(
                'http://localhost:8000/api/{}/{}/1/'.format(
                    self.app,
                    self.name.replace('_', '-')
                ),
                headers=AUTH_HEADERS
            )
test_dcim.py 文件源码 项目:pynetbox 作者: digitalocean 项目源码 文件源码 阅读 22 收藏 0 点赞 0 评论 0
def test_create_device_bulk(self, mock):
        data = [
            {
                'name': 'test-device',
                'site': 1,
                'device_type': 1,
                'device_role': 1,
            },
            {
                'name': 'test-device1',
                'site': 1,
                'device_type': 1,
                'device_role': 1,
            },
        ]
        ret = nb.devices.create(data)
        self.assertTrue(ret)
        self.assertTrue(len(ret), 2)
test_virtualization.py 文件源码 项目:pynetbox 作者: digitalocean 项目源码 文件源码 阅读 21 收藏 0 点赞 0 评论 0
def test_get_all(self):
        with patch(
            'pynetbox.lib.query.requests.get',
            return_value=Response(fixture='{}/{}.json'.format(
                self.app,
                self.name
            ))
        ) as mock:
            ret = getattr(nb, self.name).all()
            self.assertTrue(ret)
            self.assertTrue(isinstance(ret, list))
            self.assertTrue(isinstance(ret[0], self.ret))
            mock.assert_called_with(
                'http://localhost:8000/api/{}/{}/'.format(
                    self.app,
                    self.name.replace('_', '-')
                ),
                headers=HEADERS
            )
test_virtualization.py 文件源码 项目:pynetbox 作者: digitalocean 项目源码 文件源码 阅读 110 收藏 0 点赞 0 评论 0
def test_get(self):
        with patch(
            'pynetbox.lib.query.requests.get',
            return_value=Response(fixture='{}/{}.json'.format(
                self.app,
                self.name[:-1]
            ))
        ) as mock:
            ret = getattr(nb, self.name).get(1)
            self.assertTrue(ret)
            self.assertTrue(isinstance(ret, self.ret))
            mock.assert_called_with(
                'http://localhost:8000/api/{}/{}/1/'.format(
                    self.app,
                    self.name.replace('_', '-')
                ),
                headers=HEADERS
            )
test_tenancy.py 文件源码 项目:pynetbox 作者: digitalocean 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def test_get_all(self):
        with patch(
            'pynetbox.lib.query.requests.get',
            return_value=Response(fixture='{}/{}.json'.format(
                self.app,
                self.name
            ))
        ) as mock:
            ret = getattr(nb, self.name).all()
            self.assertTrue(ret)
            self.assertTrue(isinstance(ret, list))
            self.assertTrue(isinstance(ret[0], self.ret))
            mock.assert_called_with(
                'http://localhost:8000/api/{}/{}/'.format(
                    self.app,
                    self.name.replace('_', '-')
                ),
                headers=HEADERS
            )
test_tenancy.py 文件源码 项目:pynetbox 作者: digitalocean 项目源码 文件源码 阅读 21 收藏 0 点赞 0 评论 0
def test_filter(self):
        with patch(
            'pynetbox.lib.query.requests.get',
            return_value=Response(fixture='{}/{}.json'.format(
                self.app,
                self.name
            ))
        ) as mock:
            ret = getattr(nb, self.name).filter(pk=1)
            self.assertTrue(ret)
            self.assertTrue(isinstance(ret, list))
            self.assertTrue(isinstance(ret[0], self.ret))
            mock.assert_called_with(
                'http://localhost:8000/api/{}/{}/?pk=1'.format(
                    self.app,
                    self.name.replace('_', '-')
                ),
                headers=HEADERS
            )
test_tenancy.py 文件源码 项目:pynetbox 作者: digitalocean 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def test_get(self):
        with patch(
            'pynetbox.lib.query.requests.get',
            return_value=Response(fixture='{}/{}.json'.format(
                self.app,
                self.name[:-1]
            ))
        ) as mock:
            ret = getattr(nb, self.name).get(1)
            self.assertTrue(ret)
            self.assertTrue(isinstance(ret, self.ret))
            mock.assert_called_with(
                'http://localhost:8000/api/{}/{}/1/'.format(
                    self.app,
                    self.name.replace('_', '-')
                ),
                headers=HEADERS
            )
test_circuits.py 文件源码 项目:pynetbox 作者: digitalocean 项目源码 文件源码 阅读 18 收藏 0 点赞 0 评论 0
def test_get_all(self):
        with patch(
            'pynetbox.lib.query.requests.get',
            return_value=Response(fixture='{}/{}.json'.format(
                self.app,
                self.name
            ))
        ) as mock:
            ret = getattr(nb, self.name).all()
            self.assertTrue(ret)
            self.assertTrue(isinstance(ret, list))
            self.assertTrue(isinstance(ret[0], self.ret))
            mock.assert_called_with(
                'http://localhost:8000/api/{}/{}/'.format(
                    self.app,
                    self.name.replace('_', '-')
                ),
                headers=HEADERS
            )
test_circuits.py 文件源码 项目:pynetbox 作者: digitalocean 项目源码 文件源码 阅读 18 收藏 0 点赞 0 评论 0
def test_get(self):
        with patch(
            'pynetbox.lib.query.requests.get',
            return_value=Response(fixture='{}/{}.json'.format(
                self.app,
                self.name[:-1]
            ))
        ) as mock:
            ret = getattr(nb, self.name).get(1)
            self.assertTrue(ret)
            self.assertTrue(isinstance(ret, self.ret))
            mock.assert_called_with(
                'http://localhost:8000/api/{}/{}/1/'.format(
                    self.app,
                    self.name.replace('_', '-')
                ),
                headers=HEADERS
            )
test_ipam.py 文件源码 项目:pynetbox 作者: digitalocean 项目源码 文件源码 阅读 22 收藏 0 点赞 0 评论 0
def test_get_all(self):
        with patch(
            'pynetbox.lib.query.requests.get',
            return_value=Response(fixture='{}/{}.json'.format(
                self.app,
                self.name
            ))
        ) as mock:
            ret = getattr(nb, self.name).all()
            self.assertTrue(ret)
            self.assertTrue(isinstance(ret, list))
            self.assertTrue(isinstance(ret[0], self.ret))
            mock.assert_called_with(
                'http://localhost:8000/api/{}/{}/'.format(
                    self.app,
                    self.name.replace('_', '-')
                ),
                headers=HEADERS
            )
test_ipam.py 文件源码 项目:pynetbox 作者: digitalocean 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def test_filter(self):
        with patch(
            'pynetbox.lib.query.requests.get',
            return_value=Response(fixture='{}/{}.json'.format(
                self.app,
                self.name
            ))
        ) as mock:
            ret = getattr(nb, self.name).filter(pk=1)
            self.assertTrue(ret)
            self.assertTrue(isinstance(ret, list))
            self.assertTrue(isinstance(ret[0], self.ret))
            mock.assert_called_with(
                'http://localhost:8000/api/{}/{}/?pk=1'.format(
                    self.app,
                    self.name.replace('_', '-')
                ),
                headers=HEADERS
            )
test_players.py 文件源码 项目:CatLaser2 作者: adafruit 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def test_update_no_active_player_makes_next_active(self):
        # Setup, add some players to waiting list.
        laser_players = players.Players(1)
        laser_players.add_player('192.168.0.1')
        # Check none are yet active.
        self.assertEqual(None, laser_players.active_player())
        # Setup, create mock callbacks that will remember how they were called.
        start_active = unittest.mock.Mock()
        end_active = unittest.mock.Mock()
        # Call update with 1 second of time elapsed.
        laser_players.update(0.5, start_active, end_active)
        # Check start active was called with the first in line IP, and that the
        # currently active player is the first one added (with 1 second of playtime
        # left).
        start_active.assert_called_once_with('192.168.0.1')
        end_active.assert_not_called()
        self.assertEqual(('192.168.0.1', 1), laser_players.active_player())
test_players.py 文件源码 项目:CatLaser2 作者: adafruit 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def test_update_moves_to_next_after_playetime_elapsed(self):
        # Setup, add two players and make the first active.
        laser_players = players.Players(1)
        laser_players.add_player('192.168.0.1')
        laser_players.add_player('192.168.0.2')
        start_active = unittest.mock.Mock()
        end_active = unittest.mock.Mock()
        laser_players.update(1, start_active, end_active)
        start_active.reset_mock()
        end_active.reset_mock()
        # Update with two seconds of time so the first player time is up, then
        # check next player is active.
        laser_players.update(2, start_active, end_active)
        end_active.assert_called_once_with('192.168.0.1')
        start_active.assert_called_once_with('192.168.0.2')
        self.assertEqual(('192.168.0.2', 1), laser_players.active_player())
test_commands.py 文件源码 项目:ndr 作者: SecuredByTHEM 项目源码 文件源码 阅读 51 收藏 0 点赞 0 评论 0
def test_uploading_syslog(self):
        '''Tests syslog upload command'''
        syslog_uploader_cli = ["syslog_uploader", "-c", self._ndr_config_file, TEST_SYSLOG_DATA]
        with unittest.mock.patch.object(sys, 'argv', syslog_uploader_cli):
            ndr.tools.syslog_uploader.main()

        # Make sure there's only one file in the queue
        outbound_queue = os.listdir(self._ncc.outgoing_upload_spool)
        self.assertEqual(len(outbound_queue), 1)
        this_msg = self._ncc.outgoing_upload_spool + "/" + outbound_queue[0]

        loaded_msg = ndr.IngestMessage.verify_and_load_message(
            self._ncc, this_msg, only_accept_cn="ndr_test_suite")
        os.remove(this_msg)

        self.assertEqual(loaded_msg.message_type, ndr.IngestMessageTypes.SYSLOG_UPLOAD)
        syslog = ndr.SyslogUploadMessage().from_message(loaded_msg)
test_commands.py 文件源码 项目:ndr 作者: SecuredByTHEM 项目源码 文件源码 阅读 27 收藏 0 点赞 0 评论 0
def test_uploading_status(self):
        '''Tests uploading status messages'''
        status_uploader_cli = ["status_uploader", "-c", self._ndr_config_file]
        with unittest.mock.patch.object(sys, 'argv', status_uploader_cli):
            ndr.tools.status.main()

        # Make sure there's only one file in the queue
        outbound_queue = os.listdir(self._ncc.outgoing_upload_spool)
        self.assertEqual(len(outbound_queue), 1)
        this_msg = self._ncc.outgoing_upload_spool + "/" + outbound_queue[0]

        loaded_msg = ndr.IngestMessage.verify_and_load_message(
            self._ncc, this_msg, only_accept_cn="ndr_test_suite")
        os.remove(this_msg)

        self.assertEqual(loaded_msg.message_type, ndr.IngestMessageTypes.STATUS)
test_commands.py 文件源码 项目:ndr 作者: SecuredByTHEM 项目源码 文件源码 阅读 34 收藏 0 点赞 0 评论 0
def test_alert_tester(self):
        '''Tests alert tester messages'''
        alert_tester_cli = ["alert_tester", "-c", self._ndr_config_file]
        with unittest.mock.patch.object(sys, 'argv', alert_tester_cli):
            ndr.tools.alert_tester.main()

        # Make sure there's only one file in the queue
        outbound_queue = os.listdir(self._ncc.outgoing_upload_spool)
        self.assertEqual(len(outbound_queue), 1)
        this_msg = self._ncc.outgoing_upload_spool + "/" + outbound_queue[0]

        loaded_msg = ndr.IngestMessage.verify_and_load_message(
            self._ncc, this_msg, only_accept_cn="ndr_test_suite")
        os.remove(this_msg)

        self.assertEqual(loaded_msg.message_type, ndr.IngestMessageTypes.TEST_ALERT)
test_commands.py 文件源码 项目:ndr 作者: SecuredByTHEM 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def test_pcap_processing(self):
        '''Tests uploading and processing a pcap message'''
        alert_tester_cli = ["pcap_processor", "-k", "-c", self._ndr_config_file, TSHARK_PCAP]
        with unittest.mock.patch.object(sys, 'argv', alert_tester_cli):
            ndr.tools.pcap_to_traffic_report.main()

        # Make sure there's only one file in the queue
        outbound_queue = os.listdir(self._ncc.outgoing_upload_spool)
        self.assertEqual(len(outbound_queue), 1)
        this_msg = self._ncc.outgoing_upload_spool + "/" + outbound_queue[0]

        loaded_msg = ndr.IngestMessage.verify_and_load_message(
            self._ncc, this_msg, only_accept_cn="ndr_test_suite")
        os.remove(this_msg)

        self.assertEqual(loaded_msg.message_type, ndr.IngestMessageTypes.TRAFFIC_REPORT)
test_fierce.py 文件源码 项目:fierce 作者: mschwager 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def test_recursive_query_basic_failure(self):
        resolver = dns.resolver.Resolver()
        domain = dns.name.from_text('example.com.')
        record_type = 'NS'

        with unittest.mock.patch.object(fierce, 'query', return_value=None) as mock_method:
            result = fierce.recursive_query(resolver, domain, record_type=record_type)

        expected = [
            unittest.mock.call(resolver, 'example.com.', record_type),
            unittest.mock.call(resolver, 'com.', record_type),
            unittest.mock.call(resolver, '', record_type),
        ]

        mock_method.assert_has_calls(expected)
        self.assertIsNone(result)
test_fierce.py 文件源码 项目:fierce 作者: mschwager 项目源码 文件源码 阅读 22 收藏 0 点赞 0 评论 0
def test_recursive_query_long_domain_failure(self):
        resolver = dns.resolver.Resolver()
        domain = dns.name.from_text('sd1.sd2.example.com.')
        record_type = 'NS'

        with unittest.mock.patch.object(fierce, 'query', return_value=None) as mock_method:
            result = fierce.recursive_query(resolver, domain, record_type=record_type)

        expected = [
            unittest.mock.call(resolver, 'sd1.sd2.example.com.', record_type),
            unittest.mock.call(resolver, 'sd2.example.com.', record_type),
            unittest.mock.call(resolver, 'example.com.', record_type),
            unittest.mock.call(resolver, 'com.', record_type),
            unittest.mock.call(resolver, '', record_type),
        ]

        mock_method.assert_has_calls(expected)
        self.assertIsNone(result)
test_fierce.py 文件源码 项目:fierce 作者: mschwager 项目源码 文件源码 阅读 22 收藏 0 点赞 0 评论 0
def test_recursive_query_basic_success(self):
        resolver = dns.resolver.Resolver()
        domain = dns.name.from_text('example.com.')
        record_type = 'NS'
        good_response = unittest.mock.MagicMock()
        side_effect = [
            None,
            good_response,
            None,
        ]

        with unittest.mock.patch.object(fierce, 'query', side_effect=side_effect) as mock_method:
            result = fierce.recursive_query(resolver, domain, record_type=record_type)

        expected = [
            unittest.mock.call(resolver, 'example.com.', record_type),
            unittest.mock.call(resolver, 'com.', record_type),
        ]

        mock_method.assert_has_calls(expected)
        self.assertEqual(result, good_response)


问题


面经


文章

微信
公众号

扫码关注公众号