Commit Graph

11 Commits

Author SHA1 Message Date
e077bb8ff4 tests(neovim): Increase wait time
The addition of the neovim plugins made the initial time to open longer
than 5 seconds and thus failed the tests.

Note that using an alternative method like machine.wait_for_text() is
probably better in the long run to avoid flaky tests.
2024-05-20 13:42:48 -04:00
b5b20c7b19 tests: Test neovim with config
Fixes an issue where previously the home-manager config for neovim
wasn't actually being tested.
2024-05-19 00:45:55 -04:00
240cf74584 tests: Test neovim properly
This seems to work.
2024-05-12 21:59:48 -04:00
7b564db92d meta(nix): Move test lib to separate directory 2024-04-09 08:02:31 -04:00
30e0239cf7 flake.nix: Dynamically import tests
Makes it possible to add new test files to the tests directory and have
everything instantly working.
2024-04-08 10:33:18 -04:00
41ce56718b chore: Simplify tests
Removes the redundant `self`.
2024-04-05 11:53:40 -04:00
22e31ff60b chore: Format with nixpkgs-fmt
Note that we will continue to use nixpkgs-fmt for the time being here
since nixfmt-rfc-style breaks string syntax highlighting and comments
like `/* this */` get turned into `# this`.

The conversion from lisp-like formatting to something else in flake.nix
is a bit unfortunate, but I'd rather have a singular style for the
entire code base to make things easier.
2024-04-05 11:40:23 -04:00
b368817c52 feat: Simplify imports by importing with specialArgs
This change makes it possible to import the modules that are required
from the flake inputs in the output modules themselves, thus preventing
users from having to manually import those modules.

This simplifies things overall and was made possible by the specialArgs
option that allowed these flake inputs to be passed into our container.
2024-04-05 09:37:30 -04:00
267dda3224 chore: Add missing imports to tests
Necessary since system now depends on home-manager and desktop depends
on stylix, which also depends on home-manager.

Note that since conditional imports can't be used and we include the
system module inside of our containers which don't have access to self,
importing the required modules inside the module itself cannot be used.
2024-04-05 09:07:28 -04:00
3946ea52fb chore: Update test imports 2024-04-04 17:31:01 -04:00
95b10ec3ef meta: Begin writing tests in Nix
Now that I've figured out how to dynamically import modules and use
those modules as outputs, the next step is to ensure that these modules
work as intended when being used by end users.

NixOS offers a built-in testing solution that enables us to conveniently
spin up virtual machines with a given configuration, then verify their
correctness through python scripting.

The lib.nix file in particular is based on Jörg Thalheim's very useful
blog post that explains how to use the built-in testing functionality
with Nix flakes, which isn't covered in official documentation.

See: https://blog.thalheim.io/2023/01/08/how-to-use-nixos-testing-framework-with-flakes/
2024-04-02 05:20:42 -04:00