Juniper / libslax

libslax is a C implementation of the SLAX programming language, a dialect of XSLT that is more perl/C-like and easier to read/code/use. For additional information about SLAX, see
https://github.com/Juniper/libslax/wiki
BSD 3-Clause "New" or "Revised" License
50 stars 18 forks source link

'make test' failing on Linux platforms #6

Open routelastresort opened 11 years ago

routelastresort commented 11 years ago
sudo make test
make[1]: Entering directory `/home/vagrant/libslax-0.16.14/tests'
make[2]: Entering directory `/home/vagrant/libslax-0.16.14/tests/core'
... test-authors-01.slax ...
... test-authors-02.slax ...
... test-authors-03.slax ...
... test-authors-04.slax ...
... test-authors-05.slax ...
... test-chassis-01.slax ...
... test-config-01.slax ...
... test-config-02.slax ...
... test-config-03.slax ...
... test-config-04.slax ...
... test-config-05.slax ...
... test-config-06.slax ...
... test-count-01.slax ...
... test-count-02.slax ...
... test-count-03.slax ...
... test-count-04.slax ...
+hit: one
+hit: two
+hit: three
+hit: four
+hit: five
... test-count-05.slax ...
... test-empty-01.slax ...
... test-empty-02.slax ...
... test-empty-03.slax ...
+compilation error: file ./test-empty-03.slax line 3 element include
+xsl:include : unable to load foo.slax
+compilation error: file ./test-empty-03.slax line 4 element import
+xsltParseStylesheetTop: ignoring misplaced import element
+slaxproc: 1 errors parsing script: './test-empty-03.slax'
... test-empty-04.slax ...
... test-empty-05.slax ...
... test-empty-06.slax ...
... test-empty-07.slax ...
... test-empty-08.slax ...
+compilation error: file ./test-empty-08.slax line 10 element some-new-feature
+xsltStylePreCompute: unknown xsl:some-new-feature
+some-new-feature not implemented
... test-empty-09.slax ...
... test-empty-10.slax ...
... test-empty-11.slax ...
... test-empty-12.slax ...
... test-empty-13.slax ...
... test-empty-14.slax ...
... test-empty-15.slax ...
... test-empty-16.slax ...
 <?xml version="1.0"?>
 <top>
   <back-reference>
-    <re1/>
+    <re1>
+      <match>a:a:a</match>
+      <match>a</match>
+    </re1>
     <re2/>
-    <re3/>
+    <re3>
+      <match>b:b:b</match>
+      <match>b</match>
+    </re3>
   </back-reference>
   <sequence>
     <i>1:1</i>
... test-empty-17.slax ...
... test-empty-18.slax ...
... test-empty-19.slax ...
... test-empty-20.slax ...
+done: 17
+done: 17
+done: 17
... test-empty-21.slax ...
... test-empty-22.slax ...
+this is a test
... test-empty-23.slax ...
... test-empty-24.slax ...
 <?xml version="1.0"?>
-<out>
-  <one>
-    <res>
-      <test>
-        <one>1</one>
-      </test>
-    </res>
-    <r2>
-      <a>
-        <b>
-          <c>
-            <test>
-              <one>1</one>
-            </test>
-          </c>
-        </b>
-      </a>
-    </r2>
-  </one>
-  <two>
-    <ores>&lt;test&gt;
-  &lt;one&gt;1&lt;/one&gt;
-&lt;/test&gt;</ores>
-    <or2>&lt;a&gt;
-  &lt;b&gt;
-    &lt;c&gt;
-      &lt;test&gt;
-        &lt;one&gt;1&lt;/one&gt;
-      &lt;/test&gt;
-    &lt;/c&gt;
-  &lt;/b&gt;
-&lt;/a&gt;</or2>
-  </two>
-  <three>
-    <xres>
-      <test>
-  <one>1</one>
-</test>
-    </xres>
-    <xr2>
-      <a>
-  <b>
-    <c>
-      <test>
-        <one>1</one>
-      </test>
-    </c>
-  </b>
-</a>
-    </xr2>
-  </three>
-</out>
+<out/>
+xmlXPathCompOpEval: function string-to-xml not found
+XPath error : Unregistered function
+runtime error: file ./test-empty-24.slax line 9 element variable
+Failed to evaluate the expression of variable 'res'.
... test-empty-25.slax ...
... test-empty-26.slax ...
... test-empty-27.slax ...
... test-empty-28.slax ...
 <?xml version="1.0"?>
 <out>
   <bit-set>
