On Dec 31, 2013, at 1:53 PM, James Peach <jpe...@apache.org> wrote: > On Dec 31, 2013, at 8:44 AM, Alan D. Cabrera <l...@toolazydogs.com> wrote: > >> I'm looking for an example of an ATS plugin that has extensive unit tests. > > There are none. > >> I'm having problems linking my Boost unit tests against the plugin library >> for obvious reasons, it's a module not a shared library. >> >> I tried setting up an internal static library that the tests would link >> against but can't seem to get the object files directly included into the >> ATS plugin. > > There's no reason, in principle, that this would not work. For many plugins > it would be reasonable to separate core functions from the Traffic Server > bindings, and use a TDD approach for developing the core.
Yes, but Autotools is getting in the way. I can't seem to get those core functions, which are in the static library that's shared by the plugin and tests, into the ATS plugin module. This is the Autotools "example" that I'm looking for. The dearth of specific replies tells me that everyone likely does integration testing only. That, or everyone is getting ready for the new year's eve festivities. ;) > For the remainder of the tests, I'd recommend an integration testing > approach. There is a very simple integration test harness in the ci/tsqa > directory on master. You can use that to set up an independent ATS > installation and drive integration tests through it. I'll take a look at that. > Finally, the core has the concept of "action tags", which are useful for > testing, but not exposed through the API. Action tags would let you test > corner cases, by setting tags to force particular APIs to fail, for example. Interesting. Where can I see examples of this form of testing? Regards, Alan