/** * {@inheritdoc} */ public function create($name, UserInterface $user, CommitInterface $commit) { $reference = new Reference(); $reference->setHash($this->createHash($user, $name)); $reference->setName($name); $reference->setUser($user); $reference->setCommit($commit); return $this->database->store($reference); }
/** * @dataProvider dataProvider * @param string $name * @param Commit $commit * @param Commit $commit2 * @param Tree $tree * @param UserInterface $user */ public function testUpdateReference($name, Commit $commit, Commit $commit2, Tree $tree, UserInterface $user) { $hash = '123-123-123'; $database = $this->getDatabase(); $database->store($tree); $database->store($commit); $database->store($commit2); $reference = new Reference(); $reference->setHash($hash); $reference->setCommit($commit); $reference->setUser($user); $reference->setName($name); $database->store($reference); $referenceManager = $this->getReferenceManager(); $reference2 = $referenceManager->update($reference, $commit2); $this->assertEquals($reference2, $reference); /** @var ReferenceInterface $result */ $result = $database->fetch($hash, Reference::class); $this->assertEquals($hash, $result->getHash()); $this->assertEquals($name, $result->getName()); $this->assertEquals($commit2->getHash(), $result->getCommit()->getHash()); $this->assertEquals($user->getUsername(), $result->getUser()->getUsername()); }