-
Notifications
You must be signed in to change notification settings - Fork 501
/
Copy pathFile.php
39 lines (31 loc) · 1.32 KB
/
File.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php
class RequestsTest_File extends PHPUnit_Framework_TestCase {
/**
* @expectedException Requests_Exception_File
*/
public function testInvalidFile() {
new Requests_File(sys_get_temp_dir() . 'null.exe');
}
public function testBasic() {
file_put_contents($tmpfile = tempnam(sys_get_temp_dir(), 'requests'), '');
$file = new Requests_File($tmpfile, 'text/plain', 'readme.txt');
$this->assertEquals($file->path, $tmpfile);
$this->assertEquals($file->type, 'text/plain');
$this->assertEquals($file->name, 'readme.txt');
file_put_contents($tmpfile = tempnam(sys_get_temp_dir(), 'requests'), 'hello');
$file = new Requests_File($tmpfile);
$this->assertEquals($file->name, basename($tmpfile));
$this->assertEquals($file->get_contents(), 'hello');
}
public function testMime() {
file_put_contents($tmpfile = tempnam(sys_get_temp_dir(), 'requests'), 'hello');
$file = new Requests_File($tmpfile);
$this->assertEquals($file->type, 'text/plain');
file_put_contents($tmpfile = tempnam(sys_get_temp_dir(), 'requests'), "\xff\xd8\xff");
$file = new Requests_File($tmpfile);
$this->assertEquals($file->type, 'image/jpeg');
file_put_contents($tmpfile = tempnam(sys_get_temp_dir(), 'requests'), "\x78\x01");
$file = new Requests_File($tmpfile);
$this->assertEquals($file->type, 'application/octet-stream');
}
}