22 lines
759 B
Racket
22 lines
759 B
Racket
#lang racket/base
|
|
|
|
(require rackunit
|
|
racket-tray)
|
|
|
|
;; The public module must be loadable on every package build host, including a
|
|
;; Linux host that does not have the optional AppIndicator runtime installed.
|
|
(check-true (procedure? mk-tray))
|
|
(check-true (procedure? tray-close))
|
|
(check-true (procedure? tray-set-icon!))
|
|
(check-true (procedure? tray-set-menu!))
|
|
|
|
;; Keep the public signature testable without opening a GUI window or requiring
|
|
;; any native tray implementation to be available on the build host.
|
|
(check-true (procedure-arity-includes? mk-tray 3))
|
|
|
|
(define-values (required-keywords allowed-keywords)
|
|
(procedure-keywords mk-tray))
|
|
|
|
(check-equal? required-keywords '())
|
|
(check-not-false (member '#:hide-on-minimize? allowed-keywords))
|