public function testUpdateExpected()
 {
     $id = intval(getenv('ITEM_ID'));
     $item = new Item(getenv('DY_TABLE'));
     $item['id'] = $id;
     $item['name'] = 'test';
     $item['strings'] = array('test1', 'test2');
     $item['numbers'] = array(4, 5, 6);
     $this->conn->put($item);
     $expected = new Expected();
     $expected['name'] = new ExpectedAttribute('test');
     $expected['non_existent'] = new ExpectedAttribute(false);
     $context = new Context\Update();
     $context->setExpected($expected);
     $context->setReturnValues(ReturnValue::UPDATED_NEW);
     $update = new \Riverline\DynamoDB\AttributeUpdate();
     $update['name'] = new UpdateAction(AttributeAction::PUT, 'new name');
     $update['strings'] = new UpdateAction(AttributeAction::ADD, array('test3'));
     $update['numbers'] = new UpdateAction(AttributeAction::DELETE);
     $attributes = $this->conn->update(getenv('DY_TABLE'), $id, null, $update, $context);
     $this->assertNotNull($attributes);
 }