On Tuesday, June 13, 2023 at 11:12:21 AM UTC-7 Tobias Diez wrote: Maybe I'm misunderstanding the purpose of the modularized doctests. Can someone explain me what they should test and what not?
As it says in https://sagemath-tobias.netlify.app/developer/packaging_sage_library.html#testing-distribution-packages: - Modularized distributions must be testable separately! - But we want to keep integration testing with other portions of Sage too! My thought was that when you declare a new module, you run the doctests of that module. They usually break for two reasons: a) some real dependency was not declared for that module - in this case, add the dependency and run the tests again. b) some doctests require a library that is not a dependency of the original module - in this case, add an optional tag to the failing doctest (current solution) My proposal would be in b) to add it the offending import to a whitelist ("test dependency of module xyz") and then all doctests for module xyz are ignoring import errors for these whitelisted dependencies. So in short, instead of annotating each doctest you annotate the module. After you whitelist an import from *M* because there is some valid doctest that uses *M* for integration-testing purposes (for example, by testing basic linear algebra functionality by running it on an element of an algebra defined in *M*), the modularized distribution is no longer guarded by its testsuite against modularization regressions that involve the whitelisted module. -- You received this message because you are subscribed to the Google Groups "sage-devel" 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/sage-devel/61dcfd5a-1034-4dfb-9fc4-c0443b0d294bn%40googlegroups.com.
