This is driving me a little batty. I have a package on the package server, 
and the package server shows that it is failing some tests[1].

Here is the first test that fails:

FAILURE
name:       check-equal?
location:   dust.rkt:101:2
actual:
  '(div (div ((type "text"))
     "Judy's friend \"George\""
     (div "Judy's friend \"George\"")))
expected:
  '(div (div ((type "text"))
     "Judy%amp%apos;s friend %amp%quot;George%amp%quot;"
     (div "Judy's friend \"George\"")))

The check in question can be seen in dust.rkt on the Github repo [2]. 

Here’s the weird part. This check does not fail on my local machine (Racket 
8.2 CS on Mac OS 11.6). Well…not true! It *usually* doesn’t fail on my 
computer BUT sometimes checks in my tests.rkt which are dependent on this 
one will start failing. When that happens, all I need to do is re-save 
dust.rkt with no changes (to invalidate the compile cache) and re-run 
tests.rkt and the checks all pass again.

Of what known gotcha have I run afoul here? Or is it an unknown gotcha?

The function which is the subject of the test is not complicated:

;; Recursively pre-escape any string entities in an x-expression that
;; are direct children of an element whose ‘type’ attribute is “text”
(define (pre-escape x)
  (cond 
    [(and (txexpr? x) (eq? "text" (attr-ref x 'type #f)))
     (txexpr
      (car x)
      (get-attrs x)
      (map (λ (c) (if (string? c) (pre-escape-entities c) (pre-escape c))) 
(get-elements x)))]
    [(txexpr? x) (txexpr (car x) (get-attrs x) (map pre-escape 
(get-elements x)))]
    [else x]))

[1]: https://pkg-build.racket-lang.org/server/built/test-fail/splitflap-lib.txt
[2]: 
https://github.com/otherjoel/splitflap/blob/11ddfebb96d13b4905d428939ba3bd9bd39e1caa/splitflap-lib/private/dust.rkt#L101-L102

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/10b7621b-c366-4c78-ac86-f011d46a954fn%40googlegroups.com.

Reply via email to