trac_tickets_206.inc
<?php
class ticket_206 extends trac_ticket {
function get_info() {
return array(
'group' => VPX_UNITTEST_MEDIAFILE,
'name' => 'User Story #206',
'desc' => 'MM functies voor Mediafiles'
);
}
function trac_test() {
$this->s_user_story = "#206";
$s_asset_id = $this->_create_asset();
$a_args = array(
'get' => array(
'app_id' => SIMPLETEST_APP_ID,
'user_id' => SIMPLETEST_USER_ID,
'group_id' => SIMPLETEST_GROUP_ID,
),
'uri' => array(
'asset_id' => $s_asset_id
)
);
$result = $this->_do_restcall(
"media_management_create_mediafile",
array($a_args)
);
if (isset($result->response['items'][1]['mediafile_id'])) {
$s_mediafile_id = $result->response['items'][1]['mediafile_id'];
$this->a_test_data['mediafile'][] = array('mediafile_id' => $s_mediafile_id);
}
$this->assertTrue(
$result->response['header']['request_result'] === ERRORMESSAGE_OKAY,
"Create a new mediafile: ". $s_mediafile_id ." (request_result = ". ERRORMESSAGE_OKAY ."): %s"
);
db_set_active('data');
$array = db_fetch_array(db_query("SELECT * FROM {mediafile} WHERE mediafile_id = '%s'", $s_mediafile_id));
db_set_active();
$a_args['get']['owner_id'] = $a_args['get']['user_id'];
unset($a_args['get']['user_id']);
$a_args['get']['sannas_mount_point'] = SAN_NAS_BASE_PATH;
foreach (array_merge(array_keys($a_args['get']), array_keys($a_args['uri'])) as $subject) {
$this->assertTrue(
$array[$subject] === $s_asset_id || $array[$subject] == $a_args['get'][$subject],
"Database lookup: (". $subject ." == ". $array[$subject] ."): %s"
);
}
$a_args = array(
'uri' => array(
'asset_id' => $s_asset_id
),
'get' => array(
'app_id' => SIMPLETEST_APP_ID
),
);
$result = $this->_do_restcall(
"media_management_get_asset_mediafiles",
array($a_args)
);
$this->assertTrue(
$result->response['header']['request_result_id'] === ERRORCODE_OKAY,
"Get all mediafiles belonging to asset ". $s_asset_id ." (request_result_id = ". ERRORCODE_OKAY ."): %s"
);
$a_args = array(
'uri' => array(
'mediafile_id' => $s_mediafile_id
),
'get' => array(
'app_id' => SIMPLETEST_APP_ID
),
);
$result = $this->_do_restcall(
"media_management_get_mediafile",
array($a_args)
);
$this->assertTrue(
$result->response['header']['request_result_id'] === ERRORCODE_OKAY,
"Get a details of a single mediafile (request_result_id = ". ERRORCODE_OKAY ."): %s"
);
db_set_active('data');
$array = db_fetch_array(db_query("SELECT transcode_inherits_acl FROM {mediafile} WHERE mediafile_id = '%s'", $s_mediafile_id));
db_set_active();
$this->assertTrue(
$array['transcode_inherits_acl'] == 'TRUE',
"Database lookup: (transcode_inherits_acl == ". $array['transcode_inherits_acl'] ."): %s"
);
$a_args = array(
'uri' => array(
'mediafile_id' => $s_mediafile_id
),
'get' => array(
'app_id' => SIMPLETEST_APP_ID,
'user_id' => SIMPLETEST_USER_ID,
),
'post' => array(
'transcode_inherits_acl' => 'TRUE'
)
);
$result = $this->_do_restcall(
"media_management_update_mediafile",
array($a_args)
);
db_set_active('data');
$array = db_fetch_array(db_query("SELECT transcode_inherits_acl FROM {mediafile} WHERE mediafile_id = '%s'", $s_mediafile_id));
db_set_active();
$this->assertTrue(
$array['transcode_inherits_acl'] == 'TRUE',
"Database lookup: (transcode_inherits_acl == ". $array['transcode_inherits_acl'] ."): %s"
);
$a_args = array(
'uri' => array(
'mediafile_id' => $s_mediafile_id
),
'get' => array(
'app_id' => SIMPLETEST_APP_ID,
'user_id' => SIMPLETEST_USER_ID,
),
'post' => array(
'filename' => "new_filename.ext"
)
);
$result = $this->_do_restcall(
"media_management_update_mediafile",
array($a_args)
);
$this->assertTrue(
$result->response['header']['request_result_id'] === ERRORCODE_OKAY,
"Update the filename of a mediafile (request_result_id = ". ERRORCODE_OKAY ."): %s"
);
db_set_active('data');
$array = db_fetch_array(db_query("SELECT filename FROM {mediafile} WHERE mediafile_id = '%s'", $s_mediafile_id));
db_set_active();
$this->assertTrue(
$a_args['post']['filename'] == $array['filename'],
"Database lookup: (filename == ". $array['filename'] ."): %s"
);
db_set_active('data');
$array = db_fetch_array(db_query("SELECT transcode_inherits_acl FROM {mediafile} WHERE mediafile_id = '%s'", $s_mediafile_id));
db_set_active();
$this->assertTrue(
$array['transcode_inherits_acl'] == 'TRUE',
"Database lookup: (transcode_inherits_acl == ". $array['transcode_inherits_acl'] ."): %s"
);
$a_args = array(
'uri' => array(
'mediafile_id' => $s_mediafile_id
),
'get' => array(
'app_id' => SIMPLETEST_APP_ID,
'user_id' => SIMPLETEST_USER_ID,
),
'post' => array(
'filename' => "een_andere_bestandsnaam.ext",
'sannas_mount_point' => "/een/ander/pad",
'is_original_file' => "false"
),
);
$result = $this->_do_restcall(
"media_management_internal_update_mediafile",
array($a_args)
);
$this->assertTrue(
$result->response['header']['request_result_id'] === ERRORCODE_OKAY,
"[internal] Update the filename, san/nas path and is_original_file of a mediafile (request_result_id = ". ERRORCODE_OKAY ."): %s"
);
db_set_active('data');
$array = db_fetch_array(db_query("SELECT * FROM {mediafile} WHERE mediafile_id = '%s'", $s_mediafile_id));
db_set_active();
$a_args['get']['owner_id'] = $a_args['get']['user_id'];
unset($a_args['get']['user_id']);
foreach (array_merge($a_args['get'], $a_args['uri'], $a_args['post']) as $subject => $value) {
$this->assertTrue(
$array[$subject] === $s_asset_id || strtoupper($array[$subject]) === strtoupper($value),
"Database lookup: (". $subject ." == ". $array[$subject] ."): %s"
);
}
$a_args = array(
'get' => array(
'app_id' => SIMPLETEST_APP_ID,
'user_id' => SIMPLETEST_USER_ID,
'group_id' => SIMPLETEST_GROUP_ID,
),
'internal' => array(
'is_original_file' => "false",
'filename' => "een_niet_bestaande_naam.wmv",
'mediafile_id' => vpx_create_hash(1, 1),
'sannas_mount_point' => "/dit/pad/bestaat/niet",
),
'uri' => array(
'asset_id' => $s_asset_id
)
);
$result = $this->_do_restcall(
"media_management_create_mediafile",
array($a_args)
);
$s_mediafile_id = $result->response['items'][1]['mediafile_id'];
$this->assertTrue(
$result->response['header']['request_result'] === ERRORMESSAGE_OKAY,
"[internal] Create a new mediafile: ". $s_mediafile_id ." (request_result = ". ERRORMESSAGE_OKAY ."): %s"
);
_media_management_update_asset_info($s_mediafile_id);
db_set_active('data');
$array = db_fetch_array(db_query("SELECT * FROM {mediafile} WHERE mediafile_id = '%s'", $s_mediafile_id));
db_set_active();
$a_args['get']['owner_id'] = $a_args['get']['user_id'];
unset($a_args['get']['user_id']);
foreach (array_merge($a_args['get'], $a_args['uri'], $a_args['internal']) as $subject => $value) {
$this->assertTrue(
$array[$subject] === $s_asset_id || strtoupper($array[$subject]) === strtoupper($value),
"Database lookup: (". $subject ." == ". $array[$subject] ."): %s"
);
}
$a_args = array(
'get' => array(
'app_id' => SIMPLETEST_APP_ID,
),
'uri' => array(
'asset_id' => $s_asset_id,
),
);
$result = $this->_do_restcall(
"media_management_get_asset",
array($a_args)
);
$this->assertTrue(
$result->response['header']['request_result_id'] == ERRORCODE_OKAY,
"Fetch the asset (request_result_id = ". $result->response['header']['request_result_id'] .")"
);
$item = reset($result->response['items']);
$this->assertTrue(
$item['is_external'] == 'FALSE',
'is_external must be FALSE, %s'
);
$s_asset_id_2 = $this->_create_asset();
$a_args = array(
'get' => array(
'app_id' => SIMPLETEST_APP_ID,
'user_id' => SIMPLETEST_USER_ID,
'group_id' => SIMPLETEST_GROUP_ID,
'uri' => 'http://www.streamit.com/test/test.flv',
),
'internal' => array(
'is_original_file' => "true",
),
'uri' => array(
'asset_id' => $s_asset_id_2
)
);
$result = $this->_do_restcall(
"media_management_create_mediafile",
array($a_args)
);
$s_mediafile_id = $result->response['items'][1]['mediafile_id'];
$this->assertTrue(
$result->response['header']['request_result'] === ERRORMESSAGE_OKAY,
"Create a new mediafile with external link: ". $s_mediafile_id ." (request_result = ". ERRORMESSAGE_OKAY ."): %s"
);
_media_management_update_asset_info($s_mediafile_id);
db_set_active('data');
$array = db_fetch_array(db_query("SELECT * FROM {mediafile} WHERE mediafile_id = '%s'", $s_mediafile_id));
db_set_active();
$a_args['get']['owner_id'] = $a_args['get']['user_id'];
unset($a_args['get']['user_id']);
foreach (array_merge($a_args['get'], $a_args['uri']) as $subject => $value) {
$this->assertTrue(
$array[$subject] === $s_asset_id || strtoupper($array[$subject]) === strtoupper($value),
"Database lookup: (". $subject ." == ". $array[$subject] ."): %s"
);
}
$a_args = array(
'get' => array(
'app_id' => SIMPLETEST_APP_ID,
),
'uri' => array(
'asset_id' => $s_asset_id_2,
),
);
$result = $this->_do_restcall(
"media_management_get_asset",
array($a_args)
);
$this->assertTrue(
$result->response['header']['request_result_id'] == ERRORCODE_OKAY,
"Fetch the asset (request_result_id = ". $result->response['header']['request_result_id'] .")"
);
$item = reset($result->response['items']);
$this->assertTrue(
$item['is_external'] == 'TRUE',
'is_external must be TRUE, %s'
);
$still_asset_id = $this->_create_asset();
$still_mediafile_id = $this->_create_mediafile($still_asset_id);
$s_desc = null;
$still_time_code = 10;
$still_order = 0;
$still_type = 'NONE';
$still_default = 'TRUE';
$tag = '';
$still_id = $this->_create_still($still_asset_id, $s_desc, $still_time_code, $still_order, $still_type, $still_default, $still_mediafile_id, $tag);
$a_args = array(
'uri' => array(
'mediafile_id' => $still_mediafile_id
),
'get' => array(
'app_id' => SIMPLETEST_APP_ID
),
);
$result = $this->_do_restcall(
"media_management_get_mediafile",
array($a_args)
);
$this->assertTrue(
$result->response['header']['request_result_id'] === ERRORCODE_OKAY,
"Get mediafile ". $still_mediafile_id ." (request_result_id = ". ERRORCODE_OKAY ."): %s"
);
$item = reset($result->response['items']);
$this->assertTrue(
isset($item['still']),
'Still is isset (show_stills=NULL), %s'
);
$a_args = array(
'uri' => array(
'mediafile_id' => $still_mediafile_id
),
'get' => array(
'app_id' => SIMPLETEST_APP_ID,
'show_stills' => 'TRUE',
),
);
$result = $this->_do_restcall(
"media_management_get_mediafile",
array($a_args)
);
$this->assertTrue(
$result->response['header']['request_result_id'] === ERRORCODE_OKAY,
"Get mediafile ". $still_mediafile_id ." (request_result_id = ". ERRORCODE_OKAY ."): %s"
);
$item = reset($result->response['items']);
$this->assertTrue(
isset($item['still']),
'Still is isset (show_stills=TRUE), %s'
);
$a_args = array(
'uri' => array(
'mediafile_id' => $still_mediafile_id
),
'get' => array(
'app_id' => SIMPLETEST_APP_ID,
'show_stills' => 'FALSE',
),
);
$result = $this->_do_restcall(
"media_management_get_mediafile",
array($a_args)
);
$this->assertTrue(
$result->response['header']['request_result_id'] === ERRORCODE_OKAY,
"Get mediafile ". $still_mediafile_id ." (request_result_id = ". ERRORCODE_OKAY ."): %s"
);
$item = reset($result->response['items']);
$this->assertFalse(
isset($item['still']),
'Still is isset (show_stills=FALSE), %s'
);
}
}