Hi Ahmed,

Great to hear from you! Apologies for the long delayed reply, the e-mail
was directly archived and I didn't notice it until now.

I like the idea.

How would you like to proceed?
We are currently in GSoC 2020 application period and we will apply as
mentoring org. Would you like to participate with Shogun in 2020 as student
or even mentor?
We could make your generic testing with introspection idea a project
proposal, or part of one.

Cheers,
Fernando.

On Tue, 10 Dec 2019 at 18:44, Ahmed Essam via shogun-list <
shogun-list@shogun-toolbox.org> wrote:

> Hello all,
>
> Currently, there is no systematic testing of classes that does not require
> the manual enumeration of new sub-classes. An attempt to make a testing
> framework that can automatically test class families has been made in PR
> #4712 <https://github.com/shogun-toolbox/shogun/pull/4712>.
>
> I want to make progress towards a systematic framework for class testing
> with the following goals:
> 1. Provide a reflection-like metaprogramming method to enumerate the class
> hierarchy.
> 2. Use this generated information to create static typed tests. This
> differs from the previous PR in that: (a) we don't need to update class
> lists manually, and (b) provide a neat way to specialize tests given the
> used type.
>
> We can do this by extending the "class_list.py" script to generate the
> whole class hierarchy, and using a template language to answer type queries.
> Here is an example of what that would look like:
> IterativeMachine_unittest.cc
> <https://gist.github.com/theartful/5413ad7cf0889e4fd87f518a5b6ed869>.
>
> I have a working example locally that uses the exact same syntax. There is
> a shortcoming of this approach: the parsing is done by an ad-hoc python
> script. A possible solution is to use a tool to automate the parsing like
> jinja, which has been used before in 'clone_unittest.cc`.
>
> Since there are multiple ad-hoc python scripts that parse specific files,
> I think we can extend this proposal to other parts of the code base to
> unify template file generation.
>
> Thanks,
> Ahmed Essam.
>

Reply via email to