<div dir="ltr">I think that&#39;s a very good point Radim. But on the other hand I think we may treat it as an implementation detail. The TCK must run without Infinispan server. <div><br></div><div>I also believe it would be beneficial to define as least 2-3 levels of support, e.g. basic (only basic operations, no consistent hash support), advanced (all features). This way we could validate some more exotic clients such as Go (<a href="https://github.com/ugol/infinispan-go">https://github.com/ugol/infinispan-go</a>).</div><div><br></div><div>And in my opinion, a final version of this document go to infinispan design repository: <a href="https://github.com/infinispan/infinispan-designs">https://github.com/infinispan/infinispan-designs</a></div><div><br></div><div>Apart from that, that&#39;s huge effort and really great job!</div></div><br><div class="gmail_quote"><div dir="ltr">On Tue, Apr 11, 2017 at 5:05 PM Radim Vansa &lt;<a href="mailto:rvansa@redhat.com">rvansa@redhat.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Since these tests use real server(s), many of them test not only the<br>
client behaviour (generating correct commands according to the<br>
protocol), but server, too. While this is practical (we need to test<br>
server somehow, too), there&#39;s nothing all the tests across languages<br>
will have physically in common and all comparison is prone to human error.<br>
<br>
If we want to test various implementations of the client, maybe it would<br>
make sense to give the clients a fake server that will have just a<br>
scenario of expected commands to receive and pre-defined responses. We<br>
could use audit log to generate such scenario based on the actual Java<br>
tests.<br>
<br>
But then we&#39;d have to test the actual behaviour on server, and we&#39;d need<br>
a way to issue the commands.<br>
<br>
Just my 2c<br>
<br>
Radim<br>
<br>
On 04/11/2017 02:33 PM, Martin Gencur wrote:<br>
&gt; Hello all,<br>
&gt; we have been working on <a href="https://issues.jboss.org/browse/ISPN-7120" rel="noreferrer" target="_blank">https://issues.jboss.org/browse/ISPN-7120</a>.<br>
&gt;<br>
&gt; Anna has finished the first step from the JIRA - collecting information<br>
&gt; about tests in the Java HotRod client test suite (including server<br>
&gt; integration tests) and it is now prepared for wider review.<br>
&gt;<br>
&gt; She created a spreadsheet [1]. The spread sheet includes for each Java<br>
&gt; test its name, the suggested target package in the TCK, whether to<br>
&gt; include it in the TCK or not, and some other notes. The suggested<br>
&gt; package also poses grouping for the tests (e.g. tck.query, tck.near,<br>
&gt; tck.xsite, ...)<br>
&gt;<br>
&gt; Let me add that right now the goal is not to create a true TCK [2]. The<br>
&gt; goal is to make sure that all implementations of the HotRod protocol<br>
&gt; have sufficient test coverage and possibly the same server side of the<br>
&gt; client-server test (including the server version and configuration).<br>
&gt;<br>
&gt; What are the next step?<br>
&gt;<br>
&gt; * Please review the list (at least a quick look) and see if some of the<br>
&gt; tests which are NOT suggested for the TCK should be added or vice versa.<br>
&gt; * I suppose the next step would then be to check other implementations<br>
&gt; (C#, C++, NodeJS, ..) and identify tests which are missing there (there<br>
&gt; will surely be some).<br>
&gt; * Gradually implement the missing tests in the other implementations<br>
&gt;     Note: Here we should ensure that the server is configured in the same<br>
&gt; way for all implementations. One way to achieve this (thanks Anna for<br>
&gt; suggestion!) is to have a shell/batch scripts for CLI which would be<br>
&gt; executed before the tests. This can probably be done for all impls. and<br>
&gt; both UNIX/WINDOWS. I also realize that my PR for ISPN [3] becomes<br>
&gt; useless because it uses Creaper (Java) and we need a language-neutral<br>
&gt; solution for configuring the server.<br>
&gt;<br>
&gt; Some other notes:<br>
&gt; * there are some duplicated tests in hotrod-client and server<br>
&gt; integration test suites, in this case it probably makes sense to only<br>
&gt; include in the TCK the server integration test<br>
&gt; * tests from the hotrod-client module which are supposed to be part of<br>
&gt; the TCK should be copied to the server integration test suite one day<br>
&gt; (possibly later)<br>
&gt;<br>
&gt; Please let us know what you think.<br>
&gt;<br>
&gt; Thanks,<br>
&gt; Martin<br>
&gt;<br>
&gt;<br>
&gt; [1]<br>
&gt; <a href="https://docs.google.com/spreadsheets/d/1bZBBi5m4oLL4lBTZhdRbIC_EA0giQNDZWzFNPWrF5G4/edit#gid=0" rel="noreferrer" target="_blank">https://docs.google.com/spreadsheets/d/1bZBBi5m4oLL4lBTZhdRbIC_EA0giQNDZWzFNPWrF5G4/edit#gid=0</a><br>
&gt; [2] <a href="https://en.wikipedia.org/wiki/Technology_Compatibility_Kit" rel="noreferrer" target="_blank">https://en.wikipedia.org/wiki/Technology_Compatibility_Kit</a><br>
&gt; [3] <a href="https://github.com/infinispan/infinispan/pull/5012" rel="noreferrer" target="_blank">https://github.com/infinispan/infinispan/pull/5012</a><br>
&gt; _______________________________________________<br>
&gt; infinispan-dev mailing list<br>
&gt; <a href="mailto:infinispan-dev@lists.jboss.org" target="_blank">infinispan-dev@lists.jboss.org</a><br>
&gt; <a href="https://lists.jboss.org/mailman/listinfo/infinispan-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailman/listinfo/infinispan-dev</a><br>
<br>
<br>
--<br>
Radim Vansa &lt;<a href="mailto:rvansa@redhat.com" target="_blank">rvansa@redhat.com</a>&gt;<br>
JBoss Performance Team<br>
<br>
_______________________________________________<br>
infinispan-dev mailing list<br>
<a href="mailto:infinispan-dev@lists.jboss.org" target="_blank">infinispan-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/infinispan-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailman/listinfo/infinispan-dev</a><br>
</blockquote></div><div dir="ltr">-- <br></div><div data-smartmail="gmail_signature"><div dir="ltr"><p class="inbox-inbox-fullname-container" style="box-sizing:border-box;color:rgb(0,0,0);font-family:overpass,sans-serif;font-weight:bold;margin:0px;padding:0px;font-size:14px;text-transform:uppercase"><span class="inbox-inbox-firstname-container" style="box-sizing:border-box">SEBASTIAN</span><span class="inbox-inbox-Apple-converted-space"> </span><span class="inbox-inbox-lastname-container" style="box-sizing:border-box">ŁASKAWIEC</span></p><p class="inbox-inbox-position-container" style="box-sizing:border-box;color:rgb(0,0,0);font-family:overpass,sans-serif;font-size:10px;margin:0px 0px 4px;text-transform:uppercase"><span class="inbox-inbox-position" style="box-sizing:border-box">INFINISPAN DEVELOPER</span></p><p class="inbox-inbox-legal-container" style="box-sizing:border-box;font-family:overpass,sans-serif;margin:0px;font-size:10px;color:rgb(153,153,153)"><a class="inbox-inbox-redhat-anchor" href="https://www.redhat.com/" target="_blank" style="box-sizing:border-box;color:rgb(0,136,206);margin:0px;text-decoration:none">Red Hat<span class="inbox-inbox-Apple-converted-space"> </span><span style="box-sizing:border-box">EMEA</span></a></p><table border="0" style="box-sizing:border-box;color:rgb(0,0,0);font-family:overpass,sans-serif;font-size:medium"><tbody style="box-sizing:border-box"><tr style="box-sizing:border-box"><td width="100px" style="box-sizing:border-box"><a href="https://red.ht/sig" style="box-sizing:border-box"><img width="90" height="auto" style="box-sizing: border-box;" src="https://www.redhat.com/files/brand/email/sig-redhat.png"></a></td></tr></tbody></table></div></div>