Using the shell to run unittests allows not needing
to wait for a string at the start of the test which
makes the test independent having the application reset
after the terminal is open.
- Since `printf()` is buffered it might not arrive in a single
read to pexpect. Regex which terminate in a group match might
match only some elements, this might break tests that depend
on exact group matching.
If the destination address or an address within the source route is
multicast within a RPL source routing header, a receiving node is
supposed to just discard the packets, but not to send an ICMPv6 error
message, as the test assumes at the moment.
Source: https://tools.ietf.org/html/rfc6554#section-4.2