Esempio n. 1
0
<?php

require '../loader.php';
$reftest = new referenceTest();
$dataA = ['param' => 1];
$dataO = new stdClass(['param' => 1]);
$reftest->testA(reference::make($dataA));
test_assert($dataA['param'] === 'helloA');
$reftest->testO(reference::make($dataO));
test_assert($dataO->param === 'helloO');
test_except('tf_exception', function () use($reftest, $dataO) {
    $reftest->testA(reference::make($dataO));
});
class referenceRunner
{
    function testA($data)
    {
        $data['param'] = 'helloA';
    }
    function testO($data)
    {
        $data->param = 'helloO';
    }
}
class referenceTest
{
    protected $rr;
    function __construct()
    {
        $this->rr = new referenceRunner();
    }
Esempio n. 2
0
    return $result;
}, 'Save model');
/** @var abs_collection_item $item */
$item = $collection->clear(true)->load_only_id($id);
test_assert($item instanceof abs_collection_item, 'LOAD_ONLY_ID class');
if (!test_assert($item->id === $id, '2-LOAD_ONLY_ID Id') || !test_assert($item->title === 'title<h1>header</h1>', '2-LOAD_ONLY_ID Title') || !test_assert($item->render('title') === 'title&lt;h1&gt;header&lt;/h1&gt;', '2-LOAD_ONLY_ID Render Title') || !test_assert(count($item->render(['text', 'title'])) === 2, 'Render filter []') || !test_assert($item->text === "text<h1>header</h1>", '2-LOAD_ONLY_ID Text')) {
    test_print($item->title, $item->render('title'), $item->render());
}
$item->remove();
$item = $collection->clear(true)->load_only_id($id);
test_assert(!$item, 'REMOVE-LOAD_ONLY_ID');
if (!test_assert(($count = $collection->clear()->count_sql()) === 0, 'REMOVE-COUNT')) {
    test_print($count);
}
test_except('core_exception', function () {
    core::get_instance()->model('NotExist');
}, 'exception-test');
//
// Alloc
//
$item = $collection->alloc();
test_assert($item instanceof abs_collection_item, 'alloc.1');
test_assert($item->is_allocated(), 'is-alloc');
test_assert($item->is_new(), 'is-new');
$item->title = "@title.2";
$item->save();
test_assert(($id = $item->get_id()) > 0, 'last-id');
test_assert(!$item->is_allocated(), 'is-alloc.2');
test_assert(!$item->is_new(), 'is-new.2');
// clone one
$item->set_id(null)->save();