Commit Graph

27 Commits

Author SHA1 Message Date
8abd8444f0 chore: revert function spacing
It turns out that no extra line is used when the function definition
isn't at the beginning of the file.
2025-01-27 13:29:25 -05:00
ec1e48b793 chore: improve formatting 2024-12-15 19:10:31 -05:00
47e4247613 tests(neovim): add stylix dependency
Also increased the sleep time to ensure that neovim loads before
continuing with the test.
2024-11-20 17:52:16 -05:00
94d26cfae6 tests: prefer sending new line over return 2024-10-15 23:07:36 -04:00
db75a7e29a tests: auto-login with getty 2024-10-15 23:01:19 -04:00
0b0deb55b7 tests: Remove desktop import
Fixes an issue where NixOS tests weren't exactly treated as
containers, presumably since they run inside QEMU.

The previous dependency on stylix is no longer necessary since
base16-nvim was upstreamed, although it may be ideal to split
it into its own module at a later date.
2024-09-01 15:12:51 -04:00
50f8c3eb00 meta: Replace desktop.container with config.boot.isContainer
No need to say that we're a container when NixOS already handles this.
2024-09-01 14:33:04 -04:00
939002e2f6 chore: Improve formatting 2024-09-01 14:12:17 -04:00
71b252d810 tests: Simplify machine imports 2024-09-01 13:43:36 -04:00
d188a89b6e tests: Remove defaults.documentation.enable
Removed defaults.documentation.enable since it seems better to replicate
the environment as much as possible.

Also simplified specialArgs usage since we should never have to pass any
other args to the test machine.
2024-09-01 13:37:24 -04:00
d1a7f76d4f tests: Remove useless parentheses
Tests seem to work fine without the `.config.result` part.
2024-09-01 13:34:53 -04:00
3bbb4befc2 tests: Remove useless import
Not needed when we have `self`.
2024-09-01 13:34:36 -04:00
64eb60a1ab meta: Inline tests lib
The tests lib wasn't doing that much anyway and Nix flake checks are
just derivations that build successfully.
2024-09-01 12:52:23 -04:00
1c668bde68 chore: Format with nix fmt
nixfmt-rfc-style collapses lists like these.
2024-08-03 15:27:04 -04:00
8ece3e2812 treewide: Format remaining files with nixfmt-rfc-style 2024-08-03 14:49:00 -04:00
ce67ffbf73 meta: Rename homeManagerModules attribute to homeModules
This fixes an issue where previously homeManagerModules would be an
unknown flake output. Note that this change is a part of Nix 2.22.3
but not Nix 2.23.3.
2024-07-18 19:43:11 -04:00
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