[Dart] Looking for XML spec on Dart-client-to-server comm
Miller, James V (GE, Research)
millerjv at crd.ge.com
Wed Feb 22 10:53:14 EST 2006
In the Dart2 checkout, there are a few example XML files under the ResultData
directory. These are Dart Classic XML files.
You can look at the DartClient.java or the CTest code to see how to construct
the XML-RPC message that wraps one of these files.
As Scott mentioned, you can look at the Digester rules to see how the
Dart Classic XML is parsed. These rules are under Source/dart/Resources/Server/TestProcessorRules.xml
This file handles all the XML parsing of submissions: Dart Classic, Dart 2, Cruise Control, etc.
It looks like the Dart Classic parsing starts around line 256. The Dart Classic
pattern values of the root nodes are: "Update", "Site", "Testing", "Coverage", "CoverageLog",
"DynamicAnalysis" and "Configure". (Like I said, the various Dart Classic XML files were
not very uniform).
If I had to guess, the Dart 2 XML parsing starts at line 236 with the pattern value
of the root node of "DartSubmission". To produce Dart 2 XML files, you probably need
to understand the naming conventions employed internally for tests (Build error/warnings
show as tests under .Build.Build, regular runtime tests show up under .Test, etc.). We'll
need to provide you with a document on these conventions.
Jim
-----Original Message-----
From: Matt England [mailto:mengland at mengland.net]
Sent: Wednesday, February 22, 2006 10:24 AM
To: Miller, James V (GE, Research)
Cc: Matthew England; cmake at cmake.org; dart at public.kitware.com
Subject: RE: [Dart] Looking for XML spec on Dart-client-to-server comm
At 2/22/2006 09:16 AM, Miller, James V \(GE, Research\) wrote:
>Dart2 accepts the Dart Classic XML wrapped in an XML-RPC message. Dart2
>also uses an XML format
>for its data archive and reconstitution. In the long run, you will
>probably want to use that
>XML format since it is more consistent.
Sounds good, and thanks for the quick response.
>I'll have Dan document that XML format.
Ok, that would be great for the longer-term (ie, beyond this week or month).
Also, for quick-time-to implementation, I was looking to get just a minimal
set of the DTD for my prototype and feasibility study on this.
One route I'm considering to do this: Does ctest use the Dart2 DTD (I hope
I'm not mangling the concept/name/syntax)? If so, I was hoping I could
peek at the ctest code somewhere, learn a few pointers, and then build and
send of a few simple "test-case messages" to a Dart2 server just to see if
I can get a client working ok (and then I can start forming the structure
for a reusable C++ library for my internal project).
I'm also curious: how did the ctest folks learn to speak Dart2 DTD when
ctest originally started? Was it all an oral conversation? Maybe there's
some artifacts/docs used in that process that I might be able to borrow,
even if they are informal/messy? I'd even take hand-written notes if
you're willing to send them to me (eg, via page scan or something).
-Matt
More information about the Dart
mailing list