diff options
author | aanderse <aaron@fosslib.net> | 2019-02-22 08:10:02 -0500 |
---|---|---|
committer | zimbatm <zimbatm@zimbatm.com> | 2019-02-22 14:10:02 +0100 |
commit | e5405f9ae8b87c202a22438dd162defda1996a97 (patch) | |
tree | 1e449d0e15596582ca7930cb309471eaab23f5f5 /nixos/tests/beanstalkd.nix | |
parent | b6c82183be6c1118fd52220887722601ed86bd76 (diff) |
nixos/beanstalkd: new service for existing package (#55953)
Diffstat (limited to 'nixos/tests/beanstalkd.nix')
-rw-r--r-- | nixos/tests/beanstalkd.nix | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/nixos/tests/beanstalkd.nix b/nixos/tests/beanstalkd.nix new file mode 100644 index 000000000000..9b7ac111a57b --- /dev/null +++ b/nixos/tests/beanstalkd.nix @@ -0,0 +1,43 @@ +import ./make-test.nix ({ pkgs, lib, ... }: + +let + produce = pkgs.writeScript "produce.py" '' + #!${pkgs.python2.withPackages (p: [p.beanstalkc])}/bin/python + import beanstalkc + + queue = beanstalkc.Connection(host='localhost', port=11300, parse_yaml=False); + queue.put('this is a job') + queue.put('this is another job') + ''; + + consume = pkgs.writeScript "consume.py" '' + #!${pkgs.python2.withPackages (p: [p.beanstalkc])}/bin/python + import beanstalkc + + queue = beanstalkc.Connection(host='localhost', port=11300, parse_yaml=False); + + job = queue.reserve(timeout=0) + print job.body + job.delete() + ''; + +in +{ + name = "beanstalkd"; + meta.maintainers = [ lib.maintainers.aanderse ]; + + machine = + { ... }: + { services.beanstalkd.enable = true; + }; + + testScript = '' + startAll; + + $machine->waitForUnit('beanstalkd.service'); + + $machine->succeed("${produce}"); + $machine->succeed("${consume}") eq "this is a job\n" or die; + $machine->succeed("${consume}") eq "this is another job\n" or die; + ''; +}) |