Hi,
I'm attempting to organize tests in my package into subfolders/modules
instead of having them in a giant main.rkt test submodule, but am running
into some issues and was hoping for some advice on the best way to do it. I
think the primary issue is related to source compilation order in raco, but
am also curious how other people organize their tests.

I've moved all of the tests into a tests/ subfolder in the main project
tree. When I build the project using raco setup, it builds both the project
files as well as the tests contained in the tests/ folder. At this point,
if I run the tests as is, they result in an error. If instead I first
delete the compiled/ subfolder in the tests folder, the tests then work
fine.

I think the tests may be getting compiled against the version of the
compiled collection which is immediately replaced by a fresh compilation
during raco setup. This is the error I'm seeing when I run the tests:

default-load-handler: expected a `module' declaration, but found something
else
  file:
/Users/siddhartha/work/lisp/racket/relation/tests/compiled/algebraic-test_rkt.dep
  context...:
   default-load-handler
   standard-module-name-resolver
   module-path-index-resolve
   module-declared?

I could add a make target to clean the test compiled folder prior to
running tests, but it seemed like there must be a better way. So my main
questions are:

1. Is there a way to exclude certain folders (such as tests) in the raco
setup stage? For reference, the command I'm using is raco setup --no-docs
--tidy --pkgs relation.
2. Is this a good way to organize tests? Are there any standard recommended
ways?

Would appreciate any input,
-Sid

-- 
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 racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/CACQBWF%3D5iwYRCOgwEmwNSh27QzpfE1pjFqvzzB_1KNs3zgHX5g%40mail.gmail.com.

Reply via email to