summaryrefslogtreecommitdiff
path: root/www/crm/wp-content/plugins/civicrm/civicrm/ext/api4/tests/phpunit/Mock/MockEntityDataStorage.php
blob: fbb10465b34eb28d0f8d5bb23ba1772bc6a77f11 (plain)
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
<?php

namespace Civi\Test\Api4\Mock;

/**
 * Simple data backend for mock basic api.
 */
class MockEntityDataStorage {

  private static $data = [];

  private static $nextId = 1;

  public static function get() {
    return self::$data;
  }

  public static function write($record) {
    if (empty($record['id'])) {
      $record['id'] = self::$nextId++;
    }
    self::$data[$record['id']] = $record;
    return $record;
  }

  public static function delete($record) {
    unset(self::$data[$record['id']]);
    return $record;
  }

}