Skip to content

Commit

Permalink
Add mock/stub for the prefix generator.
Browse files Browse the repository at this point in the history
Fixes first round of test failures, and allows another set to fail :)
  • Loading branch information
mrubinsk committed Jun 5, 2015
1 parent 1d9803d commit 657f1c5
Show file tree
Hide file tree
Showing 3 changed files with 59 additions and 2 deletions.
10 changes: 8 additions & 2 deletions framework/Kolab_Storage/package.xml
Expand Up @@ -11,7 +11,7 @@
<email>p@rdus.de</email>
<active>yes</active>
</lead>
<date>2015-05-18</date>
<date>2015-06-05</date>
<version>
<release>2.1.5</release>
<api>2.1.0</api>
Expand Down Expand Up @@ -120,6 +120,9 @@
<file name="Type.php" role="php" />
<file name="Types.php" role="php" />
</dir> <!-- /lib/Horde/Kolab/Storage/Folder -->
<dir name="HistoryPrefix">
<file name="Mock.php" role="php" />
</dir> <!-- /lib/Horde/Kolab/Storage/HistoryPrefix -->
<dir name="List">
<dir name="Manipulation">
<dir name="Decorator">
Expand Down Expand Up @@ -513,6 +516,7 @@
<dir name="Stub">
<file name="DataQuery.php" role="test" />
<file name="Driver.php" role="test" />
<file name="HistoryPrefix.php" role="test" />
</dir> <!-- /test/Horde/Kolab/Storage/Stub -->
<dir name="Unit">
<dir name="Cache">
Expand Down Expand Up @@ -792,6 +796,7 @@
<install as="Horde/Kolab/Storage/Folder/Namespace/Element/Shared.php" name="lib/Horde/Kolab/Storage/Folder/Namespace/Element/Shared.php" />
<install as="Horde/Kolab/Storage/Folder/Namespace/Element/SharedWithPrefix.php" name="lib/Horde/Kolab/Storage/Folder/Namespace/Element/SharedWithPrefix.php" />
<install as="Horde/Kolab/Storage/Folder/Stamp/Uids.php" name="lib/Horde/Kolab/Storage/Folder/Stamp/Uids.php" />
<install as="Horde/Kolab/Storage/HistoryPrefix/Mock.php" name="lib/Horde/Kolab/Storage/HistoryPrefix/Mock.php" />
<install as="Horde/Kolab/Storage/List/Cache.php" name="lib/Horde/Kolab/Storage/List/Cache.php" />
<install as="Horde/Kolab/Storage/List/Exception.php" name="lib/Horde/Kolab/Storage/List/Exception.php" />
<install as="Horde/Kolab/Storage/List/Manipulation.php" name="lib/Horde/Kolab/Storage/List/Manipulation.php" />
Expand Down Expand Up @@ -940,6 +945,7 @@
<install as="Horde/Kolab/Storage/Server/DriverTest.php" name="test/Horde/Kolab/Storage/Server/DriverTest.php" />
<install as="Horde/Kolab/Storage/Stub/DataQuery.php" name="test/Horde/Kolab/Storage/Stub/DataQuery.php" />
<install as="Horde/Kolab/Storage/Stub/Driver.php" name="test/Horde/Kolab/Storage/Stub/Driver.php" />
<install as="Horde/Kolab/Storage/Stub/HistoryPrefix.php" name="test/Horde/Kolab/Storage/Stub/HistoryPrefix.php" />
<install as="Horde/Kolab/Storage/Unit/CachedTest.php" name="test/Horde/Kolab/Storage/Unit/CachedTest.php" />
<install as="Horde/Kolab/Storage/Unit/CacheTest.php" name="test/Horde/Kolab/Storage/Unit/CacheTest.php" />
<install as="Horde/Kolab/Storage/Unit/FactoryTest.php" name="test/Horde/Kolab/Storage/Unit/FactoryTest.php" />
Expand Down Expand Up @@ -1394,7 +1400,7 @@
<stability>
<release>stable</release>
<api>stable</api></stability>
<date>2015-05-18</date>
<date>2015-06-05</date>
<license uri="http://www.horde.org/licenses/lgpl21">LGPL-2.1</license>
<notes>
*
Expand Down
@@ -0,0 +1,50 @@
<?php
/**
* History system prefix generator for use with Kolab_Storage.
*
* @author Thomas Jarosch <thomas.jarosch@intra2net.com>
* @author Michael J Rubinsky <mrubinsk@horde.org>
* @category Horde
* @license http://www.horde.org/licenses/lgpl21 LGPL 2.1
* @link http://pear.horde.org/index.php?package=Kolab_Storage
*/

/**
* @author Thomas Jarosch <thomas.jarosch@intra2net.com>
* @author Michael J Rubinsky <mrubinsk@horde.org>
* @category Horde
* @license http://www.horde.org/licenses/lgpl21 LGPL 2.1
* @link http://pear.horde.org/index.php?package=Kolab_Storage
*/
class Horde_Kolab_Storage_Stub_HistoryPrefix
implements Horde_Kolab_Storage_HistoryPrefix
{
/**
* Mock mapping. Basically the stock Horde app mapping.
*
* @var array
*/
protected static $_map = array(
'contact' => 'turba',
'event' => 'kronolith',
'note' => 'mnemo',
'task' => 'nag'
);

/**
* Generate a prefix for the History system for the given Kolab data.
*
* @param Horde_Kolab_Storage_Data $data The data object.
*
* @return string The History prefix.
*/
public static function getPrefix(Horde_Kolab_Storage_Data $data)
{
$app = self::$_map[$data->getType()];

return empty($app)
? false
: sprintf('%s:internal_id:', $app);
}

}
Expand Up @@ -538,6 +538,7 @@ protected function getDataStorage(
'driver' => 'mock',
'params' => $data,
'logger' => $this->getMock('Horde_Log_Logger'),
'history_prefix_generator' => new Horde_Kolab_Storage_Stub_HistoryPrefix()
),
$params
)
Expand Down

0 comments on commit 657f1c5

Please sign in to comment.