Thanks for the feedback. I can verify that the `:process-shim false` option works around the problem. I’m following up with the doo developer and have proposed a patch (https://github.com/bensu/doo/pull/141).
Cal > On Jul 30, 2017, at 20:31, David Nolen <dnolen.li...@gmail.com> wrote: > > The shim is intentionally present regardless of target. You can disable this > behavior with `:process-shim false`. > > If there's a more robust way for doo to determine the environment that's > probably a good idea too. > > David > > On Sun, Jul 30, 2017 at 1:06 PM, Charles Loomis <c...@sixsq.com> wrote: > I’ve encountered a problem when running unit tests with doo (phantomjs) and > the 1.9.854 release. > > With the new release, the problem is that doo always fails _after_ running > the defined tests with: > > WARNING: doo's init function was not set > #object[TypeError TypeError: undefined is not an object > (evaluating 'process_exit.call')] > TypeError: undefined is not an object (evaluating 'process_exit.call’) > > This is caused by doo not finding the correct exit function. > > To distinguish between browser/nodejs targets, doo checks for the existence > of js/process. If it exists, it assumes that nodejs is being used and tries > to extract the exit function from from the js/process object. Otherwise it > uses the *exit-fn* dynamic variable. This logic works as expected in 1.9.671. > > In 1.9.854, a shim for the nodejs process library was added > (src/main/cljs/process/env.cljs). This creates a js/process object which > looks like: > > { > "env": { > "NODE_ENV": "development" > } > } > > even when nodejs is not being targeted. This causes the doo logic for > looking up the exit function to fail. > > It looks like either: > > 1) doo needs to be updated to use a more precise test when targeting nodejs > or > 2) clojurescript should define the js/process shim only when nodejs is > targeted > > I’d like some feedback on this to understand where to follow up with this > issue. > > > Cal > > -- > Note that posts from new members are moderated - please be patient with your > first post. > --- > You received this message because you are subscribed to the Google Groups > "ClojureScript" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to clojurescript+unsubscr...@googlegroups.com. > To post to this group, send email to clojurescript@googlegroups.com. > Visit this group at https://groups.google.com/group/clojurescript. > > > -- > Note that posts from new members are moderated - please be patient with your > first post. > --- > You received this message because you are subscribed to the Google Groups > "ClojureScript" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to clojurescript+unsubscr...@googlegroups.com. > To post to this group, send email to clojurescript@googlegroups.com. > Visit this group at https://groups.google.com/group/clojurescript. -- Note that posts from new members are moderated - please be patient with your first post. --- You received this message because you are subscribed to the Google Groups "ClojureScript" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojurescript+unsubscr...@googlegroups.com. To post to this group, send email to clojurescript@googlegroups.com. Visit this group at https://groups.google.com/group/clojurescript.