I am a huge fan of the lihaoyi SourceCode library. One can get rid of all the redundancy in Junit tests for TDML for example and have
@Test test_my_tdml_test_name(): Unit = runTest() and that runTest() can use the SourceCode library to reliably get the method name which can then be converted into the name of the test to search for in the TDML file. A quick few lines of code, and you generate the entire Junit file from the TDML file, allowing you to still run the tests like JUnit, but nothing is there to maintain code wise. I've done this for DFDL schema projects I work on. I've not introduced it into the Daffodil code base, but we should. -mikeb On Mon, Jun 12, 2023 at 9:53 AM Interrante, John A (GE Aerospace, US) < [email protected]> wrote: > Hi devs, > > I'm going on vacation tomorrow for 1 month. Fellow committers, please > step up to review and approve more pull requests than you usually do since > I may not be able to review Apache Daffodil pull requests from > contributors, Dependabot, and Scala Stewart for days (if at all). > > I'll end with an article from today's Scala Times newsletter on > com-lihaoyi libraries' design philosophy (executable pseudocode that's > easy, boring, and fast). We use os-lib in Daffodil already, BTW. It's > interesting reading. > > John > > com.lihaoyi Scala: Executable Pseudocode that's Easy, Boring, and Fast< > http://www.lihaoyi.com/post/comlihaoyiScalaExecutablePseudocodethatsEasyBoringandFast.html > > > > This blog post will explore how the Scala libraries from the com.lihaoyi > ecosystem allows the use of Scala as Executable Pseudocode, due to their > unique design philosophy that stands out amongst the rest of the Scala > ecosystem. > Li Haoyi (@li_haoyi) >
