0
0
Fork 0
mirror of https://github.com/NixOS/nixpkgs.git synced 2025-07-13 21:50:33 +03:00

nixos/tests/mailhog: modify test to use system sendmail.

change the test to test the `services.mailhog.setSendmail` option. This
will also test the STMP connection as well.
This commit is contained in:
RTUnreal 2024-08-28 15:28:55 +02:00
parent 5e83e20cb7
commit c6053a54bb

View file

@ -1,11 +1,9 @@
import ./make-test-python.nix ({lib, ...}: {
name = "mailhog";
meta.maintainers = with lib.maintainers; [ jojosch ];
meta.maintainers = with lib.maintainers; [jojosch RTUnreal];
nodes.machine = {pkgs, ...}: {
services.mailhog.enable = true;
environment.systemPackages = with pkgs; [ swaks ];
};
testScript = ''
@ -14,11 +12,11 @@ import ./make-test-python.nix ({ lib, ... }: {
machine.wait_for_unit("mailhog.service")
machine.wait_for_open_port(1025)
machine.wait_for_open_port(8025)
machine.succeed(
'echo "this is the body of the email" | swaks --to root@example.org --body - --server localhost:1025'
)
assert "this is the body of the email" in machine.succeed(
# Test sendmail wrapper (this uses smtp, which tests the connection)
machine.succeed('printf "To: root@example.com\r\n\r\nthis is the body of the email" | sendmail -t -i -f sender@example.com')
res = machine.succeed(
"curl --fail http://localhost:8025/api/v2/messages"
)
assert all(msg in res for msg in ["this is the body of the email", "sender@example.com", "root@example.com"])
'';
})