Hi Daniel, > It also doesn't seem all that appealing that SimpleLruInit can > return false on successful function invocation, it makes for a confusing API.
Agree. I think using an additional `bool *found` argument would be less confusing. Noah, Pavel, >> The default place for this kind of test is regress.c, with plain "make check" >> calling the regress.c function. src/test/modules is for things requiring an >> extension module or otherwise unable to run through regress.c. > > +1 for placement c functions into regress.c if it's possible for the aim of simplification. Thanks for your feedback. I'm OK with placing the tests to regress.c, but I would like to double-check if this would be a right place for them. I'm reading src/test/modules/README and it says: """ src/test/modules contains PostgreSQL extensions that are primarily or entirely intended for testing PostgreSQL and/or to serve as example code. [...] If you're adding new hooks or other functionality exposed as C-level API this is where to add the tests for it. """ SLRU looks like a quite general-purpose container. I can imagine how someone may decide to use it in an extension. Wouldn't it be more logical to place it near: src/test/modules/test_rbtree src/test/modules/test_shm_mq ... etc? Again, I don't have a strong opinion here. If you insist, I will place the tests to regress.c. -- Best regards, Aleksander Alekseev