Unverified Commit 5917e244 authored by r-vdp's avatar r-vdp
Browse files

atuin: switch to runTest to run the VM test

parent 39236257
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -140,7 +140,7 @@ in {
  atd = handleTest ./atd.nix {};
  atop = handleTest ./atop.nix {};
  atticd = runTest ./atticd.nix;
  atuin = handleTest ./atuin.nix {};
  atuin = runTest ./atuin.nix;
  audiobookshelf = handleTest ./audiobookshelf.nix {};
  auth-mysql = handleTest ./auth-mysql.nix {};
  authelia = handleTest ./authelia.nix {};
+44 −35
Original line number Diff line number Diff line
import ./make-test-python.nix (
  { pkgs, lib, ... }:
{ lib, ... }:

let
  testPort = 8888;
@@ -11,6 +10,14 @@ import ./make-test-python.nix (
  name = "atuin";
  meta.maintainers = with lib.maintainers; [ devusb ];

  defaults =
    { pkgs, ... }:
    {
      environment.systemPackages = [
        pkgs.atuin
      ];
    };

  nodes = {
    server =
      { ... }:
@@ -30,7 +37,10 @@ import ./make-test-python.nix (

  };

    testScript = with pkgs; ''
  testScript =
    { nodes, ... }:
    #python
    ''
      start_all()

      # wait for atuin server startup
@@ -42,25 +52,24 @@ import ./make-test-python.nix (
      server.execute("echo 'sync_address = \"http://localhost:${toString testPort}\"' > ~/.config/atuin/config.toml")

      # register with atuin server on server node
      server.succeed("${atuin}/bin/atuin register -u ${testUser} -p ${testPass} -e ${testEmail}")
      _, key = server.execute("${atuin}/bin/atuin key")
      server.succeed("atuin register -u ${testUser} -p ${testPass} -e ${testEmail}")
      _, key = server.execute("atuin key")

      # store test record in atuin server and sync
      server.succeed("ATUIN_SESSION=$(${atuin}/bin/atuin uuid) ${atuin}/bin/atuin history start 'shazbot'")
      server.succeed("ATUIN_SESSION=$(${atuin}/bin/atuin uuid) ${atuin}/bin/atuin sync")
      server.succeed("ATUIN_SESSION=$(atuin uuid) atuin history start 'shazbot'")
      server.succeed("ATUIN_SESSION=$(atuin uuid) atuin sync")

      # configure atuin client on client node
      client.execute("mkdir -p ~/.config/atuin")
      client.execute("echo 'sync_address = \"http://server:${toString testPort}\"' > ~/.config/atuin/config.toml")

      # log in to atuin server on client node
      client.succeed(f"${atuin}/bin/atuin login -u ${testUser} -p ${testPass} -k \"{key}\"")
      client.succeed(f"atuin login -u ${testUser} -p ${testPass} -k \"{key}\"")

      # pull records from atuin server
      client.succeed("${atuin}/bin/atuin sync -f")
      client.succeed("atuin sync -f")

      # check for test record
      client.succeed("ATUIN_SESSION=$(${atuin}/bin/atuin uuid) ${atuin}/bin/atuin history list | grep shazbot")
      client.succeed("ATUIN_SESSION=$(atuin uuid) atuin history list | grep shazbot")
    '';
}
)