Message ID | 20240113201532.121274-1-ju.o@free.fr |
---|---|
State | Accepted |
Headers | show |
Series | [1/1] support/testing: add netcat runtime test | expand |
Julien, All, On 2024-01-13 21:15 +0100, Julien Olivain spake thusly: > Signed-off-by: Julien Olivain <ju.o@free.fr> Applied to master, thanks. Regards, Yann E. MORIN. > --- > DEVELOPERS | 1 + > support/testing/tests/package/test_netcat.py | 41 ++++++++++++++++++++ > 2 files changed, 42 insertions(+) > create mode 100644 support/testing/tests/package/test_netcat.py > > diff --git a/DEVELOPERS b/DEVELOPERS > index 94a89c63d5..d25f31f0ff 100644 > --- a/DEVELOPERS > +++ b/DEVELOPERS > @@ -1791,6 +1791,7 @@ F: support/testing/tests/package/test_lz4.py > F: support/testing/tests/package/test_lzop.py > F: support/testing/tests/package/test_mtools.py > F: support/testing/tests/package/test_ncdu.py > +F: support/testing/tests/package/test_netcat.py > F: support/testing/tests/package/test_nftables.py > F: support/testing/tests/package/test_nftables/ > F: support/testing/tests/package/test_octave.py > diff --git a/support/testing/tests/package/test_netcat.py b/support/testing/tests/package/test_netcat.py > new file mode 100644 > index 0000000000..b3efa4c40b > --- /dev/null > +++ b/support/testing/tests/package/test_netcat.py > @@ -0,0 +1,41 @@ > +import os > +import time > + > +import infra.basetest > + > + > +class TestNetCat(infra.basetest.BRTest): > + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ > + """ > + BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y > + BR2_PACKAGE_NETCAT=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() > + > + self.assertRunOk("nc --version") > + > + in_file = "input.bin" > + out_file = "output.bin" > + port = 12345 > + > + cmd = f"dd if=/dev/urandom of={in_file} bs=1k count=1k" > + self.assertRunOk(cmd) > + > + cmd = f"nc -l -p {port} > {out_file} &" > + self.assertRunOk(cmd) > + > + time.sleep(1) > + > + cmd = f"cat {in_file} | nc -c 127.0.0.1 {port}" > + self.assertRunOk(cmd) > + > + cmd = f"cmp {in_file} {out_file}" > + self.assertRunOk(cmd) > -- > 2.43.0 > > _______________________________________________ > buildroot mailing list > buildroot@buildroot.org > https://lists.buildroot.org/mailman/listinfo/buildroot
Hello Julien, All, On Sun, Jan 21, 2024 at 11:20 AM Yann E. MORIN <yann.morin.1998@free.fr> wrote: > > Julien, All, > > On 2024-01-13 21:15 +0100, Julien Olivain spake thusly: > > Signed-off-by: Julien Olivain <ju.o@free.fr> > > Applied to master, thanks. It seems this test is failing in gitlab-ci for some reason: https://gitlab.com/buildroot.org/buildroot/-/jobs/6093854664 can you have a look? Best regards, Romain > > Regards, > Yann E. MORIN. > > > --- > > DEVELOPERS | 1 + > > support/testing/tests/package/test_netcat.py | 41 ++++++++++++++++++++ > > 2 files changed, 42 insertions(+) > > create mode 100644 support/testing/tests/package/test_netcat.py > > > > diff --git a/DEVELOPERS b/DEVELOPERS > > index 94a89c63d5..d25f31f0ff 100644 > > --- a/DEVELOPERS > > +++ b/DEVELOPERS > > @@ -1791,6 +1791,7 @@ F: support/testing/tests/package/test_lz4.py > > F: support/testing/tests/package/test_lzop.py > > F: support/testing/tests/package/test_mtools.py > > F: support/testing/tests/package/test_ncdu.py > > +F: support/testing/tests/package/test_netcat.py > > F: support/testing/tests/package/test_nftables.py > > F: support/testing/tests/package/test_nftables/ > > F: support/testing/tests/package/test_octave.py > > diff --git a/support/testing/tests/package/test_netcat.py b/support/testing/tests/package/test_netcat.py > > new file mode 100644 > > index 0000000000..b3efa4c40b > > --- /dev/null > > +++ b/support/testing/tests/package/test_netcat.py > > @@ -0,0 +1,41 @@ > > +import os > > +import time > > + > > +import infra.basetest > > + > > + > > +class TestNetCat(infra.basetest.BRTest): > > + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ > > + """ > > + BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y > > + BR2_PACKAGE_NETCAT=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() > > + > > + self.assertRunOk("nc --version") > > + > > + in_file = "input.bin" > > + out_file = "output.bin" > > + port = 12345 > > + > > + cmd = f"dd if=/dev/urandom of={in_file} bs=1k count=1k" > > + self.assertRunOk(cmd) > > + > > + cmd = f"nc -l -p {port} > {out_file} &" > > + self.assertRunOk(cmd) > > + > > + time.sleep(1) > > + > > + cmd = f"cat {in_file} | nc -c 127.0.0.1 {port}" > > + self.assertRunOk(cmd) > > + > > + cmd = f"cmp {in_file} {out_file}" > > + self.assertRunOk(cmd) > > -- > > 2.43.0 > > > > _______________________________________________ > > buildroot mailing list > > buildroot@buildroot.org > > https://lists.buildroot.org/mailman/listinfo/buildroot > > -- > .-----------------.--------------------.------------------.--------------------. > | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | > | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | > | +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no | > | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | > '------------------------------^-------^------------------^--------------------' > _______________________________________________ > buildroot mailing list > buildroot@buildroot.org > https://lists.buildroot.org/mailman/listinfo/buildroot
Hi Romain, All, On 05/02/2024 18:49, Romain NAOUR wrote: > Hello Julien, All, > > On Sun, Jan 21, 2024 at 11:20 AM Yann E. MORIN > <yann.morin.1998@free.fr> wrote: >> >> Julien, All, >> >> On 2024-01-13 21:15 +0100, Julien Olivain spake thusly: >> > Signed-off-by: Julien Olivain <ju.o@free.fr> >> >> Applied to master, thanks. > > It seems this test is failing in gitlab-ci for some reason: > https://gitlab.com/buildroot.org/buildroot/-/jobs/6093854664 > > can you have a look? I was able to reproduce the issue with a very slow execution. I proposed a fix in: https://patchwork.ozlabs.org/project/buildroot/patch/20240205214837.3497535-1-ju.o@free.fr/ > > Best regards, > Romain Best regards, Julien.
diff --git a/DEVELOPERS b/DEVELOPERS index 94a89c63d5..d25f31f0ff 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -1791,6 +1791,7 @@ F: support/testing/tests/package/test_lz4.py F: support/testing/tests/package/test_lzop.py F: support/testing/tests/package/test_mtools.py F: support/testing/tests/package/test_ncdu.py +F: support/testing/tests/package/test_netcat.py F: support/testing/tests/package/test_nftables.py F: support/testing/tests/package/test_nftables/ F: support/testing/tests/package/test_octave.py diff --git a/support/testing/tests/package/test_netcat.py b/support/testing/tests/package/test_netcat.py new file mode 100644 index 0000000000..b3efa4c40b --- /dev/null +++ b/support/testing/tests/package/test_netcat.py @@ -0,0 +1,41 @@ +import os +import time + +import infra.basetest + + +class TestNetCat(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y + BR2_PACKAGE_NETCAT=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() + + self.assertRunOk("nc --version") + + in_file = "input.bin" + out_file = "output.bin" + port = 12345 + + cmd = f"dd if=/dev/urandom of={in_file} bs=1k count=1k" + self.assertRunOk(cmd) + + cmd = f"nc -l -p {port} > {out_file} &" + self.assertRunOk(cmd) + + time.sleep(1) + + cmd = f"cat {in_file} | nc -c 127.0.0.1 {port}" + self.assertRunOk(cmd) + + cmd = f"cmp {in_file} {out_file}" + self.assertRunOk(cmd)
Signed-off-by: Julien Olivain <ju.o@free.fr> --- DEVELOPERS | 1 + support/testing/tests/package/test_netcat.py | 41 ++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 support/testing/tests/package/test_netcat.py