Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

nixos/tests: add integration tests for terminal emulators #103733

wants to merge 3 commits into
base: master


Copy link

@JJJollyjim JJJollyjim commented Nov 13, 2020

Motivation for this change

The terminal emulator is a pretty key program for a lot of (most?) desktop users, so it seems nice to have some certainty that they work before updating your system.

Terminal emulators all present a pretty similar interface, which gives us an opportunity to easily test their basic functionality with a single codebase.

My goal here was consistency -- I believe these tests should strike a good balance of thoroughness and simplicity, by not doing text input to the terminals, thereby avoiding much possibility of race conditions or focus issues.

There are two tests run on each terminal emulator

  • can it successfully execute a command passed on the cmdline?
  • can it successfully display a colour?

The latter is used as a proxy for "can it display text?", without going through all the intricacies of OCR.

256-colour terminal mode is used to display the test colour, since it has a universally-applicable palette (unlike 8- and 16- colour, where the colours are implementation-defined), and it is widely supported (unlike 24-bit colour).

I definitely don't have coverage of every terminal emulator -- I will address these in future PRs

Things done
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)

(note: termite fails to build pending #103704) fixed 馃憤

@JJJollyjim JJJollyjim requested a review from ttuegel as a code owner Nov 13, 2020
@JJJollyjim JJJollyjim changed the title Term tests nixos/tests: add integration tests for terminal emulators Nov 13, 2020
@JJJollyjim JJJollyjim force-pushed the JJJollyjim:term-tests branch from d08b889 to 899dc02 Nov 13, 2020
@JJJollyjim JJJollyjim force-pushed the JJJollyjim:term-tests branch from 899dc02 to cbf6a14 Nov 14, 2020
Copy link

@SuperSandro2000 SuperSandro2000 commented Nov 23, 2020

Can you solve the merge conflicts?

Copy link

@ttuegel ttuegel commented Dec 5, 2020

This is a cool idea! I don't feel comfortable reviewing the entire pull request, but for my part: the changes to Konsole look good! 馃憤

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

3 participants