at 25.11-pre 3.0 kB view raw
1{ lib, ... }: 2let 3 exampleText = "Lorem ipsum dolor sit amet"; 4in 5{ 6 name = "lomiri-docviewer-app-standalone"; 7 meta.maintainers = lib.teams.lomiri.members; 8 9 nodes.machine = 10 { config, pkgs, ... }: 11 { 12 imports = [ ./common/x11.nix ]; 13 14 services.xserver.enable = true; 15 16 environment = { 17 etc."docviewer-sampletext.txt".text = exampleText; 18 systemPackages = 19 with pkgs; 20 [ 21 libreoffice # txt -> odf to test LibreOfficeKit integration 22 ] 23 ++ (with pkgs.lomiri; [ 24 suru-icon-theme 25 lomiri-docviewer-app 26 ]); 27 variables = { 28 UITK_ICON_THEME = "suru"; 29 }; 30 }; 31 32 i18n.supportedLocales = [ "all" ]; 33 34 fonts = { 35 packages = with pkgs; [ 36 # Intended font & helps with OCR 37 ubuntu-classic 38 ]; 39 }; 40 }; 41 42 enableOCR = true; 43 44 testScript = '' 45 machine.wait_for_x() 46 47 with subtest("lomiri docviewer launches"): 48 machine.succeed("lomiri-docviewer-app >&2 &") 49 machine.sleep(10) 50 machine.send_key("alt-f10") 51 machine.sleep(5) 52 machine.wait_for_text("No documents") 53 machine.screenshot("lomiri-docviewer_open") 54 55 machine.succeed("pkill -f lomiri-docviewer-app") 56 57 # Setup different document types 58 machine.succeed("soffice --convert-to odt --outdir /root/ /etc/docviewer-sampletext.txt") 59 machine.succeed("soffice --convert-to pdf --outdir /root/ /etc/docviewer-sampletext.txt") 60 61 with subtest("lomiri docviewer txt works"): 62 machine.succeed("lomiri-docviewer-app /etc/docviewer-sampletext.txt >&2 &") 63 machine.sleep(10) 64 machine.send_key("alt-f10") 65 machine.sleep(5) 66 machine.wait_for_text("${exampleText}") 67 machine.screenshot("lomiri-docviewer_txt") 68 69 machine.succeed("pkill -f lomiri-docviewer-app") 70 71 with subtest("lomiri docviewer odt works"): 72 machine.succeed("lomiri-docviewer-app /root/docviewer-sampletext.odt >&2 &") 73 machine.sleep(10) 74 machine.send_key("alt-f10") 75 machine.sleep(5) 76 machine.wait_for_text("${exampleText}") 77 machine.screenshot("lomiri-docviewer_odt") 78 79 machine.succeed("pkill -f lomiri-docviewer-app") 80 81 with subtest("lomiri docviewer pdf works"): 82 machine.succeed("lomiri-docviewer-app /root/docviewer-sampletext.pdf >&2 &") 83 machine.sleep(10) 84 machine.send_key("alt-f10") 85 machine.sleep(5) 86 machine.wait_for_text("${exampleText}") 87 machine.screenshot("lomiri-docviewer_pdf") 88 89 machine.succeed("pkill -f lomiri-docviewer-app") 90 91 with subtest("lomiri docviewer localisation works"): 92 machine.succeed("env LANG=de_DE.UTF-8 lomiri-docviewer-app >&2 &") 93 machine.sleep(10) 94 machine.send_key("alt-f10") 95 machine.sleep(5) 96 machine.wait_for_text("Keine Dokumente") 97 machine.screenshot("lomiri-docviewer_localised") 98 ''; 99}