{ config, lib, pkgs, ... }:

with lib;

{
  config = {
    systemd.user.services."test-service@" = {
      Unit = {
        Description = "A basic test service";
      };

      Service = {
        Environment = [ "VAR1=1" "VAR2=2" ];
        ExecStart = ''/some/exec/start/command --with-arguments "%i"'';
      };
    };

    nmt.script = ''
      serviceFile=home-files/.config/systemd/user/test-service@.service
      assertFileExists $serviceFile
      assertFileContent $serviceFile \
        ${builtins.toFile "services-expected.conf" ''
          [Service]
          Environment=VAR1=1
          Environment=VAR2=2
          ExecStart=/some/exec/start/command --with-arguments "%i"

          [Unit]
          Description=A basic test service
        ''}
    '';
  };
}