-    <a1>10001</a1>
-    <a2>11000</a2>
-    <a3>110000</a3>
-    <a4>100010000</a4>
+    <a1/>
   </bit-set>
-  <bit-clear>
-    <a1>11110</a1>
-    <a2>10111</a2>
-    <a3>011111</a3>
-    <a4>000011111</a4>
-  </bit-clear>
-  <bit-compare>
-    <a1>-1</a1>
-    <a2>1</a2>
-    <a3>1</a3>
-    <a4>0</a4>
-    <a5>1</a5>
-    <a6>-1</a6>
-    <a7>1</a7>
-  </bit-compare>
-  <bit-and>
-    <a1>00</a1>
-    <a2>100100</a2>
-    <a3>0000100</a3>
-    <a4>00001111</a4>
-    <a5>0000111</a5>
-    <a6>0000101</a6>
-    <a7>0010101</a7>
-    <a8>100001000</a8>
-    <a9>010111</a9>
-    <a10>00000000111111</a10>
-  </bit-and>
-  <bit-or>
-    <a1>11</a1>
-    <a2>101101</a2>
-    <a3>1010111</a3>
-    <a4>11111111</a4>
-    <a5>1111111</a5>
-    <a6>1111111</a6>
-    <a7>1111111</a7>
-    <a8>100001001</a8>
-    <a9>111111</a9>
-    <a10>10011101111111</a10>
-  </bit-or>
-  <bit-mask>
-    <a1>0</a1>
-    <a2>1</a2>
-    <a3>1111</a3>
-    <a4>00001111</a4>
-    <a5>00000000000000000000000011111111</a5>
-    <a6>1111111111</a6>
-    <a7>111</a7>
-    <a8>1111111</a8>
-    <a9>0000111</a9>
-    <a10>1111000</a10>
-  </bit-mask>
-  <ops>
-    <a1>21</a1>
-    <a2>1111111111111111</a2>
-    <a3>0000001111</a3>
-    <a4>0x15</a4>
-    <a5>1101000101</a5>
-  </ops>
 </out>
+xmlXPathCompOpEval: function set not found
+XPath error : Unregistered function
+xmlXPathCompiledEval: 1 objects left on the stack.
+runtime error: file ./test-empty-28.slax line 11 element value-of
+XPath evaluation returned no result.
... test-empty-29.slax ...
... test-empty-30.slax ...
+xsltApplySequenceConstructor: value-of was not compiled
... test-empty-31.slax ...
... test-empty-32.slax ...
+xmlXPathCompOpEval: function and not found
+XPath error : Unregistered function
+xmlXPathCompiledEval: 1 objects left on the stack.
+runtime error: file ./test-empty-32.slax line 7 element value-of
+XPath evaluation returned no result.
... test-empty-33.slax ...
... test-empty-34.slax ...
+work
... test-items-01.slax ...
... test-json-01.slax ...
 <top>
   <one>
     <input>{ a: 1, b: 2.5e-5 }</input>
-    <xml>
-      <my-top>
-        <a type="number">1</a>
-        <b type="number">2.5e-5</b>
-      </my-top>
-    </xml>
-    <back>{ "a": 1, "b": 2.5e-5 }
-</back>
   </one>
-  <two>
-    <input>[ 1, 2, 3, 4 ]</input>
-    <xml>
-      <my-top type="array">
-        <member type="number">1</member>
-        <member type="number">2</member>
-        <member type="number">3</member>
-        <member type="number">4</member>
-      </my-top>
-    </xml>
-    <back>[ 1, 2, 3, 4 ]
-</back>
-  </two>
-  <three>
-    <input>{ a: 1, b: [ 2, 3 ] }</input>
-    <xml>
-      <my-top>
-        <a type="number">1</a>
-        <b type="array">
-          <member type="number">2</member>
-          <member type="number">3</member>
-        </b>
-      </my-top>
-    </xml>
-    <back>{ "a": 1, "b": [ 2, 3 ] }
-</back>
-  </three>
-  <four>
-    <input>[ {a: 1}, {b: 2}, {c: 3} ]</input>
-    <xml>
-      <my-top type="array">
-        <member type="member">
-          <a type="number">1</a>
-        </member>
-        <member type="member">
-          <b type="number">2</b>
-        </member>
-        <member type="member">
-          <c type="number">3</c>
-        </member>
-      </my-top>
-    </xml>
-    <back>[ { "a": 1 }, { "b": 2 }, { "c": 3 } ]
-</back>
-  </four>
-  <five>
-    <input>{ a: "fish", b: "tur key", c: "mon key suit" }</input>
-    <xml>
-      <my-top>
-        <a>fish</a>
-        <b>tur key</b>
-        <c>mon key suit</c>
-      </my-top>
-    </xml>
-    <back>{ "a": "fish", "b": "tur key", "c": "mon key suit" }
-</back>
-  </five>
-  <six>
-    <input>   {
-      "Image": {
-          "Width":  800,
-          "Height": 600,
-          "Title":  "View from 15th Floor",
-          "Thumbnail": {
-              "Url":    "http://www.example.com/image/481989943",
-              "Height": 125,
-              "Width":  "100"
-          },
-          "IDs": [116, 943, 234, 38793]
-        }
-     }</input>
-    <xml>
-      <my-top>
-        <Image>
-          <Width type="number">800</Width>
-          <Height type="number">600</Height>
-          <Title>View from 15th Floor</Title>
-          <Thumbnail>
-            <Url>http://www.example.com/image/481989943</Url>
-            <Height type="number">125</Height>
-            <Width>100</Width>
-          </Thumbnail>
-          <IDs type="array">
-            <member type="number">116</member>
-            <member type="number">943</member>
-            <member type="number">234</member>
-            <member type="number">38793</member>
-          </IDs>
-        </Image>
-      </my-top>
-    </xml>
-    <back>{ "Image": { "Width": 800, "Height": 600, "Title": "View from 15th Floor", "Thumbnail": { "Url": "http://www.example.com/image/481989943", "Height": 125, "Width": "100" }, "IDs": [ 116, 943, 234, 38793 ] } }
-</back>
-  </six>
-  <seven>
-    <input>
-   [
-      {
-         "precision": "zip",
-         "Latitude":  37.7668,
-         "Longitude": -122.3959,
-         "Address":   "",
-         "City":      "SAN FRANCISCO",
-         "State":     "CA",
-         "Zip":       "94107",
-         "Country":   "US"
-      },
-      {
-         "precision": "zip",
-         "Latitude":  37.371991,
-         "Longitude": -122.026020,
-         "Address":   "",
-         "City":      "SUNNYVALE",
-         "State":     "CA",
-         "Zip":       "94085",
-         "Country":   "US"
-      }
-   ]
-</input>
-    <xml>
-      <my-top type="array">
-        <member type="member">
-          <precision>zip</precision>
-          <Latitude type="number">37.7668</Latitude>
-          <Longitude type="number">-122.3959</Longitude>
-          <Address></Address>
-          <City>SAN FRANCISCO</City>
-          <State>CA</State>
-          <Zip>94107</Zip>
-          <Country>US</Country>
-        </member>
-        <member type="member">
-          <precision>zip</precision>
-          <Latitude type="number">37.371991</Latitude>
-          <Longitude type="number">-122.026020</Longitude>
-          <Address></Address>
-          <City>SUNNYVALE</City>
-          <State>CA</State>
-          <Zip>94085</Zip>
-          <Country>US</Country>
-        </member>
-      </my-top>
-    </xml>
-    <back>[ { "precision": "zip", "Latitude": 37.7668, "Longitude": -122.3959, "Address": "", "City": "SAN FRANCISCO", "State": "CA", "Zip": "94107", "Country": "US" }, { "precision": "zip", "Latitude": 37.371991, "Longitude": -122.026020, "Address": "", "City": "SUNNYVALE", "State": "CA", "Zip": "94085", "Country": "US" } ]
-</back>
-  </seven>
-  <eight>
-    <input>[ { a: "nrt
-&#13;  nrt" } ]</input>
-    <xml>
-      <my-top type="array">
-        <member type="member">
-          <a>nrt
-&#13;  nrt</a>
-        </member>
-      </my-top>
-    </xml>
-    <back>[ { "a": "nrt\n\r\tnrt" } ]
-</back>
-  </eight>
-  <nine>
-    <input>{ "name": "Skip Tracer",
-              "location": "The city that never sleeps",
-              "age": 5,
-              "real": false,
-              "cases": null,
-              "equipment": [ "hat", "desk", "attitude" ]
-            }</input>
-    <xml>
-      <my-top>
-        <name>Skip Tracer</name>
-        <location>The city that never sleeps</location>
-        <age type="number">5</age>
-        <real type="false">false</real>
-        <cases type="null">null</cases>
-        <equipment type="array">
-          <member type="member">hat</member>
-          <member type="member">desk</member>
-          <member type="member">attitude</member>
-        </equipment>
-      </my-top>
-    </xml>
-    <back>{ "name": "Skip Tracer", "location": "The city that never sleeps", "age": 5, "real": false, "cases": null, "equipment": [ "hat", "desk", "attitude" ] }
-</back>
-  </nine>
-  <ten>
-    <input>{ "the  end": 1, "moment of truth": 2.5e-5, "3com": "dead" }</input>
-    <xml>
-      <my-top>
-        <element name="the&#9;end" type="number">1</element>
-        <element name="moment of truth" type="number">2.5e-5</element>
-        <element name="3com">dead</element>
-      </my-top>
-    </xml>
-    <back>{ "the\tend": 1, "moment of truth": 2.5e-5, "3com": "dead" }
-</back>
-  </ten>
 </top>
+xmlXPathCompOpEval: function json-to-xml not found
+XPath error : Unregistered function
+xmlXPathCompiledEval: 1 objects left on the stack.
+runtime error: file ./test-json-01.slax line 87 element variable
+Failed to evaluate the expression of variable 'x'.
... test-json-02.slax ...
+xmlXPathCompOpEval: function xml-to-json not found
+XPath error : Unregistered function
+runtime error: file ./test-json-02.slax line 10 element variable
+Failed to evaluate the expression of variable 'str'.
... test-list-01.slax ...
... test-list-02.slax ...
... test-list-03.slax ...
... test-lucy-01.slax ...
... test-player-01.slax ...
... test-sales-01.slax ...
... test-simple-01.slax ...
+compilation error: file ./test-simple-01.slax line 65 element number
+xsl:number : lang attribute not implemented
+Unimplemented block at ../../../libxslt/preproc.c:1461
+compilation error: file ./test-simple-01.slax line 65 element number
+xsl:number : letter-value 'alphabetic' not implemented
+Unimplemented block at ../../../libxslt/preproc.c:1470
+compilation error: file ./test-simple-01.slax line 109 element some-fancy-element
+xsltStylePreCompute: unknown xsl:some-fancy-element
+before
+This is 'one' is  good
... test-simple-02.slax ...
... test-simple-03.slax ...
... test-simple-04.slax ...
... test-simple-05.slax ...
... test-simple-06.slax ...
... test-simple-07.slax ...
... test-simple-08.slax ...
... test-simple-09.slax ...
... test-units-01.slax ...
make[2]: Leaving directory `/home/vagrant/libslax-0.16.14/tests/core'
make[2]: Entering directory `/home/vagrant/libslax-0.16.14/tests/bugs'
... pr422249.slax ...
... pr432942.slax ...
... pr497958.slax ...
make[2]: Leaving directory `/home/vagrant/libslax-0.16.14/tests/bugs'
make[2]: Entering directory `/home/vagrant/libslax-0.16.14/tests/errors'
... (skipping errors) ...
make[2]: Leaving directory `/home/vagrant/libslax-0.16.14/tests/errors'
make[1]: Leaving directory `/home/vagrant/libslax-0.16.14/tests'
routelastresort commented 11 years ago

Fedora 18 is close to exact output (left diff):

458c458
< +Unimplemented block at preproc.c:1467
---
> +Unimplemented block at ../../../libxslt/preproc.c:1461
461c461
< +Unimplemented block at preproc.c:1476
---
> +Unimplemented block at ../../../libxslt/preproc.c:1470
475,476c475,476
philshafer commented 11 years ago

libslax-0.16.15 addresses most of the make test issues, but two remain:

-slaxproc: 1 errors parsing script: '../../../tests/core/test-empty-03.slax'
+lt-slaxproc: 1 errors parsing script: '../../../tests/core/test-empty-03.slax'

Also looks like back references work under linux, while they don't under macosx:

   <back-reference>
-    <re1/>
+    <re1>
+      <match>a:a:a</match>
+      <match>a</match>
+    </re1>
     <re2/>
-    <re3/>
+    <re3>
+      <match>b:b:b</match>
+      <match>b</match>
+    </re3>