libredwg
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [libredwg] Testing suite samples


From: Rodrigo Rodrigues da Silva
Subject: Re: [libredwg] Testing suite samples
Date: Wed, 20 Jan 2010 02:39:15 -0200
User-agent: Thunderbird 2.0.0.23 (X11/20090817)

Guruprasad Rane wrote:
I propose that we make DWG files using AUTOCAD with native DWG elements
like Line.dwg, polyline.dwg, circle.dwg, and so on. If this approach is
correct, I can start creating these files.
I agree. I'd say a few things:

* Files must be released to the public domain (preferably created by ourselves or third party if already public domain) * Fileset should cover all versions supported by LibreDWG: R13, R14, R2000 (R15), R2004 (R16), R2007 (R17). If possible, R2010 (R18), since we might support it in the future. * Increasing levels of complexity (files within each level may also have different levels of complexity, regarding the number of entities or file size): ** Basic: mandatory entities and objects, that every (2D?) converter would need ** Intermediate: more sophisticated, but still useful entities and objects (maybe put 3D entities here? or create a separate level?) ** Advanced: all remaining objects and entities (at least the documented/default ones)
** Unsupported: objects not supported by LibreDWG.

The test suite result would be a cube, consisting of:
x axis: complexity levels; y axis: version ; z axis: % of files that passed the text

or:
x: file; y: version; z: entities and objects covered by the test (% spec coverage)

We should ideally have a summary telling us if one entity or object has or has not been tested (I can't say if we've ever decoded a IDBUFFER object) throughout the samples.

What "passed" means? Initially, if load_dwg (or any other executable) doesn't segfault while parsing the file. We could have a fine grained error checking, though. We need to make sure (maybe that'll turn to be impossible) that our samples go through every possible path along the decoder code (many entity/decode objects have if's and switch's).

Before we start creating the files, we should distribute the DWG objects among the categories, and create files with those categories in mind.

I'll setup a LibreDWG/TestSuite wiki page with this proposal (and possilbly other stuff discussed along this thread) if you agree with it.
Regards
Guruprasad

On Tue, 2010-01-19 at 17:00 -0200, Rodrigo Rodrigues da Silva wrote:
It just came to my mind that maybe we're taking the wrong approach building these samples. My point is: a dwg file created by a converter and from an SVG file will be limited to the subset of entities and objects supported by the converter. Besides, an SVG file carries less information than a DWG file (we'll never get any DIMENSION, MESH or 3DSOLID entities or an OLE2_CONTROL object from a SVG2DWG converter).

That doesn't mean they're not useful, we can still test most of the common 2D entities and run performance tests.

I've got a couple of R2004 files that I can release to the public domain. Althoug, they are fairly simple and wouldn't cover all the objects and entities, not even common ones like dimensions.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]