Esempio n. 1
0
 /**
  * @covers MicrosoftAzure\Storage\Table\Models\Query::setTop
  * @covers MicrosoftAzure\Storage\Table\Models\Query::getTop
  */
 public function testSetTop()
 {
     // Setup
     $query = new Query();
     $expected = 123;
     // Test
     $query->setTop($expected);
     // Assert
     $this->assertEquals($expected, $query->getTop());
 }
 public static function getInterestingQueryEntitiesOptions()
 {
     $ret = array();
     $e = self::$entitiesInTable[count(self::$entitiesInTable) - 3];
     $options = new QueryEntitiesOptions();
     array_push($ret, $options);
     $options = new QueryEntitiesOptions();
     $query = new Query();
     $options->setQuery($query);
     array_push($ret, $options);
     $options = new QueryEntitiesOptions();
     $query = new Query();
     $query->setTop(2);
     $options->setQuery($query);
     array_push($ret, $options);
     $options = new QueryEntitiesOptions();
     $query = new Query();
     $query->setTop(-2);
     $options->setQuery($query);
     array_push($ret, $options);
     $options = new QueryEntitiesOptions();
     $query = new Query();
     $query->addSelectField('TableName');
     $options->setQuery($query);
     array_push($ret, $options);
     $options = new QueryEntitiesOptions();
     $query = new Query();
     $filter = Filter::applyPropertyName('BOOLEAN');
     $query->setFilter($filter);
     $options->setQuery($query);
     array_push($ret, $options);
     $options = new QueryEntitiesOptions();
     $query = new Query();
     $filter = Filter::applyConstant(false, EdmType::BOOLEAN);
     $query->setFilter($filter);
     $options->setQuery($query);
     array_push($ret, $options);
     $options = new QueryEntitiesOptions();
     $query = new Query();
     $filter = Filter::applyEq(Filter::applyConstant(23, EdmType::INT32), Filter::applyPropertyName('INT32'));
     $query->setFilter($filter);
     $options->setQuery($query);
     array_push($ret, $options);
     $options = new QueryEntitiesOptions();
     $query = new Query();
     $filter = Filter::applyNe(Filter::applyConstant(23, EdmType::INT32), Filter::applyPropertyName('INT32'));
     $query->setFilter($filter);
     $options->setQuery($query);
     array_push($ret, $options);
     $options = new QueryEntitiesOptions();
     $query = new Query();
     $filter = Filter::applyNot(Filter::applyEq(Filter::applyConstant(23, EdmType::INT32), Filter::applyPropertyName('INT32')));
     $query->setFilter($filter);
     $options->setQuery($query);
     array_push($ret, $options);
     $options = new QueryEntitiesOptions();
     $options->setNextPartitionKey($e->getPartitionKey());
     $options->setNextRowKey($e->getRowKey());
     array_push($ret, $options);
     // Ask for an entity that does not exist.
     $options = new QueryEntitiesOptions();
     $options->setNextPartitionKey(self::$Partitions[2] . 'X');
     $options->setNextRowKey($e->getRowKey() . 'X');
     array_push($ret, $options);
     return $ret;
 }
 public function testCheckQuery()
 {
     $query = new Query();
     $this->assertNull($query->getFilter(), 'Default Query->getFilter');
     $this->assertNull($query->getSelectFields(), 'Default Query->getSelectFields');
     $this->assertNull($query->getTop(), 'Default Query->getTop');
     $query->addSelectField('bar');
     $query->addSelectField('baz');
     $this->assertNotNull($query->getSelectFields(), 'Add Query->getSelectFields');
     $this->assertEquals(2, count($query->getSelectFields()), 'Add Query->getSelectFields->size');
     $filter = Filter::applyConstant('foo', EdmType::STRING);
     $query->setFilter($filter);
     $query->setSelectFields(null);
     $query->setTop(TableServiceFunctionalTestData::INT_MAX_VALUE);
     $this->assertEquals($filter, $query->getFilter(), 'Set Query->getFilter');
     $this->assertNull($query->getSelectFields(), 'Set Query->getSelectFields');
     $this->assertEquals(TableServiceFunctionalTestData::INT_MAX_VALUE, $query->getTop(), 'Set Query->getTop');
 }
 /**
  * @covers MicrosoftAzure\Storage\Table\TableRestProxy::queryEntities
  * @covers MicrosoftAzure\Storage\Table\TableRestProxy::_addOptionalQuery
  * @covers MicrosoftAzure\Storage\Table\TableRestProxy::_encodeODataUriValues
  * @covers MicrosoftAzure\Storage\Table\TableRestProxy::_encodeODataUriValue
  * @covers MicrosoftAzure\Storage\Table\Internal\AtomReaderWriter::_parseBody
  * @covers MicrosoftAzure\Storage\Table\Internal\AtomReaderWriter::parseEntities
  * @covers MicrosoftAzure\Storage\Table\Internal\AtomReaderWriter::_parseOneEntity
  * @covers MicrosoftAzure\Storage\Common\Internal\ServiceRestProxy::sendContext
  */
 public function testQueryEntitiesWithGetTop()
 {
     // Setup
     $name = 'queryentitieswithgettop';
     $pk1 = '123';
     $pk2 = '124';
     $pk3 = '125';
     $e1 = TestResources::getTestEntity($pk1, '1');
     $e2 = TestResources::getTestEntity($pk2, '2');
     $e3 = TestResources::getTestEntity($pk3, '3');
     $this->createTable($name);
     $this->restProxy->insertEntity($name, $e1);
     $this->restProxy->insertEntity($name, $e2);
     $this->restProxy->insertEntity($name, $e3);
     $query = new Query();
     $query->setTop(1);
     $options = new QueryEntitiesOptions();
     $options->setQuery($query);
     // Test
     $result = $this->restProxy->queryEntities($name, $options);
     // Assert
     $entities = $result->getEntities();
     $this->assertCount(1, $entities);
     $this->assertEquals($pk1, $entities[0]->getPartitionKey());
 }