xref: /PHP-7.4/ext/zip/tests/oo_addfile.phpt (revision 5b82fd49)
1--TEST--
2ziparchive::addFile() function
3--SKIPIF--
4<?php
5if(!extension_loaded('zip')) die('skip');
6?>
7--FILE--
8<?php
9
10$dirname = __DIR__ . '/';
11include $dirname . 'utils.inc';
12$file = $dirname . 'oo_addfile.zip';
13
14copy($dirname . 'test.zip', $file);
15
16$zip = new ZipArchive;
17if (!$zip->open($file)) {
18	exit('failed');
19}
20if (!$zip->addFile($dirname . 'utils.inc', 'test.php')) {
21	echo "failed\n";
22}
23if (!$zip->addFile($dirname . 'utils.inc', 'mini.txt', 12, 34)) {
24	echo "failed\n";
25}
26if ($zip->status == ZIPARCHIVE::ER_OK) {
27	if (!verify_entries($zip, [
28		"bar",
29		"foobar/",
30		"foobar/baz",
31		"entry1.txt",
32		"test.php",
33		"mini.txt"
34	])) {
35		echo "failed\n";
36	} else {
37		echo "OK\n";
38	}
39	$zip->close();
40} else {
41	echo "failed\n";
42}
43if (!$zip->open($file)) {
44	exit('failed');
45}
46var_dump(strlen($zip->getFromName('test.php')) == filesize($dirname . 'utils.inc'));
47var_dump(strlen($zip->getFromName('mini.txt')) == 34);
48@unlink($file);
49?>
50--EXPECT--
51OK
52bool(true)
53bool(true)
54