summaryrefslogtreecommitdiffstats
path: root/nixos/tests/ipget.nix
blob: 3c1f26ed348a648b8126ebb45f8562ecb2a7d7a0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
{ lib, ... }:
{
  name = "ipget";
  meta.maintainers = with lib.maintainers; [
    Luflosi
  ];

  nodes.machine =
    { config, pkgs, ... }:
    {
      services.kubo.enable = true;
      environment.systemPackages = with pkgs; [ ipget ];
    };

  testScript = ''
    start_all()

    with subtest("Add file to IPFS"):
        ipfs_hash = machine.succeed(
            "echo -n fnord | ipfs add --quieter"
        )

    with subtest("Download the file with ipget"):
        machine.succeed(f"ipget --output file.txt /ipfs/{ipfs_hash}")
        contents = machine.succeed("cat file.txt")
        assert contents == "fnord", f"Unexpected file contents: {contents}"
  '';
}