irtestcase(1)

πŸ“¦
version 0.10.2 Β· 3 versions
, in alpine 3.24, debian trixie, fedora 43, fedora 44, nixos 26.05, nixpkgs unstable, opensuse-leap 16.0, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’– irtestcase(1) β€” the lirc testcase bestie πŸ’–

okay so this is the manual page for irtestcase, a User Commands situation, and honestly? it's giving "record the vibe, replay the vibe" ✨


🌸 NAME 🌸

irtestcase β€” create or check decoding testcases. fr fr that's the whole job.


πŸŽ€ SYNOPSIS πŸŽ€

irtestcase [-l lircrc-file -p prog] <socket>

irtestcase [-l lircrc-file -p prog] -t testdata <socket>

irtestcase [-v|-h]

✨ DESCRIPTION ✨

okay so irtestcase is that girl who records keypresses from a remote together with the decoded values. and then β€” plot twist β€” you can hand her the output from another session and she'll verify that the decoding still works like it's supposed to. slay πŸ’…

In the first form, irtestcase just... waits. for input. and creates log files for it. while she's doing that she also echoes the received buttons on stdout. πŸ¦‹

⚠️ not me having to tell you this: there is no way to stop the program in a clean way. just hit ctrl-C when you're done. periodt. πŸ’€

In the second form she feeds the data from the testdata file to lircd and logs the decoded data as usual. which means you can test the output from the remote that generated the testdata in the first place. iykyk. in this form lircd must be running with the "file" driver. no cap. πŸ‘‘

The optional socket is the lircd output socket (lircd must be running, bestie). it defaults to LIRC_SOCKET_PATH in the environment, falling back to a hardcoded default value (/var/run/lirc/lircd). 🫢


πŸ’… OPTIONS πŸ’…

  • -l, --lircrc <lircrc config file> β€” log also applications strings (like ircat(1) does) using a lircrc type config file. obsessed with her tbh
  • -p, --prog <program id> β€” when you're using -l/--lircrc, this is the program name that matches the PROG = entries in lircrc. ⭐
  • -t, --testdata β€” use data from a file instead of "live" input from the remote. this can be the durations.log file from a previous run, see FILES below. it can also be logged output from mode2(1). πŸ“
  • -v , --version β€” print version and exit. short and sweet.
  • -h , --help β€” print help message. 🌈

🧚 ENVIRONMENT 🧚

irtestcase respects LIRC_SOCKET_PATH, which β€” if defined β€” holds the path to the lircd output socket to listen to. the vibe check of paths, honestly.


πŸ¦‹ FILES πŸ¦‹

  • /tmp/irtestcase β€” irtestcase creates files in /tmp/irtestcase (hardcoded, sorry 😭). after a successful run, here's what you get:
    • durations.log β€” printable space/pulse durations in the same format as mode2(1). this file is usable as -t/--testdata input. ✨
    • codes.log β€” the decoded buttons, in same format as irw(1). πŸ’œ
    • app_strings.log β€” the application strings, as presented by ircat(1). πŸŽ€
  • ~/.cache/irtestcase.log β€” debug log. setting the XDG_CACHE_HOME environment variable relocates this file to $XDG_CACHE_HOME/irtestcase.log. the amount of logging respects the LIRC_LOGLEVEL environment variable, defaulting to the debug value in the [lircd] section of lirc_options.conf. she's thorough, we love that for her.

🌈 SEE ALSO 🌈

the documentation for lirc is maintained as html pages. they are located under html/ in the documentation directory. go read them bestie, they ate. πŸ’–


and that's the whole page!! 🫢 this was irtestcase 0.10.2, last change Oct 2015 β€” iconic behavior, main character energy, no notes πŸ‘‘πŸ’…βœ¨