示例#1
0
    def test_peers(self, mock_get):
        response = LookingGlass(mock_get.ripestat,
                                resource=self.params["resource"])

        assert isinstance(response.peers, list)

        for peer in response.peers:
            assert isinstance(peer, tuple)  # namedtuple: Peer
示例#2
0
    def test_rrcs(self, mock_get):
        response = LookingGlass(mock_get.ripestat,
                                resource=self.params["resource"])

        assert isinstance(response.rrcs, dict)

        for name, route_server in response.rrcs.items():
            assert isinstance(name, str)  # RRC name: 'RRC00'
            assert isinstance(route_server, tuple)  # namedtuple: RRC
示例#3
0
    def test_objectify_rrcs(self, mock_get):
        response = LookingGlass(mock_get.ripestat,
                                resource=self.params["resource"])

        for collector in response:
            assert isinstance(collector, tuple)  # namedtuple: RRC
            assert "rrc" in collector.__dir__()
            assert "location" in collector.__dir__()
            assert "peers" in collector.__dir__()

            for peer in collector.peers:
                assert isinstance(peer, tuple)  # namedtuple: Peer
                assert "asn_origin" in peer.__dir__()
                assert "as_path" in peer.__dir__()
                assert "community" in peer.__dir__()
                assert "last_updated" in peer.__dir__()
                assert "prefix" in peer.__dir__()
                assert "peer" in peer.__dir__()
                assert "origin" in peer.__dir__()
                assert "next_hop" in peer.__dir__()
                assert "latest_time" in peer.__dir__()
示例#4
0
 def test__iter__(self, mock_get):
     response = LookingGlass(mock_get.ripestat,
                             resource=self.params["resource"])
     assert isinstance(response, Iterable)
示例#5
0
 def test__getitem__(self, mock_get):
     response = LookingGlass(mock_get.ripestat,
                             resource=self.params["resource"])
     assert isinstance(response["RRC00"],
                       tuple)  # namedtuple: RRC by RRC key
示例#6
0
 def test__init__invalid_resource(self):
     with pytest.raises(ValueError):
         LookingGlass(self.ripestat, resource="invalid-prefix")
示例#7
0
 def test__init__valid_resource(self, mock_get):
     response = LookingGlass(mock_get.ripestat,
                             resource=self.params["resource"])
     assert isinstance(response, LookingGlass)
示例#8
0
    def test_query_time(self, mock_get):
        response = LookingGlass(mock_get.ripestat,
                                resource=self.params["resource"])

        time = TestLookingGlass.RESPONSE["data"]["query_time"]
        assert response.query_time == datetime.fromisoformat(time)
示例#9
0
 def test__len__(self, mock_get):
     response = LookingGlass(mock_get.ripestat,
                             resource=self.params["resource"])
     assert len(response) == len(TestLookingGlass.RESPONSE["data"]["rrcs"])