Hi Shuo Li,
> I would like to express my gratitude for providing a valuable tool
> like Thrift.
Appreciated, but Apache Thrift is (as the name indicates) an ASF project
and as such FOSS, built from many, many contributions from contributors
all over the world. Thank Facebook if you will, the ASF and all those
people spending their time and efforts making Thrift better. I
personally have much less to do with that as you might think.
> During my current study, I have encountered some confusion regarding
> "cross testing." Particularly, when using Python 3, it seems that
> only the ThriftTest.thrift test case is executed.
That is the main cross test file, correct. The idea of the cross test is
to make sure that implementations are interoperable between languages,
which is one of the core features of Apache Thrift. Hence, a commonly
implemented test suite is required, and this is the IDL file for it.
> It appears that
> this test employs a client alongside assert statements for testing,
> and the test case's return_code seems fixed. However, I have noticed
> a minor inconsistency between this approach and the description
> outlined in the README file at
> https://github.com/apache/thrift/tree/master/test.
It would help us to help you if you could also mention, what these
inconcistencies were. It is rather hard to give any answer at all if one
doesn't even know the question.
> I am seeking clarification on whether I may have overlooked crucial
> information or if there might be a misunderstanding on my part that
> is causing this disparity. I am keen to understand how to properly
> conduct cross testing. I have followed the instructions in the
> /test/readme tutorial, but unfortunately, all the test cases are
> failing.
You have any error messages at hand? Test logs? Anything like that?
> I am particularly interested in comprehending the workings of the
> "cross test." Therefore, I would greatly appreciate any guidance or
> clarification you can provide to help me gain a better understanding
> of the Thrift cross testing process.
The idea is to have a client and a server for each language we support,
all of them implementing the same IDL and returning a well defined set
of responses. In theory, the test script runs every possible combination
of client, server, transport and protocol. In practice, there are a few
limitations to that, but that's the general idea.
If there is any specific question to it, we're keen to help.
Have fun,
JensG
PS: I redirected the conversation to the official channels. Direct
emails to people are usually undesirable in FOSS projects.