- Fixing SystemResource
- Adding tests for StorageManager - Updating doc
This commit is contained in:
parent
cc501439af
commit
dbd5b5bb6e
12 changed files with 547 additions and 59 deletions
94
tests/Util/SampleStorageBackend.php
Normal file
94
tests/Util/SampleStorageBackend.php
Normal file
|
@ -0,0 +1,94 @@
|
|||
<?php
|
||||
|
||||
namespace Friendica\Test\Util;
|
||||
|
||||
use Friendica\Model\Storage\IStorage;
|
||||
|
||||
use Friendica\Core\L10n\L10n;
|
||||
|
||||
/**
|
||||
* A backend storage example class
|
||||
*/
|
||||
class SampleStorageBackend implements IStorage
|
||||
{
|
||||
const NAME = 'Sample Storage';
|
||||
|
||||
/** @var L10n */
|
||||
private $l10n;
|
||||
|
||||
/** @var array */
|
||||
private $options = [
|
||||
'filename' => [
|
||||
'input', // will use a simple text input
|
||||
'The file to return', // the label
|
||||
'sample', // the current value
|
||||
'Enter the path to a file', // the help text
|
||||
// no extra data for 'input' type..
|
||||
],
|
||||
];
|
||||
/** @var array Just save the data in memory */
|
||||
private $data = [];
|
||||
|
||||
/**
|
||||
* SampleStorageBackend constructor.
|
||||
*
|
||||
* @param L10n $l10n The configuration of Friendica
|
||||
*
|
||||
* You can add here every dynamic class as dependency you like and add them to a private field
|
||||
* Friendica automatically creates these classes and passes them as argument to the constructor
|
||||
*/
|
||||
public function __construct(L10n $l10n)
|
||||
{
|
||||
$this->l10n = $l10n;
|
||||
}
|
||||
|
||||
public function get(string $reference)
|
||||
{
|
||||
// we return always the same image data. Which file we load is defined by
|
||||
// a config key
|
||||
return $this->data[$reference] ?? null;
|
||||
}
|
||||
|
||||
public function put(string $data, string $reference = '')
|
||||
{
|
||||
if ($reference === '') {
|
||||
$reference = 'sample';
|
||||
}
|
||||
|
||||
$this->data[$reference] = $data;
|
||||
|
||||
return $reference;
|
||||
}
|
||||
|
||||
public function delete(string $reference)
|
||||
{
|
||||
if (isset($this->data[$reference])) {
|
||||
unset($this->data[$reference]);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public function getOptions()
|
||||
{
|
||||
return $this->options;
|
||||
}
|
||||
|
||||
public function saveOptions(array $data)
|
||||
{
|
||||
$this->options = $data;
|
||||
|
||||
// no errors, return empty array
|
||||
return $this->options;
|
||||
}
|
||||
|
||||
public function __toString()
|
||||
{
|
||||
return self::NAME;
|
||||
}
|
||||
|
||||
public static function getName()
|
||||
{
|
||||
return self::NAME;
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue