> On June 14, 2016, 12:26 a.m., Till Toenshoff wrote:
> > Overall, I am not convinced this is reaching the goals we have just yet...
> > 
> > Let me try to specify our goals;
> > (a) we want to enable mesos-modules (tests) to reuse our test helpers/utils 
> > - things like `cluster.cpp` etc. 
> > (b) we want to make sure that everything used within the modules is 
> > actually publicly exposed to prevent creating dependencies on internal 
> > stuff that is not going through deprecations
> > (c) we try to be least disruptive on mesos
> > 
> > a. reached
> > b. not reached as we do not expose the headers - a module test using that 
> > library will still have to tap into the non public mesos folders to get to 
> > the needed headers
> > c. reached - this patch only changes a makefile
> > 
> > So (b) is the culprit and solving it properly will likely require us to do 
> > some serious refactoring of those headers (e.g. `src/tests/mesos.hpp`) to 
> > have a clean cut between stuff we want to expose and things we can keep 
> > internal to mesos.
> > 
> > Having public test helpers available for module developers is great and 
> > very much needed - but I also believe that it might need much more work.

I would suggest we create a JIRA for a refactoring of the headers for the 
test-helpers which would make sure that we have a minimal, stable and clean cut 
of what we need vs. what we want to keep internal to Mesos. Sounds good?


- Till


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47374/#review137245
-----------------------------------------------------------


On June 11, 2016, 12:03 a.m., Joseph Wu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/47374/
> -----------------------------------------------------------
> 
> (Updated June 11, 2016, 12:03 a.m.)
> 
> 
> Review request for mesos, Adam B, Artem Harutyunyan, Jie Yu, Kapil Arya, Jan 
> Schlicht, and Till Toenshoff.
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> This gives external projects easier access to the test helpers used in
> mesos tests.  
> 
> For example, a module writer may want to write a test like 
> `src/tests/oversubscription_tests.cpp`.  To build and link against 
> this library, the module writer would mimic the build flags for tests:
> ```
> # Main test file is taken directly from Mesos.
> my_module_tests_SOURCES = \
>   $(MESOS)/src/tests/main.cpp
> 
> my_module_tests_CPPFLAGS = \
>   -I$(GMOCK)/include       \
>   -I$(GTEST)/include       \
>   -I$(MESOS)/include/mesos \
>   -I$(ZOOKEEPER)/include   \
>   -I$(ZOOKEEPER)/generated \
>   $(AM_CPPFLAGS)
>   
> my_module_tests_LDADD = \
>   $(MESOS)/3rdparty/.libs/libgmock.la \
>   $(MESOS)/src/.libs/libmesos.la      \
>   $(MESOS)/src/.libs/libmesos_tests.la
> ```
> 
> 
> Diffs
> -----
> 
>   src/Makefile.am ce5245883f3d2661812272702c0d2060513b6d88 
> 
> Diff: https://reviews.apache.org/r/47374/diff/
> 
> 
> Testing
> -------
> 
> make check on OSX, CentOS 7, Ubuntu 14
> 
> 
> Thanks,
> 
> Joseph Wu
> 
>

Reply via email to