Improving catalog generation

Support multiple primary aircraft in a package, which has several
aircraft developers have requested. This adjusts the handling of
the variant-of and primary-set tags.

Additionally, this adds partial unit-test coverage for -set.xml
scanning and catalog XML generation. 

Run ./test_catalog to run unit-tests of the catalog generation.
This commit is contained in:
James Turner
2017-04-12 16:38:58 +01:00
parent e86954cc7f
commit 7eb3a8886f
13 changed files with 510 additions and 254 deletions
@@ -0,0 +1,12 @@
<?xml version='1.0' encoding='UTF-8'?>
<PropertyList>
<sim include="settings-common.xml">
<author>Wilbur Wright</author>
<tags>
<tag>fighter</tag>
<tag>1980s</tag>
<tag>glass-cockpit</tag>
</tags>
</sim>
</PropertyList>
@@ -0,0 +1,11 @@
<?xml version='1.0' encoding='UTF-8'?>
<PropertyList include="f16-common.xml">
<sim>
<name>f16-trainer</name>
<description>F16 Trainer</description>
<long-description>Twin-seat trainer version of the F16</long-description>
</sim>
</PropertyList>
@@ -0,0 +1,36 @@
<?xml version='1.0' encoding='UTF-8'?>
<PropertyList include="f16-common.xml">
<sim>
<name>f16a</name>
<description>F16-A</description>
<long-description>The F16 is compact, light-weight multi-role fighter used around the world</long-description>
<primary-set type="bool">true</primary-set>
<rating>
<FDM type="int">3</FDM>
<systems type="int">1</systems>
<cockpit type="int">2</cockpit>
<model type="int">5</model>
</rating>
<previews>
<preview>
<type>exterior</type>
<splash type="bool">true</splash>
<path>Previews/exterior-1.png</path>
</preview>
<preview>
<type>exterior</type>
<splash type="bool">true</splash>
<path>Previews/exterior-f16a-2.png</path>
</preview>
<preview>
<type>panel</type>
<splash type="bool">false</splash>
<path>Previews/cockpit.png</path>
</preview>
</previews>
</sim>
</PropertyList>
@@ -0,0 +1,12 @@
<?xml version='1.0' encoding='UTF-8'?>
<PropertyList include="f16-common.xml">
<sim>
<name>f16b</name>
<description>F16-B</description>
<long-description>The F16-B is an upgraded version of the F16A.</long-description>
<variant-of>f16a</variant-of>
<author>James T Kirk</author>
</sim>
</PropertyList>
@@ -0,0 +1,10 @@
<?xml version='1.0' encoding='UTF-8'?>
<PropertyList include="f16-common.xml">
<sim>
<name>f16c</name>
<description>F16-C</description>
<long-description>The F16-C is an upgraded version of the F16A.</long-description>
<variant-of>f16a</variant-of>
</sim>
</PropertyList>
@@ -0,0 +1,12 @@
<?xml version='1.0' encoding='UTF-8'?>
<!-- this file exists to test including + overlaying in the set XML -->
<PropertyList>
<views>
<view n="0">
<foo>dsdddd</foo>
</view>
</views>
</PropertyList>