From f513caa0a6acbe697748704cae67ef974c2ca2c6 Mon Sep 17 00:00:00 2001 From: Greg Beaver Date: Wed, 16 Apr 2008 04:11:14 +0000 Subject: [PATCH] add failing test for metadata support in zip archives --- ext/phar/tests/zip/files/metadata.phar.inc | 11 +++ ext/phar/tests/zip/files/metadata.phar.zip | Bin 0 -> 779 bytes ext/phar/tests/zip/metadata_write_commit.phpt | 83 ++++++++++++++++++ 3 files changed, 94 insertions(+) create mode 100644 ext/phar/tests/zip/files/metadata.phar.inc create mode 100644 ext/phar/tests/zip/files/metadata.phar.zip create mode 100644 ext/phar/tests/zip/metadata_write_commit.phpt diff --git a/ext/phar/tests/zip/files/metadata.phar.inc b/ext/phar/tests/zip/files/metadata.phar.inc new file mode 100644 index 0000000000..932fc961e3 --- /dev/null +++ b/ext/phar/tests/zip/files/metadata.phar.inc @@ -0,0 +1,11 @@ +setMetadata('hi there'); +$a['c'] = 'c'; +$a['c']->setMetadata(array('hi', 'there')); +$a['d'] = 'd'; +$a['d']->setMetadata(array('hi'=>'there','foo'=>'bar')); +?> diff --git a/ext/phar/tests/zip/files/metadata.phar.zip b/ext/phar/tests/zip/files/metadata.phar.zip new file mode 100644 index 0000000000000000000000000000000000000000..3c5cf0065f40ac0132cd09fb8198d851c6f8b065 GIT binary patch literal 779 zcmWIWW@cdk1Kpkd7S8*&zhDINAXtbYF|U-5p@P@t;x>>77$gRu=$IL{w#Wu30m6I? zLJWEZ8Hq*u#U-UlKvn^!b{l)3u!6q6LRDsgZc<`#YKj6#heBdeazPQLjW@Lf{4FdzVFoelLXe=R$ZUB0aA`CDBG6@ARx@qXa#1A)a4UmN;(2A`r ztdue`6-qKvi&B+7==)tZJw?hCJ8(1O%YzN$YWV4H{jIET?^7EB|HUe2miA74*K>JwPKt{3x;bx$T JPM|nu000jYl{)|c literal 0 HcmV?d00001 diff --git a/ext/phar/tests/zip/metadata_write_commit.phpt b/ext/phar/tests/zip/metadata_write_commit.phpt new file mode 100644 index 0000000000..9df032a5e1 --- /dev/null +++ b/ext/phar/tests/zip/metadata_write_commit.phpt @@ -0,0 +1,83 @@ +--TEST-- +Phar with meta-data (write) zip-based +--SKIPIF-- + +--INI-- +phar.require_hash=0 +phar.readonly=0 +--FILE-- +"; + +$files = array(); +$files['a'] = array('cont' => 'a'); +$files['b'] = array('cont' => 'b', 'meta' => 'hi there'); +$files['c'] = array('cont' => 'c', 'meta' => array('hi', 'there')); +$files['d'] = array('cont' => 'd', 'meta' => array('hi'=>'there','foo'=>'bar')); + +foreach($files as $name => $cont) { + var_dump(file_get_contents($p2name.'/'.$name)); +} + +$phar = new Phar($fname); +$phar->startBuffering(); +$phar['a']->setMetadata(42); +$phar['b']->setMetadata(NULL); +$phar['c']->setMetadata(array(25, 'foo'=>'bar')); +$phar['d']->setMetadata(true); + +foreach($files as $name => $cont) { + var_dump($phar[$name]->getMetadata()); +} +$phar->stopBuffering(); + +unset($phar); + +copy($f2name, $fname); + +$phar = new Phar($fname2); + +foreach($files as $name => $cont) { + var_dump(file_get_contents($pname.'/'.$name)); +} + +foreach($files as $name => $cont) { + var_dump($phar[$name]->getMetadata()); +} +?> +===DONE=== +--CLEAN-- + +--EXPECT-- +string(1) "a" +string(1) "b" +string(1) "c" +string(1) "d" +int(42) +NULL +array(2) { + [0]=> + int(25) + ["foo"]=> + string(3) "bar" +} +bool(true) +string(1) "a" +string(1) "b" +string(1) "c" +string(1) "d" +int(42) +NULL +array(2) { + [0]=> + int(25) + ["foo"]=> + string(3) "bar" +} +bool(true) +===DONE=== -- 2.40.0