emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 8dcb19f 4/4: Add a unit test testing interaction between threads


From: Eli Zaretskii
Subject: master 8dcb19f 4/4: Add a unit test testing interaction between threads and processes.
Date: Sat, 23 Jan 2021 21:49:18 +0200

This additional test fails on MS-Windows:

  Test process-tests/multiple-threads-waiting backtrace:
    signal(ert-test-failed (((should (eql (process-exit-status process)
    ert-fail(((should (eql (process-exit-status process) 0)) :form (eql
    (if (unwind-protect (setq value-344 (apply fn-342 args-343)) (setq f
    (let (form-description-346) (if (unwind-protect (setq value-344 (app
    (let ((value-344 'ert-form-evaluation-aborted-345)) (let (form-descr
    (let* ((fn-342 #'eql) (args-343 (condition-case err (let ((signal-ho
    (while (and (consp --cl-var--) (consp --cl-var--)) (progn (setq proc
    (let ((--cl-var-- processes) (process nil) (--cl-var-- threads) (thr
    (let ((threads nil) (cat (executable-find "cat"))) (let ((value-335
    (unwind-protect (let ((threads nil) (cat (executable-find "cat"))) (
    (let ((processes nil)) (unwind-protect (let ((threads nil) (cat (exe
    (progn (let ((processes nil)) (unwind-protect (let ((threads nil) (c
    (unwind-protect (progn (let ((processes nil)) (unwind-protect (let (
    (let* ((-with-timeout-timer- (run-with-timer 60 nil #'(lambda nil (t
    (catch 'timeout (let* ((-with-timeout-timer- (run-with-timer 60 nil
    (let ((-with-timeout-value- (catch 'timeout (let* ((-with-timeout-ti
    (closure (t) nil (let* ((fn-330 #'fboundp) (args-331 (condition-case
    ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
    ert-run-test(#s(ert-test :name process-tests/multiple-threads-waitin
    ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
    ert-run-tests((not (tag :unstable)) #f(compiled-function (event-type
    ert-run-tests-batch((not (tag :unstable)))
    ert-run-tests-batch-and-exit((not (tag :unstable)))
    eval((ert-run-tests-batch-and-exit '(not (tag :unstable))) t)
    command-line-1(("-L" ";." "-l" "ert" "-l" "src/process-tests.el" "--
    command-line()
    normal-top-level()
  Test process-tests/multiple-threads-waiting condition:
      (ert-test-failed
       ((should
         (eql
          (process-exit-status process)
          0))
        :form
        (eql 1 0)
        :value nil))
     FAILED  21/26  process-tests/multiple-threads-waiting (8.859375 sec)

I did verify that process-send-eof does cause 'cat' to exit, so the
problem is likely in some issue related to threads and what the test
assumes regarding what should happen here.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]