Passed
Push — main ( 733392...9d7d1d )
by Jace
01:01
created

slackoff.script   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 23
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
wmc 4
eloc 17
dl 0
loc 23
rs 10
c 0
b 0
f 0

1 Function

Rating   Name   Duplication   Size   Complexity  
A call() 0 16 4
1
from pathlib import Path
2
3
import applescript
4
import log
5
6
7
def call(path: Path, signature: str, *, show_error: bool = True) -> bool:
8
    functions = path.read_text("utf-8")
9
10
    log.debug(f"Calling AppleScript: {signature}")
11
    result = applescript.run(functions + "\n\n" + signature)
12
13
    log.debug(f"AppleScript code: {result.code}")
14
    if result.out:
15
        log.debug(f"AppleScript output: {result.out}")
16
    if result.err:
17
        log.debug(f"AppleScript error: {result.err}")
18
        if show_error:
19
            message = result.err.split("error:")[-1].strip()
20
            log.error(message)
21
22
    return result.code == 0 and "missing value" not in result.out
23