* [Buildroot] [PATCH 1/1] support/testing: add fping runtime test
@ 2024-01-23 21:54 Julien Olivain
2024-02-05 21:41 ` Peter Korsgaard
0 siblings, 1 reply; 2+ messages in thread
From: Julien Olivain @ 2024-01-23 21:54 UTC (permalink / raw)
To: buildroot; +Cc: Julien Olivain
Signed-off-by: Julien Olivain <ju.o@free.fr>
---
DEVELOPERS | 1 +
support/testing/tests/package/test_fping.py | 45 +++++++++++++++++++++
2 files changed, 46 insertions(+)
create mode 100644 support/testing/tests/package/test_fping.py
diff --git a/DEVELOPERS b/DEVELOPERS
index 9528837dd0..fa760cb3ed 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1769,6 +1769,7 @@ F: support/testing/tests/package/test_ddrescue/
F: support/testing/tests/package/test_dos2unix.py
F: support/testing/tests/package/test_fluidsynth.py
F: support/testing/tests/package/test_fluidsynth/
+F: support/testing/tests/package/test_fping.py
F: support/testing/tests/package/test_gawk.py
F: support/testing/tests/package/test_glslsandbox_player.py
F: support/testing/tests/package/test_glslsandbox_player/
diff --git a/support/testing/tests/package/test_fping.py b/support/testing/tests/package/test_fping.py
new file mode 100644
index 0000000000..58a1c92c0b
--- /dev/null
+++ b/support/testing/tests/package/test_fping.py
@@ -0,0 +1,45 @@
+import os
+import time
+
+import infra.basetest
+
+
+class TestFping(infra.basetest.BRTest):
+ config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \
+ """
+ BR2_PACKAGE_FPING=y
+ BR2_TARGET_ROOTFS_CPIO=y
+ # BR2_TARGET_ROOTFS_TAR is not set
+ """
+
+ def test_run(self):
+ cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio")
+ self.emulator.boot(arch="armv5",
+ kernel="builtin",
+ options=["-initrd", cpio_file])
+ self.emulator.login()
+
+ # Check the program can execute.
+ self.assertRunOk("fping --version")
+
+ # Fping v5.1 need to wait few seconds after a kernel booted
+ # before starting. This sleep time can be removed when the
+ # issue will be closed and the package updated. See:
+ # https://github.com/schweikert/fping/issues/288
+ time.sleep(5)
+
+ # Run 3 pings on localhost.
+ self.assertRunOk("fping -e -c 3 localhost")
+
+ # Run pings on a local subnet and print statistics.
+ self.assertRunOk("fping -s -g 127.0.0.0/28")
+
+ # Test an IPv6 ping.
+ self.assertRunOk("fping -6 ::1")
+
+ # Create a prohibited route to make fping fail.
+ self.assertRunOk("ip route add to prohibit 192.168.12.0/24")
+
+ # We expect fping to fail when pinging the prohibited network.
+ _, ret = self.emulator.run("fping 192.168.12.34")
+ self.assertNotEqual(ret, 0)
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [Buildroot] [PATCH 1/1] support/testing: add fping runtime test
2024-01-23 21:54 [Buildroot] [PATCH 1/1] support/testing: add fping runtime test Julien Olivain
@ 2024-02-05 21:41 ` Peter Korsgaard
0 siblings, 0 replies; 2+ messages in thread
From: Peter Korsgaard @ 2024-02-05 21:41 UTC (permalink / raw)
To: Julien Olivain; +Cc: buildroot
>>>>> "Julien" == Julien Olivain <ju.o@free.fr> writes:
> Signed-off-by: Julien Olivain <ju.o@free.fr>
> ---
> DEVELOPERS | 1 +
> support/testing/tests/package/test_fping.py | 45 +++++++++++++++++++++
> 2 files changed, 46 insertions(+)
> create mode 100644 support/testing/tests/package/test_fping.py
> diff --git a/DEVELOPERS b/DEVELOPERS
> index 9528837dd0..fa760cb3ed 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -1769,6 +1769,7 @@ F: support/testing/tests/package/test_ddrescue/
> F: support/testing/tests/package/test_dos2unix.py
> F: support/testing/tests/package/test_fluidsynth.py
> F: support/testing/tests/package/test_fluidsynth/
> +F: support/testing/tests/package/test_fping.py
> F: support/testing/tests/package/test_gawk.py
> F: support/testing/tests/package/test_glslsandbox_player.py
> F: support/testing/tests/package/test_glslsandbox_player/
> diff --git a/support/testing/tests/package/test_fping.py b/support/testing/tests/package/test_fping.py
> new file mode 100644
> index 0000000000..58a1c92c0b
> --- /dev/null
> +++ b/support/testing/tests/package/test_fping.py
> @@ -0,0 +1,45 @@
> +import os
> +import time
> +
> +import infra.basetest
> +
> +
> +class TestFping(infra.basetest.BRTest):
> + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \
> + """
> + BR2_PACKAGE_FPING=y
> + BR2_TARGET_ROOTFS_CPIO=y
> + # BR2_TARGET_ROOTFS_TAR is not set
> + """
> +
> + def test_run(self):
> + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio")
> + self.emulator.boot(arch="armv5",
> + kernel="builtin",
> + options=["-initrd", cpio_file])
> + self.emulator.login()
> +
> + # Check the program can execute.
> + self.assertRunOk("fping --version")
> +
> + # Fping v5.1 need to wait few seconds after a kernel booted
> + # before starting. This sleep time can be removed when the
> + # issue will be closed and the package updated. See:
> + # https://github.com/schweikert/fping/issues/288
> + time.sleep(5)
That's annoying, but indeed not much we can do about it. From the looks
of it, the fping code initializes the timestamp to zero (using calloc)
and then complains when (the delta from) CLOCK_REALTIME is less than
10s.
The only thing we could do better is to take timeout_multiplier into
consideration, so I multiplied with that and applied, thanks.
--
Bye, Peter Korsgaard
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-02-05 21:42 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-01-23 21:54 [Buildroot] [PATCH 1/1] support/testing: add fping runtime test Julien Olivain
2024-02-05 21:41 ` Peter Korsgaard
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox