Changeset 827 for MDRepository
- Timestamp:
- 11/01/10 23:30:16 (14 years ago)
- Location:
- MDRepository/trunk/xquery
- Files:
-
- 2 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
MDRepository/trunk/xquery/README
r815 r827 50 50 51 51 52 52 == test suite == 53 THIS IS CURRENTLY BEING DEVLEOPED! NOT SAFELY USABLE YET! 54 55 own build-file: build-tests.xml 56 based on exist's performance.xml sub-build-file 57 imports main exist build-file. 58 This yields problems with basedir for the imported build-files 59 60 The simplest solution I could find is to set the basedir as property on command line: 61 62 ant -f build-tests.xml -Dbasedir=C:/apps/exist benchmark 63 64 The other options are to be set in build-tests.properties! 65 66 actual queries for testing/benchmarking are written in cmd-test.xml -
MDRepository/trunk/xquery/cmd-model.xqm
r826 r827 117 117 return 118 118 util:eval(fn:concat("$collection/ft:query(descendant::IsPartOf, <query><term>", xdb:decode($coll), "</term></query>)/ancestor-or-self::CMD/descendant-or-self::", $path)) 119 return 120 cmd-model:elem-r($path-nodes, $path, $depth, $depth) 119 120 let $entries := cmd-model:elem-r($path-nodes, $path, $depth, $depth), 121 $coll-names-value := if (fn:empty($collections)) then () else attribute colls {fn:string-join($collections, ",")}, 122 $result := element {$cmd-model:docTypeTerms} { 123 $coll-names-value, 124 attribute depth {$depth}, 125 attribute created {fn:current-dateTime()}, 126 $entries 127 } 128 return $result 121 129 }; 122 130 -
MDRepository/trunk/xquery/cmd-stats.xql
r654 r827 1 1 let $doc-name := xmldb:store("/db/cmdi-mirror", "stats.xml", <result></result>), 2 2 $doc := doc($doc-name), 3 $items := (<item label="CMD" >count(//CMD)</item>, 4 <item label="CMD with Resource" >count(//CMD[.//ResourceType='Resource'])</item>, 5 <item label="CMD with Metadata" >count(//CMD[.//ResourceType='Metadata'])</item>, 6 <item label="ResourceProxy - Resource" >count(//ResourceProxy[ResourceType='Resource'])</item>, 7 <item label="ResourceProxy - Metadata" >count(//ResourceProxy[ResourceType='Metadata'])</item>, 8 <item label="CMD with MD and Res (fixme!)" >count((//CMD[.//ResourceType='Resource'], //CMD[.//ResourceType='Metadata']))</item>, 9 <item label="CMD without " >count(//CMD[not(.//ResourceType='Resource')][not(.//ResourceType='Metadata')])</item>, 10 <item label="CMD with relative Resource (starts-with('.'))" >count(//CMD[.//ResourceType='Resource'][starts-with(.//ResourceRef,'.')])</item>, 11 <item label="CMD with http-uri Resource" >count(//CMD[.//ResourceType='Resource'][starts-with(.//ResourceRef,'http')])</item>, 12 <item label="CMD with relative MD" >count(//CMD[.//ResourceType='Metadata'][starts-with(.//ResourceRef,'.')])</item>, 13 <item label="CMD with http-uri MD" >count(//CMD[.//ResourceType='Metadata'][starts-with(.//ResourceRef,'http')])</item>, 14 <item label="CMD - Resource not relative, not http" >count(//CMD[.//ResourceType='Resource'][not(starts-with(.//ResourceRef,'.'))][not(starts-with(.//ResourceRef,'http'))])</item>, 15 <item label="CMD - Resource only filename (text, no '/')" >count(//CMD[.//ResourceProxy[ResourceType='Resource'][ResourceRef[not(. = "")][not(contains(.,'/'))]]])</item>, 16 <item label="CMD - only filename (text, no '/')" >count(//CMD[.//ResourceRef[not(. = "")][not(contains(.,'/'))]])</item>, 17 <item label="ResourceRef only filename (text, no '/')" >count(//ResourceRef[not(. = "")][not(contains(.,'/'))])</item>, 18 <item label="CMD - empty ResourceRef">count(//CMD[.//ResourceRef[. = ""]])</item>, 19 <item label="ResourceRef empty">count(//ResourceRef[. = ""])</item>, 20 <item label="CMD - empty and non-empty ResourceRef">count((//CMD[.//ResourceRef[. = ""]], //CMD[.//ResourceRef[not(. = "")]]))</item>) 3 $items := ( 4 <item key="C" label="CMD" >count(//CMD)</item>, 5 <item key="C.0" label="CMD without " >count(//CMD[not(.//ResourceType='Resource')][not(.//ResourceType='Metadata')])</item>, 6 <item key="C.R+M" label="CMD with MD and Res" >count((//CMD[.//ResourceType='Resource'][.//ResourceType='Metadata']))</item>, 7 <item key="C.R" label="CMD with Resource" >count(//CMD[.//ResourceType='Resource'])</item>, 8 <item key="C.R.0" label="CMD - with Resource empty">count(//CMD[.//ResourceType='Resource'][.//ResourceRef[. = ""]])</item>, 9 <item key="C.R.1" label="CMD with relative Resource (starts-with('.'))" >count(//CMD[.//ResourceType='Resource'][starts-with(.//ResourceRef,'.')])</item>, 10 <item key="C.R.2" label="CMD with http-uri Resource" >count(//CMD[.//ResourceType='Resource'][starts-with(.//ResourceRef,'http')])</item>, 11 <item key="C.R.1+2" label="CMD - with relative and http Resource">count(//CMD[.//ResourceType='Resource'][starts-with(.//ResourceRef,'.')][starts-with(.//ResourceRef,'http')])</item>, 12 <item key="C.R.3" label="CMD - Resource only filename (not empty, no '/')" >count(//CMD[.//ResourceProxy[ResourceType='Resource'][ResourceRef[not(. = "")][not(contains(.,'/'))]]])</item>, 13 <item key="RP.R" label="ResourceProxy - Resource" >count(//ResourceProxy[ResourceType='Resource'])</item>, 14 15 <item key="C.M" label="CMD with Metadata = Collections" >count(//CMD[.//ResourceType='Metadata'])</item>, 16 <item key="C.M.1" label="CMD with relative MD" >count(//CMD[.//ResourceType='Metadata'][starts-with(.//ResourceRef,'.')])</item>, 17 <item key="C.M.2" label="CMD with http-uri MD" >count(//CMD[.//ResourceType='Metadata'][starts-with(.//ResourceRef,'http')])</item>, 18 19 <item key="RP.M" label="ResourceProxy - Metadata" >count(//ResourceProxy[ResourceType='Metadata'])</item>, 20 21 <item key="C..3" label="CMD - only filename (not empty, no '/')" >count(//CMD[.//ResourceRef[not(. = "")][not(contains(.,'/'))]])</item>, 22 <item key="RR.3" label="ResourceRef only filename (not empty, no '/')" >count(//ResourceRef[not(. = "")][not(contains(.,'/'))])</item>, 23 <item key="C..RR.0" label="CMD - empty ResourceRef">count(//CMD[.//ResourceRef[. = ""]])</item>, 24 <item key="RR.0 label="ResourceRef empty">count(//ResourceRef[. = ""])</item>, 25 <item key="C..RR.0+1" label="CMD - empty and non-empty ResourceRef">count((//CMD[.//ResourceRef[. = ""]][.//ResourceRef[not(. = "")]]))</item>) 21 26 return 22 27 for $item in $items 23 28 let $answer := util:eval($item/text()) 24 return update insert <item label="{$item/@label}">{$answer}</item> into $doc/result 29 return update insert <item key="{$item/@key}" label="{$item/@label}">{$answer}</item> into $doc/result 30 31 (: <item key="C.R.3" label="CMD - Resource not empty, not relative, not http">5100</item> 32 <item label="CMD - Resource not relative, not http" >count(//CMD[.//ResourceType='Resource'][not(starts-with(.//ResourceRef,'.'))][not(starts-with(.//ResourceRef,'http'))])</item>, 33 :) -
MDRepository/trunk/xquery/cmd-test.xml
r807 r827 3 3 <configuration> 4 4 <!-- <connection id="con" user="admin" password="" base="xmldb:exist://embedded-eXist-server"/> --> 5 <connection id="con" user="admin" password=" " base="xmldb:exist://localhost:8680/exist/xmlrpc/"/>5 <connection id="con" user="admin" password="pwd" base="xmldb:exist://localhost:8680/exist/xmlrpc/"/> 6 6 <action name="sequence" class="org.exist.performance.ActionSequence"/> 7 7 <action name="create-collection" class="org.exist.performance.actions.CreateCollection"/> … … 13 13 </configuration> 14 14 15 <group name="cmdi-tests-getCollections"> 16 <!-- 17 <setup connection="con"> 18 <create-collection parent="/db/common" name="clarin"/> 19 <store-files dir="tests" includes="*.cmdi" collection="/db/common/clarin"/> 20 21 <create-collection parent="/db/system/config" name="db"/> 22 <store collection="/db/system/config/db" name="collection.xconf"> 23 <collection xmlns="http://exist-db.org/collection-config/1.0"> 24 <index> 25 <fulltext default="none" attributes="false"> 26 </fulltext> 27 28 <create path="//book/@id" type="xs:string"/> 29 <create path="//book/@n" type="xs:integer"/> 30 <create path="//section/@id" type="xs:string"/> 31 32 <lucene> 33 <text qname="p"/> 34 <text qname="l"/> 35 <text qname="head"/> 36 <text qname="cell"/> 37 </lucene 38 </index> 39 </collection> 40 41 </store> 42 </setup> 43 --> 15 <group name="cmdi-tests-getCollections"> 44 16 <thread name="thread1" connection="con"> 45 <sequence repeat="20" description="query imdi resources (no index)"> 46 <!-- Number 1: 375 --> 47 <xquery collection="/db/cmdi-mirror" query="" /> 17 <sequence repeat="20" description="basic test of get-collections API-function"> 18 <xquery collection="/db/cmdi-mirror" query="" > 19 import module namespace cmd-model = "http://spraakbanken.gu.se/clarin/xquery/model" 20 at "xmldb:exist:///db/clarin/cmd-model.xqm"; 21 cmd-model:get-collections('root', 'xml', 1) 22 </xquery> 48 23 </sequence> 49 24 </thread> 50 25 </group> 51 26 52 53 27 <group name="cmdi-tests-queryModel"> 54 28 <thread name="thread1" connection="con"> 55 <sequence repeat="20" description="query imdi resources (no index)"> 56 <!-- Number 1: 375 --> 29 <sequence repeat="20" description="basic test of query-model API-function"> 57 30 <xquery collection="/db/cmdi-mirror" > 58 31 import module namespace cmd-model = "http://spraakbanken.gu.se/clarin/xquery/model" 59 32 at "xmldb:exist:///db/clarin/cmd-model.xqm"; 60 61 33 cmd-model:query-model('Components', '/db/cmdi-mirror', 'xml', 1) 62 34 </xquery> … … 67 39 <group name="cmdi-tests-searchRetrieve"> 68 40 <thread name="thread1" connection="con"> 69 <sequence repeat="20" description="query imdi resources (no index)"> 70 <!-- Number 1: 375 --> 41 <sequence repeat="20" description="query imdi resources (no index)"> 71 42 <xquery collection="/db/cmdi-mirror" query=""></xquery> 72 43 </sequence> … … 76 47 <group name="cmdi-tests-cc"> 77 48 <thread name="thread1" connection="con"> 78 <sequence repeat="20" description="query imdi resources (no index)"> 79 <!-- Number 1: 375 --> 49 <sequence repeat="20" description="consistency checks"> 80 50 <xquery collection="/db/cmdi-mirror" query="count(//IsPartOf[IsPartOf])" /> 51 <xquery collection="/db/cmdi-mirror" query="count(/CMD/Header/MdSelfLink[.=''])" /> 81 52 </sequence> 82 53 </thread>
Note: See TracChangeset
for help on using the changeset viewer.