function testPropertiesConstraint()
 {
     parent::$logger->debug('testPropertiesConstraint');
     $options = new MLPHP\Options(parent::$client);
     $constraint = new MLPHP\PropertiesConstraint("myProperty");
     $options->addConstraint($constraint);
     $this->assertXmlStringEqualsXmlString('
         <options xmlns="http://marklogic.com/appservices/search">
           <constraint name="myProperty">
             <properties />
           </constraint>
         </options>
     ', $options->getAsXML());
 }
 function testCollectionConstraint()
 {
     parent::$logger->debug('testCollectionConstraint');
     $options = new MLPHP\Options(parent::$client);
     $constraint = new MLPHP\CollectionConstraint("cat", "category/");
     $options->addConstraint($constraint);
     $this->assertXmlStringEqualsXmlString('
         <options xmlns="http://marklogic.com/appservices/search">
           <constraint name="cat">
             <collection prefix="category/"/>
           </constraint>
         </options>
     ', $options->getAsXML());
 }
 function testElementQueryConstraint()
 {
     parent::$logger->debug('testElementQueryConstraint');
     $options = new MLPHP\Options(parent::$client);
     $constraint = new MLPHP\ElementQueryConstraint("sample-element-constraint", "title", "http://my/namespace");
     $options->addConstraint($constraint);
     $this->assertXmlStringEqualsXmlString('
       <options xmlns="http://marklogic.com/appservices/search">
         <constraint name="sample-element-constraint">
           <element-query name="title" ns="http://my/namespace" />
         </constraint>
       </options>
     ', $options->getAsXML());
 }
 function testFieldWordConstraint()
 {
     parent::$logger->debug('testFieldWordConstraint');
     $options = new MLPHP\Options(parent::$client);
     $constraint = new MLPHP\FieldWordConstraint('myName', 'myField');
     $options->addConstraint($constraint);
     $this->assertXmlStringEqualsXmlString('
         <options xmlns="http://marklogic.com/appservices/search">
           <constraint name="myName">
             <word>
               <field name="myField"/>
             </word>
           </constraint>
         </options>
     ', $options->getAsXML());
 }
Example #5
0
 function testWordConstraint()
 {
     parent::$logger->debug('testWordConstraint');
     $options = new MLPHP\Options(parent::$client);
     $constraint = new MLPHP\WordConstraint('myConstr', 'foo', 'http://example.com/foo', 'barAttr', 'http://example.com/bar');
     $options->addConstraint($constraint);
     $this->assertXmlStringEqualsXmlString('
         <options xmlns="http://marklogic.com/appservices/search">
           <constraint name="myConstr">
               <word>
                  <element ns="http://example.com/foo" name="foo"/>
                  <attribute ns="http://example.com/bar" name="barAttr"/>
               </word>
            </constraint>
         </options>
     ', $options->getAsXML());
 }
 function testPathRangeConstraintTest()
 {
     parent::$logger->debug('testPathRangeConstraintTest');
     $options = new MLPHP\Options(parent::$client);
     $constraint = new MLPHP\PathRangeConstraint('myConstraint', 'string', 'false', '/foo/bar/@baz');
     $options->addConstraint($constraint);
     $this->assertXmlStringEqualsXmlString('
         <options xmlns="http://marklogic.com/appservices/search">
           <constraint name="myConstraint">
              <range type="string" facet="false"
               collation="http://marklogic.com/collation/">
                 <path-index>/foo/bar/@baz</path-index>
              </range>
           </constraint>
         </options>
     ', $options->getAsXML());
 }
 function testFieldRangeConstraint()
 {
     parent::$logger->debug('testFieldRangeConstraint');
     $options = new MLPHP\Options(parent::$client);
     $constraint = new MLPHP\FieldRangeConstraint('myConstraint', 'xs:string', 'false', 'myField');
     $options->addConstraint($constraint);
     $this->assertXmlStringEqualsXmlString('
         <options xmlns="http://marklogic.com/appservices/search">
           <constraint name="myConstraint">
              <range type="xs:string" facet="false"
               collation="http://marklogic.com/collation/">
                 <field name="myField"/>
              </range>
           </constraint>
         </options>
     ', $options->getAsXML());
 }
Example #8
0
 function testExtracts()
 {
     parent::$logger->debug('testExtracts');
     $options = new MLPHP\Options(parent::$client);
     $extracts = new MLPHP\Extracts();
     $extracts->addConstraints('foo');
     $extracts->addQName('bar', 'http://example.com/bar', 'baz', 'http://example.com/baz');
     $options->setExtracts($extracts);
     $this->assertXmlStringEqualsXmlString('
       <options xmlns="http://marklogic.com/appservices/search">
         <extract-metadata>
           <constraint-value ref="foo"/>
           <qname elem-name="bar" elem-ns="http://example.com/bar"
             attr-name="baz" attr-ns="http://example.com/baz"/>
         </extract-metadata>
       </options>
     ', $options->getAsXML());
 }
Example #9
0
 function testValuesCollection()
 {
     parent::$logger->debug('testValuesCollection');
     $options3 = new MLPHP\Options(parent::$client);
     $values3 = new MLPHP\Values("myValues3");
     $values3->setUpCollection();
     $values3->setAggregate('sum');
     $values3->setValuesOptions(['limit=10']);
     $options3->addValues($values3);
     $this->assertXmlStringEqualsXmlString('
       <options xmlns="http://marklogic.com/appservices/search">
         <values name="myValues3">
           <collection/>
           <aggregate apply="sum"/>
           <values-option>limit=10</values-option>
         </values>
       </options>
     ', $options3->getAsXML());
 }
Example #10
0
 function testTransformResults()
 {
     parent::$logger->debug('testTransformResults');
     $options = new MLPHP\Options(parent::$client);
     $tr = new MLPHP\TransformResults('myTransform');
     $pe1 = new MLPHP\PreferredElement('foo', 'http://example.com/foo');
     $pe2 = new MLPHP\PreferredElement('bar', 'http://example.com/bar');
     $tr->addPreferredElements([$pe1, $pe2]);
     $options->setTransformResults($tr);
     $this->assertXmlStringEqualsXmlString('
        <options xmlns="http://marklogic.com/appservices/search">
          <transform-results apply="myTransform">
            <preferred-elements>
              <element name="foo" ns="http://example.com/foo"/>
              <element name="bar" ns="http://example.com/bar"/>
            </preferred-elements>
          </transform-results>
        </options>
     ', $options->getAsXML());
 }
Example #11
0
 function testTerm()
 {
     parent::$logger->debug('testTerm');
     $options = new MLPHP\Options(parent::$client);
     $term = new MLPHP\Term("all-results");
     $term->setTermOptions(['unwildcarded']);
     $constraint = new MLPHP\PropertiesConstraint("myProperty");
     $term->setDefault($constraint);
     $options->setTerm($term);
     $this->assertXmlStringEqualsXmlString('
         <options xmlns="http://marklogic.com/appservices/search">
            <term>
              <empty apply="all-results"/>
              <term-option>unwildcarded</term-option>
              <default>
                <properties/>
              </default>
            </term>
          </options>
     ', $options->getAsXML());
 }
Example #12
0
 function testRangeBucketConstraint()
 {
     parent::$logger->debug('testRangeBucketConstraint');
     $options3 = new MLPHP\Options(parent::$client);
     $constraint3 = new MLPHP\RangeConstraint('myConstr3', 'string', 'true', 'foo');
     $buck1 = new MLPHP\Bucket('low', array('lt' => 10));
     $buck2 = new MLPHP\Bucket('high', array('ge' => 10, 'lt' => 20));
     $constraint3->addBuckets(array($buck1, $buck2));
     $options3->addConstraint($constraint3);
     $this->assertXmlStringEqualsXmlString('
         <options xmlns="http://marklogic.com/appservices/search">
           <constraint name="myConstr3">
            <range type="string" facet="true">
                 <element ns="" name="foo"/>
                 <bucket name="low" lt="10" />
                 <bucket name="high" ge="10" lt="20" />
            </range>
           </constraint>
         </options>
     ', $options3->getAsXML());
 }