コード例 #1
0
 def test_timeout(self):
     with patch("sys.stdout", new=io.StringIO()) as fake_out:
         command_line_ping3.main(['-w', '0.0001', 'example.com'])
         self.assertRegex(fake_out.getvalue(), r".*Timeout \> [0-9\.]+s.*")
コード例 #2
0
 def test_count(self):
     with patch("sys.stdout", new=io.StringIO()) as fake_out:
         command_line_ping3.main(['-c', '1', 'example.com'])
         self.assertEqual(fake_out.getvalue().count("\n"), 1)
コード例 #3
0
 def test_dest_addr_2(self):
     with patch("sys.stdout", new=io.StringIO()) as fake_out:
         command_line_ping3.main(["127.0.0.1", "8.8.8.8"])
         self.assertTrue("127.0.0.1" in fake_out.getvalue())
         self.assertTrue("8.8.8.8" in fake_out.getvalue())
コード例 #4
0
 def test_dest_addr_0(self):
     with patch("sys.stdout", new=io.StringIO()) as fake_out:
         command_line_ping3.main()
         self.assertRegex(fake_out.getvalue(), r".*[0-9]+ms.*")
コード例 #5
0
ファイル: ping3.py プロジェクト: cyjahappy/MonitorChild
    Args:
        dest_addr: The destination address. Ex. "192.168.1.1"/"example.com"
        count: How many pings should be sent. Default is 4, same as Windows CMD. (default 4)
        interval: How many seconds between two packets. Default is 0, which means send the next packet as soon as the previous one responsed. (default 0)
        *args and **kwargs: And all the other arguments available in ping() except `seq`.

    Returns:
        Formatted ping results printed.
    """
    timeout = kwargs.get("timeout")
    src = kwargs.get("src")
    unit = kwargs.setdefault("unit", "ms")
    for i in range(count):
        output_text = "ping '{}'".format(dest_addr)
        output_text += " from '{}'".format(src) if src else ""
        output_text += " ... "
        delay = ping(dest_addr, seq=i, *args, **kwargs)
        print(output_text, end="")
        if delay is None:
            print("Timeout > {}s".format(timeout) if timeout else "Timeout")
        else:
            print("{value}{unit}".format(value=int(delay), unit=unit))
        if interval > 0 and i < (count - 1):
            time.sleep(interval)


if __name__ == "__main__":
    import command_line_ping3
    command_line_ping3.main()
コード例 #6
0
 def test_debug(self):
     with patch("sys.stdout", new=io.StringIO()) as fake_out:
         command_line_ping3.main(['--debug', '-w', '0.0001', 'example.com'])
         self.assertRegex(
             fake_out.getvalue(),
             r".*\[DEBUG\] Request timeout for ICMP packet\..*")