38 lines
		
	
	
		
			833 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
		
		
			
		
	
	
			38 lines
		
	
	
		
			833 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
|   | import ./make-test.nix ({ pkgs, ...} : | ||
|  | 
 | ||
|  | { | ||
|  |   name = "signal-desktop"; | ||
|  |   meta = with pkgs.stdenv.lib.maintainers; { | ||
|  |     maintainers = [ flokli ]; | ||
|  |   }; | ||
|  | 
 | ||
|  |   machine = { ... }: | ||
|  | 
 | ||
|  |   { | ||
|  |     imports = [ | ||
|  |       ./common/user-account.nix | ||
|  |       ./common/x11.nix | ||
|  |     ]; | ||
|  | 
 | ||
|  |     services.xserver.enable = true; | ||
|  |     services.xserver.displayManager.auto.user = "alice"; | ||
|  |     environment.systemPackages = [ pkgs.signal-desktop ]; | ||
|  |   }; | ||
|  | 
 | ||
|  |   enableOCR = true; | ||
|  | 
 | ||
|  |   testScript = { nodes, ... }: let | ||
|  |     user = nodes.machine.config.users.users.alice; | ||
|  |   in ''
 | ||
|  |     startAll; | ||
|  |     $machine->waitForX; | ||
|  | 
 | ||
|  |     # start signal desktop | ||
|  |     $machine->execute("su - alice -c signal-desktop &"); | ||
|  | 
 | ||
|  |     # wait for the "Link your phone to Signal Desktop" message | ||
|  |     $machine->waitForText(qr/Link your phone to Signal Desktop/); | ||
|  |     $machine->screenshot("signal_desktop"); | ||
|  |   '';
 | ||
|  | }) |