mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-11-10 09:43:30 +01:00
30 lines
882 B
Nix
30 lines
882 B
Nix
{ lib, pkgs, ... }:
|
|
{
|
|
name = "facter";
|
|
meta = with lib.maintainers; {
|
|
maintainers = [ mic92 ];
|
|
};
|
|
|
|
nodes.machine = {
|
|
hardware.facter.reportPath = ./facter.json;
|
|
environment.systemPackages = [ pkgs.nixos-facter ];
|
|
};
|
|
|
|
testScript = ''
|
|
from pprint import pprint
|
|
|
|
machine.wait_for_unit("multi-user.target")
|
|
|
|
with subtest("Run nixos-facter and verify it produces valid JSON"):
|
|
import json
|
|
# Run nixos-facter and check it produces valid output
|
|
output = machine.succeed("nixos-facter")
|
|
# Parse JSON to verify it's valid
|
|
report = json.loads(output)
|
|
pprint(report)
|
|
assert "version" in report, "Expected version field in nixos-facter output"
|
|
assert "system" in report, "Expected system field in nixos-facter output"
|
|
assert report["version"] == 1, f"Expected version 1, got {report['version']}"
|
|
'';
|
|
}
|