Пример #1
0
    def testWithClientSet(self):
        mock_client = _MockClient(ifaces=['foo', 'bar'])

        with mock.patch.object(magics_impl._state, 'client', mock_client):
            df = magics_impl.grr_ifconfig_impl()

        self.assertEqual(df.shape, (2, 1))
        self.assertEqual(list(df['ifname']), ['foo', 'bar'])
Пример #2
0
def grr_ifconfig(line: Text) -> pd.DataFrame:
    """Lists network interfaces of the selected client.

  Args:
    line: A string representing arguments passed to the magic command.

  Returns:
    Sequence of interfaces.

  Raises:
    NoClientSelectedError: Client is not selected to perform this operation.
  """
    del line  # Unused.
    return magics_impl.grr_ifconfig_impl()
Пример #3
0
    def testPrettyMacAddress(self):
        mock_client = _MockClient()

        mock_client.add_iface('foo', mac=b'\xaa\x12\x42\xff\xa5\xd0')
        mock_client.add_iface('bar')

        with mock.patch.object(magics_impl._state, 'client', mock_client):
            df = magics_impl.grr_ifconfig_impl()

        self.assertEqual(df.shape, (2, 3))
        self.assertEqual(list(df['ifname']), ['foo', 'bar'])
        self.assertTrue(pd.isna(df['mac_address'][1]))
        self.assertTrue(pd.isna(df['mac_address.pretty'][1]))
        self.assertEqual(df['mac_address'][0], b'\xaa\x12\x42\xff\xa5\xd0')
        self.assertEqual(df['mac_address.pretty'][0], 'aa:12:42:ff:a5:d0')
Пример #4
0
    def testPrettyIpAddress(self):
        mock_client = _MockClient()

        ipv4 = ipaddress.IPv4Address('42.0.255.32')
        ipv6 = ipaddress.IPv6Address('2001:db8::1000')
        mock_client.add_iface('foo', [ipv4.packed, ipv6.packed])
        mock_client.add_iface('bar', [])

        with mock.patch.object(magics_impl._state, 'client', mock_client):
            df = magics_impl.grr_ifconfig_impl()

        self.assertEqual(df.shape, (2, 2))
        self.assertEqual(list(df['ifname']), ['foo', 'bar'])
        self.assertTrue(pd.isna(df['addresses'][1]))

        addresses = df['addresses'][0]
        self.assertEqual(list(addresses['packed_bytes']),
                         [ipv4.packed, ipv6.packed])
        self.assertEqual(list(addresses['packed_bytes.pretty']),
                         [str(ipv4), str(ipv6)])
Пример #5
0
 def testNoClientSelected(self):
     with self.assertRaises(magics_impl.NoClientSelectedError):
         magics_impl.grr_ifconfig_impl()