forked from parse-community/parse-php-sdk
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathParseFileTest.php
More file actions
126 lines (106 loc) · 3.79 KB
/
Copy pathParseFileTest.php
File metadata and controls
126 lines (106 loc) · 3.79 KB
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
<?php
use Parse\ParseFile;
use Parse\ParseObject;
use Parse\ParseQuery;
require_once 'ParseTestHelper.php';
class ParseFileTest extends \PHPUnit_Framework_TestCase {
public static function setUpBeforeClass()
{
ParseTestHelper::setUp();
}
public function tearDown()
{
ParseTestHelper::tearDown();
ParseTestHelper::clearClass("TestFileObject");
}
public function testParseFileFactories()
{
$file = ParseFile::_createFromServer("hi.txt", "http://");
$file2 = ParseFile::createFromData("hello", "hi.txt");
$file3 = ParseFile::createFromFile("ParseFileTest.php",
"file.php");
$this->assertEquals("http://", $file->getURL());
$this->assertEquals("hi.txt", $file->getName());
$this->assertEquals("hello", $file2->getData());
$this->assertEquals("hi.txt", $file2->getName());
$this->assertTrue(
strpos(
$file3->getData(), 'i am looking for myself'
) !== false
);
}
public function testParseFileUpload()
{
$file = ParseFile::createFromData("Fosco", "test.txt");
$file->save();
$this->assertTrue(
strpos($file->getURL(), 'http') !== false
);
$this->assertNotEquals("test.txt", $file->getName());
}
public function testParseFileDownload()
{
$file = ParseFile::_createFromServer("index.html", "http://example.com");
$data = $file->getData();
$this->assertTrue(
strpos($data, 'Example Domain') !== false
);
}
public function testParseFileRoundTrip()
{
$contents = "What would Bryan do?";
$file = ParseFile::createFromData($contents, "test.txt");
$this->assertEquals($contents, $file->getData());
$file->save();
$fileAgain = ParseFile::_createFromServer($file->getName(), $file->getURL());
$this->assertEquals($contents, $fileAgain->getData());
$fileAgain->save();
$this->assertEquals($file->getURL(), $fileAgain->getURL());
}
public function testParseFileTypes()
{
$contents = "a fractal of rad design";
$file = ParseFile::createFromData($contents, "noextension");
$file2 = ParseFile::createFromData($contents, "photo.png", "text/plain");
$file3 = ParseFile::createFromData($contents, "photo.png");
$file->save();
$file2->save();
$file3->save();
$fileAgain = ParseFile::_createFromServer($file->getName(), $file->getURL());
$file2Again = ParseFile::_createFromServer($file2->getName(), $file2->getURL());
$file3Again = ParseFile::_createFromServer($file3->getName(), $file3->getURL());
$this->assertEquals($contents, $fileAgain->getData());
$this->assertEquals($contents, $file2Again->getData());
$this->assertEquals($contents, $file3Again->getData());
$this->assertEquals("unknown/unknown", $fileAgain->getMimeType());
$this->assertEquals("text/plain", $file2Again->getMimeType());
$this->assertEquals("image/png", $file3Again->getMimeType());
}
public function testFileOnObject()
{
$contents = "irrelephant";
$file = ParseFile::createFromData($contents, "php.txt");
$file->save();
$obj = ParseObject::create("TestFileObject");
$obj->set("file", $file);
$obj->save();
$query = new ParseQuery("TestFileObject");
$objAgain = $query->get($obj->getObjectId());
$fileAgain = $objAgain->get("file");
$contentsAgain = $fileAgain->getData();
$this->assertEquals($contents, $contentsAgain);
}
public function testUnsavedFileOnObjectSave()
{
$contents = "remember";
$file = ParseFile::createFromData($contents, "bones.txt");
$obj = ParseObject::create("TestFileObject");
$obj->set("file", $file);
$obj->save();
$query = new ParseQuery("TestFileObject");
$objAgain = $query->get($obj->getObjectId());
$fileAgain = $objAgain->get("file");
$contentsAgain = $fileAgain->getData();
$this->assertEquals($contents, $contentsAgain);
}
}