Changed character id to uuid

This commit is contained in:
Basilius Sauter
2018-10-06 17:27:28 +02:00
parent 0aaba1b94b
commit 04b3b6aaf9
20 changed files with 348 additions and 131 deletions
+2 -1
View File
@@ -20,7 +20,8 @@
"monolog/monolog": "^1.12", "monolog/monolog": "^1.12",
"symfony/console": "^3.0", "symfony/console": "^3.0",
"symfony/yaml": "^3.0", "symfony/yaml": "^3.0",
"d11wtq/boris": "^1.0" "d11wtq/boris": "^1.0",
"ramsey/uuid-doctrine": "^1.5"
}, },
"repositories": [ "repositories": [
{ {
Generated
+186 -2
View File
@@ -4,8 +4,8 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
"This file is @generated automatically" "This file is @generated automatically"
], ],
"hash": "0419f6d36248a11755819feead450f80", "hash": "9ce66e946e56f62ed759f6c046f18cae",
"content-hash": "9663d004ab08338fb0640f807e3c2b94", "content-hash": "5cb12bb017ac481f9d95f41a08ea4a76",
"packages": [ "packages": [
{ {
"name": "behat/transliterator", "name": "behat/transliterator",
@@ -1222,6 +1222,51 @@
], ],
"time": "2017-06-19 01:22:40" "time": "2017-06-19 01:22:40"
}, },
{
"name": "paragonie/random_compat",
"version": "v9.99.99",
"source": {
"type": "git",
"url": "https://github.com/paragonie/random_compat.git",
"reference": "84b4dfb120c6f9b4ff7b3685f9b8f1aa365a0c95"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/paragonie/random_compat/zipball/84b4dfb120c6f9b4ff7b3685f9b8f1aa365a0c95",
"reference": "84b4dfb120c6f9b4ff7b3685f9b8f1aa365a0c95",
"shasum": ""
},
"require": {
"php": "^7"
},
"require-dev": {
"phpunit/phpunit": "4.*|5.*",
"vimeo/psalm": "^1"
},
"suggest": {
"ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes."
},
"type": "library",
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Paragon Initiative Enterprises",
"email": "security@paragonie.com",
"homepage": "https://paragonie.com"
}
],
"description": "PHP 5.x polyfill for random_bytes() and random_int() from PHP 7",
"keywords": [
"csprng",
"polyfill",
"pseudorandom",
"random"
],
"time": "2018-07-02 15:55:56"
},
{ {
"name": "psr/log", "name": "psr/log",
"version": "1.0.2", "version": "1.0.2",
@@ -1269,6 +1314,145 @@
], ],
"time": "2016-10-10 12:19:37" "time": "2016-10-10 12:19:37"
}, },
{
"name": "ramsey/uuid",
"version": "3.8.0",
"source": {
"type": "git",
"url": "https://github.com/ramsey/uuid.git",
"reference": "d09ea80159c1929d75b3f9c60504d613aeb4a1e3"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/ramsey/uuid/zipball/d09ea80159c1929d75b3f9c60504d613aeb4a1e3",
"reference": "d09ea80159c1929d75b3f9c60504d613aeb4a1e3",
"shasum": ""
},
"require": {
"paragonie/random_compat": "^1.0|^2.0|9.99.99",
"php": "^5.4 || ^7.0",
"symfony/polyfill-ctype": "^1.8"
},
"replace": {
"rhumsaa/uuid": "self.version"
},
"require-dev": {
"codeception/aspect-mock": "^1.0 | ~2.0.0",
"doctrine/annotations": "~1.2.0",
"goaop/framework": "1.0.0-alpha.2 | ^1.0 | ~2.1.0",
"ircmaxell/random-lib": "^1.1",
"jakub-onderka/php-parallel-lint": "^0.9.0",
"mockery/mockery": "^0.9.9",
"moontoast/math": "^1.1",
"php-mock/php-mock-phpunit": "^0.3|^1.1",
"phpunit/phpunit": "^4.7|^5.0|^6.5",
"squizlabs/php_codesniffer": "^2.3"
},
"suggest": {
"ext-ctype": "Provides support for PHP Ctype functions",
"ext-libsodium": "Provides the PECL libsodium extension for use with the SodiumRandomGenerator",
"ext-uuid": "Provides the PECL UUID extension for use with the PeclUuidTimeGenerator and PeclUuidRandomGenerator",
"ircmaxell/random-lib": "Provides RandomLib for use with the RandomLibAdapter",
"moontoast/math": "Provides support for converting UUID to 128-bit integer (in string form).",
"ramsey/uuid-console": "A console application for generating UUIDs with ramsey/uuid",
"ramsey/uuid-doctrine": "Allows the use of Ramsey\\Uuid\\Uuid as Doctrine field type."
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "3.x-dev"
}
},
"autoload": {
"psr-4": {
"Ramsey\\Uuid\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Marijn Huizendveld",
"email": "marijn.huizendveld@gmail.com"
},
{
"name": "Thibaud Fabre",
"email": "thibaud@aztech.io"
},
{
"name": "Ben Ramsey",
"email": "ben@benramsey.com",
"homepage": "https://benramsey.com"
}
],
"description": "Formerly rhumsaa/uuid. A PHP 5.4+ library for generating RFC 4122 version 1, 3, 4, and 5 universally unique identifiers (UUID).",
"homepage": "https://github.com/ramsey/uuid",
"keywords": [
"guid",
"identifier",
"uuid"
],
"time": "2018-07-19 23:38:55"
},
{
"name": "ramsey/uuid-doctrine",
"version": "1.5.0",
"source": {
"type": "git",
"url": "https://github.com/ramsey/uuid-doctrine.git",
"reference": "2a56db8e68bff487508244f5a2008075279d0255"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/ramsey/uuid-doctrine/zipball/2a56db8e68bff487508244f5a2008075279d0255",
"reference": "2a56db8e68bff487508244f5a2008075279d0255",
"shasum": ""
},
"require": {
"doctrine/orm": "^2.5",
"php": "^5.4 || ^7.0",
"ramsey/uuid": "^3.0"
},
"require-dev": {
"jakub-onderka/php-parallel-lint": "^1.0",
"mockery/mockery": "^0.9 || ^1.1",
"php-coveralls/php-coveralls": "^1.1 || ^2.1",
"phpunit/phpunit": "^4.8 || ^5.7 || ^6.5",
"squizlabs/php_codesniffer": "^3.3"
},
"type": "library",
"autoload": {
"psr-4": {
"Ramsey\\Uuid\\Doctrine\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Marijn Huizendveld",
"email": "marijn.huizendveld@gmail.com"
},
{
"name": "Ben Ramsey",
"email": "ben@benramsey.com",
"homepage": "http://benramsey.com"
}
],
"description": "Allow the use of a ramsey/uuid UUID as Doctrine field type.",
"homepage": "https://github.com/ramsey/uuid-doctrine",
"keywords": [
"doctrine",
"guid",
"identifier",
"uuid"
],
"time": "2018-08-11 21:01:22"
},
{ {
"name": "seld/jsonlint", "name": "seld/jsonlint",
"version": "1.7.1", "version": "1.7.1",
+6
View File
@@ -6,6 +6,7 @@ namespace LotGD\Core;
use Doctrine\Common\Annotations\AnnotationRegistry; use Doctrine\Common\Annotations\AnnotationRegistry;
use Doctrine\Common\EventManager as DoctrineEventManager; use Doctrine\Common\EventManager as DoctrineEventManager;
use Doctrine\Common\Util\Debug; use Doctrine\Common\Util\Debug;
use Doctrine\DBAL\DBALException;
use Doctrine\ORM\Events as DoctrineEvents; use Doctrine\ORM\Events as DoctrineEvents;
use Doctrine\ORM\ { use Doctrine\ORM\ {
EntityManager, EntityManager,
@@ -173,6 +174,11 @@ class Bootstrap
// Create entity manager // Create entity manager
$entityManager = EntityManager::create(["pdo" => $pdo], $configuration); $entityManager = EntityManager::create(["pdo" => $pdo], $configuration);
// Register uuid type
try {
\Doctrine\DBAL\Types\Type::addType('uuid', 'Ramsey\Uuid\Doctrine\UuidType');
} catch (DBALException $e) {}
// Create Schema and update database if needed // Create Schema and update database if needed
$metaData = $entityManager->getMetadataFactory()->getAllMetadata(); $metaData = $entityManager->getMetadataFactory()->getAllMetadata();
$schemaTool = new SchemaTool($entityManager); $schemaTool = new SchemaTool($entityManager);
+12 -2
View File
@@ -4,13 +4,15 @@ declare(strict_types=1);
namespace LotGD\Core\Models; namespace LotGD\Core\Models;
use Doctrine\ORM\Mapping\MappedSuperclass; use Doctrine\ORM\Mapping\MappedSuperclass;
use Ramsey\Uuid\Uuid;
use Ramsey\Uuid\UuidInterface;
/** /**
* @MappedSuperclass * @MappedSuperclass
*/ */
abstract class BasicEnemy implements FighterInterface abstract class BasicEnemy implements FighterInterface
{ {
/** @Id @Column(type="integer") @GeneratedValue */ /** @Id @Column(type="uuid", unique=True) */
protected $id; protected $id;
/** @Column(type="string", length=50); */ /** @Column(type="string", length=50); */
protected $name; protected $name;
@@ -18,12 +20,20 @@ abstract class BasicEnemy implements FighterInterface
protected $level; protected $level;
/** @var int */ /** @var int */
protected $health; protected $health;
/**
* BasicEnemy constructor. Sets uuid upon creation.
* @throws \Exception
*/
public function __construct() {
$this->id = Uuid::uuid4();
}
/** /**
* Returns the enemy's id * Returns the enemy's id
* @return int * @return int
*/ */
public function getId(): int public function getId(): UuidInterface
{ {
return $this->id; return $this->id;
} }
+6 -2
View File
@@ -17,6 +17,8 @@ use LotGD\Core\Exceptions\BuffSlotOccupiedException;
use LotGD\Core\Tools\Model\{ use LotGD\Core\Tools\Model\{
Creator, ExtendableModel, GameAware, PropertyManager, SoftDeletable Creator, ExtendableModel, GameAware, PropertyManager, SoftDeletable
}; };
use Ramsey\Uuid\Uuid;
use Ramsey\Uuid\UuidInterface;
/** /**
* Model for a character * Model for a character
@@ -32,7 +34,7 @@ class Character implements CharacterInterface, CreateableInterface, GameAwareInt
use GameAware; use GameAware;
use ExtendableModel; use ExtendableModel;
/** @Id @Column(type="integer") @GeneratedValue */ /** @Id @Column(type="uuid", unique=True) */
private $id; private $id;
/** @Column(type="string", length=50); */ /** @Column(type="string", length=50); */
private $name; private $name;
@@ -90,6 +92,8 @@ class Character implements CharacterInterface, CreateableInterface, GameAwareInt
*/ */
public function __construct() public function __construct()
{ {
$this->id = Uuid::uuid4();
$this->properties = new ArrayCollection(); $this->properties = new ArrayCollection();
$this->buffs = new ArrayCollection(); $this->buffs = new ArrayCollection();
$this->messageThreads = new ArrayCollection(); $this->messageThreads = new ArrayCollection();
@@ -99,7 +103,7 @@ class Character implements CharacterInterface, CreateableInterface, GameAwareInt
* Returns the entity's id * Returns the entity's id
* @return int The id * @return int The id
*/ */
public function getId(): int public function getId(): UuidInterface
{ {
return $this->id; return $this->id;
} }
+3 -1
View File
@@ -3,12 +3,14 @@ declare(strict_types=1);
namespace LotGD\Core\Models; namespace LotGD\Core\Models;
use Ramsey\Uuid\UuidInterface;
/** /**
* Interface for the character model and all objects that mimick such a model. * Interface for the character model and all objects that mimick such a model.
*/ */
interface CharacterInterface extends FighterInterface interface CharacterInterface extends FighterInterface
{ {
public function getId(): int; public function getId(): UuidInterface;
public function getName(): string; public function getName(): string;
public function getDisplayName(): string; public function getDisplayName(): string;
public function getHealth(): int; public function getHealth(): int;
+2 -1
View File
@@ -10,6 +10,7 @@ use LotGD\Core\{
}; };
use LotGD\Core\Exceptions\IsNullException; use LotGD\Core\Exceptions\IsNullException;
use LotGD\Core\Models\Viewpoint; use LotGD\Core\Models\Viewpoint;
use Ramsey\Uuid\UuidInterface;
/** /**
* Provides basic implementation to mock CharacterInterface. * Provides basic implementation to mock CharacterInterface.
@@ -21,7 +22,7 @@ trait MockCharacter
throw new IsNullException(); throw new IsNullException();
} }
public function getId(): int public function getId(): UuidInterface
{ {
throw new IsNullException(); throw new IsNullException();
} }
+34 -30
View File
@@ -5,6 +5,7 @@ namespace LotGD\Core\Tests\Models;
use Doctrine\Common\Collections\Collection; use Doctrine\Common\Collections\Collection;
use Doctrine\Common\Util\Debug;
use LotGD\Core\{ use LotGD\Core\{
Battle, Battle,
DiceBag, DiceBag,
@@ -25,6 +26,9 @@ use LotGD\Core\Models\BattleEvents\{
}; };
use LotGD\Core\Tests\CoreModelTestCase; use LotGD\Core\Tests\CoreModelTestCase;
use Ramsey\Uuid\Codec\OrderedTimeCodec;
use Ramsey\Uuid\Uuid;
use Ramsey\Uuid\UuidFactory;
class BattleTest extends CoreModelTestCase class BattleTest extends CoreModelTestCase
{ {
@@ -52,8 +56,8 @@ class BattleTest extends CoreModelTestCase
{ {
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$character = $em->getRepository(Character::class)->find(1); $character = $em->getRepository(Character::class)->find("d363c077-234a-433d-834e-f1a1d3b281d8");
$monster = $em->getRepository(Monster::class)->find(1); $monster = $em->getRepository(Monster::class)->find("de84c507-9673-44e7-b665-9e43416b9c2f");
$this->assertSame(5, $monster->getLevel()); $this->assertSame(5, $monster->getLevel());
$this->assertSame(52, $monster->getMaxHealth()); $this->assertSame(52, $monster->getMaxHealth());
@@ -69,8 +73,8 @@ class BattleTest extends CoreModelTestCase
{ {
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$character = $em->getRepository(Character::class)->find(1); $character = $em->getRepository(Character::class)->find("d363c077-234a-433d-834e-f1a1d3b281d8");
$monster = $em->getRepository(Monster::class)->find(1); $monster = $em->getRepository(Monster::class)->find("de84c507-9673-44e7-b665-9e43416b9c2f");
$battle = new Battle($this->getMockGame($character), $character, $monster); $battle = new Battle($this->getMockGame($character), $character, $monster);
@@ -106,8 +110,8 @@ class BattleTest extends CoreModelTestCase
{ {
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$character = $em->getRepository(Character::class)->find(1); $character = $em->getRepository(Character::class)->find("d363c077-234a-433d-834e-f1a1d3b281d8");
$monster = $em->getRepository(Monster::class)->find(1); $monster = $em->getRepository(Monster::class)->find("de84c507-9673-44e7-b665-9e43416b9c2f");
$battle = new Battle($this->getMockGame($character), $character, $monster); $battle = new Battle($this->getMockGame($character), $character, $monster);
$battle = $battle->serialize(); $battle = $battle->serialize();
@@ -139,8 +143,8 @@ class BattleTest extends CoreModelTestCase
{ {
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$highLevelPlayer = $em->getRepository(Character::class)->find(2); $highLevelPlayer = $em->getRepository(Character::class)->find("4d01c29b-d825-4bc7-9e6e-63525155fd37");
$lowLevelMonster = $em->getRepository(Monster::class)->find(3); $lowLevelMonster = $em->getRepository(Monster::class)->find("c004bcb6-a7c1-4f9a-abc2-1711c64e23a0");
$battle = new Battle($this->getMockGame($highLevelPlayer), $highLevelPlayer, $lowLevelMonster); $battle = new Battle($this->getMockGame($highLevelPlayer), $highLevelPlayer, $lowLevelMonster);
@@ -172,8 +176,8 @@ class BattleTest extends CoreModelTestCase
{ {
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$lowLevelPlayer = $em->getRepository(Character::class)->find(3); $lowLevelPlayer = $em->getRepository(Character::class)->find("c3792b61-4e34-4710-9871-65a68ac30bb4");
$highLevelMonster = $em->getRepository(Monster::class)->find(2); $highLevelMonster = $em->getRepository(Monster::class)->find("b636df29-f72d-4e2d-9850-982e783a9e94");
$battle = new Battle($this->getMockGame($lowLevelPlayer), $lowLevelPlayer, $highLevelMonster); $battle = new Battle($this->getMockGame($lowLevelPlayer), $lowLevelPlayer, $highLevelMonster);
@@ -205,8 +209,8 @@ class BattleTest extends CoreModelTestCase
{ {
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$character = $em->getRepository(Character::class)->find(1); $character = $em->getRepository(Character::class)->find("d363c077-234a-433d-834e-f1a1d3b281d8");
$monster = $em->getRepository(Monster::class)->find(1); $monster = $em->getRepository(Monster::class)->find("de84c507-9673-44e7-b665-9e43416b9c2f");
$battle = new Battle($this->getMockGame($character), $character, $monster); $battle = new Battle($this->getMockGame($character), $character, $monster);
@@ -220,8 +224,8 @@ class BattleTest extends CoreModelTestCase
{ {
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$character = $em->getRepository(Character::class)->find(1); $character = $em->getRepository(Character::class)->find("d363c077-234a-433d-834e-f1a1d3b281d8");
$monster = $em->getRepository(Monster::class)->find(1); $monster = $em->getRepository(Monster::class)->find("de84c507-9673-44e7-b665-9e43416b9c2f");
$battle = new Battle($this->getMockGame($character), $character, $monster); $battle = new Battle($this->getMockGame($character), $character, $monster);
@@ -236,8 +240,8 @@ class BattleTest extends CoreModelTestCase
{ {
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$character = $em->getRepository(Character::class)->find(1); $character = $em->getRepository(Character::class)->find("d363c077-234a-433d-834e-f1a1d3b281d8");
$monster = $em->getRepository(Monster::class)->find(1); $monster = $em->getRepository(Monster::class)->find("de84c507-9673-44e7-b665-9e43416b9c2f");
$battle = new Battle($this->getMockGame($character), $character, $monster); $battle = new Battle($this->getMockGame($character), $character, $monster);
@@ -257,23 +261,23 @@ class BattleTest extends CoreModelTestCase
default: default:
case 0: case 0:
// Fair Battle // Fair Battle
$character = $em->getRepository(Character::class)->find(1); $character = $em->getRepository(Character::class)->find("d363c077-234a-433d-834e-f1a1d3b281d8");
$monster = $em->getRepository(Monster::class)->find(1); $monster = $em->getRepository(Monster::class)->find("de84c507-9673-44e7-b665-9e43416b9c2f");
break; break;
case 1: case 1:
// very long battle // very long battle
$character = $em->getRepository(Character::class)->find(4); $character = $em->getRepository(Character::class)->find("6565b418-55f5-4a6b-8d92-a9ef81329912");
$monster = $em->getRepository(Monster::class)->find(3); $monster = $em->getRepository(Monster::class)->find("c004bcb6-a7c1-4f9a-abc2-1711c64e23a0");
break; break;
case 2: case 2:
// player should win battle // player should win battle
$character = $em->getRepository(Character::class)->find(13); $character = $em->getRepository(Character::class)->find("1a9f63f2-3006-4e12-b272-4fd6be518a93");
$monster = $em->getRepository(Monster::class)->find(11); $monster = $em->getRepository(Monster::class)->find("7ca9c141-aaf8-44a5-9d04-b6f9923f3c66");
break; break;
case 3: case 3:
// player should lose battle // player should lose battle
$character = $em->getRepository(Character::class)->find(11); $character = $em->getRepository(Character::class)->find("24d71c26-f915-401c-8b3e-1932edf650ce");
$monster = $em->getRepository(Monster::class)->find(13); $monster = $em->getRepository(Monster::class)->find("09540b93-63c9-4d82-8501-f569f63dfc4c");
break; break;
} }
@@ -1331,7 +1335,7 @@ class BattleTest extends CoreModelTestCase
public function testBufflistGoodguyAttackModifier() public function testBufflistGoodguyAttackModifier()
{ {
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$player = $em->getRepository(Character::class)->find(1); $player = $em->getRepository(Character::class)->find("d363c077-234a-433d-834e-f1a1d3b281d8");
$game = $this->getMockGame($player); $game = $this->getMockGame($player);
$player->addBuff(new Buff([ $player->addBuff(new Buff([
@@ -1360,7 +1364,7 @@ class BattleTest extends CoreModelTestCase
public function testBufflistGoodguyDefenseModifier() public function testBufflistGoodguyDefenseModifier()
{ {
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$player = $em->getRepository(Character::class)->find(1); $player = $em->getRepository(Character::class)->find("d363c077-234a-433d-834e-f1a1d3b281d8");
$game = $this->getMockGame($player); $game = $this->getMockGame($player);
$player->addBuff(new Buff([ $player->addBuff(new Buff([
@@ -1389,7 +1393,7 @@ class BattleTest extends CoreModelTestCase
public function testBufflistGoodguyDamageModifier() public function testBufflistGoodguyDamageModifier()
{ {
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$player = $em->getRepository(Character::class)->find(1); $player = $em->getRepository(Character::class)->find("d363c077-234a-433d-834e-f1a1d3b281d8");
$game = $this->getMockGame($player); $game = $this->getMockGame($player);
$player->addBuff(new Buff([ $player->addBuff(new Buff([
@@ -1418,7 +1422,7 @@ class BattleTest extends CoreModelTestCase
public function testBufflistBadguyAttackModifier() public function testBufflistBadguyAttackModifier()
{ {
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$player = $em->getRepository(Character::class)->find(1); $player = $em->getRepository(Character::class)->find("d363c077-234a-433d-834e-f1a1d3b281d8");
$game = $this->getMockGame($player); $game = $this->getMockGame($player);
$player->addBuff(new Buff([ $player->addBuff(new Buff([
@@ -1447,7 +1451,7 @@ class BattleTest extends CoreModelTestCase
public function testBufflistBadguyDefenseModifier() public function testBufflistBadguyDefenseModifier()
{ {
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$player = $em->getRepository(Character::class)->find(1); $player = $em->getRepository(Character::class)->find("d363c077-234a-433d-834e-f1a1d3b281d8");
$game = $this->getMockGame($player); $game = $this->getMockGame($player);
$player->addBuff(new Buff([ $player->addBuff(new Buff([
@@ -1476,7 +1480,7 @@ class BattleTest extends CoreModelTestCase
public function testBufflistBadguyDamageModifier() public function testBufflistBadguyDamageModifier()
{ {
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$player = $em->getRepository(Character::class)->find(1); $player = $em->getRepository(Character::class)->find("d363c077-234a-433d-834e-f1a1d3b281d8");
$game = $this->getMockGame($player); $game = $this->getMockGame($player);
$player->addBuff(new Buff([ $player->addBuff(new Buff([
+9 -9
View File
@@ -128,7 +128,7 @@ class GameTest extends CoreModelTestCase
public function testSetGetCharacter() public function testSetGetCharacter()
{ {
$c = $this->getEntityManager()->getRepository(Character::class)->find(1); $c = $this->getEntityManager()->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000001");
$this->g->setCharacter($c); $this->g->setCharacter($c);
$this->assertEquals($c, $this->g->getCharacter()); $this->assertEquals($c, $this->g->getCharacter());
@@ -136,7 +136,7 @@ class GameTest extends CoreModelTestCase
public function testGetViewpointException() public function testGetViewpointException()
{ {
$c = $this->getEntityManager()->getRepository(Character::class)->find(1); $c = $this->getEntityManager()->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000001");
$this->g->setCharacter($c); $this->g->setCharacter($c);
// There should'nt be any listeners to provide a default scene. // There should'nt be any listeners to provide a default scene.
@@ -146,7 +146,7 @@ class GameTest extends CoreModelTestCase
public function testGetViewpointStored() public function testGetViewpointStored()
{ {
$c = $this->getEntityManager()->getRepository(Character::class)->find(2); $c = $this->getEntityManager()->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000002");
$this->g->setCharacter($c); $this->g->setCharacter($c);
$this->assertNotNull($this->g->getViewpoint()); $this->assertNotNull($this->g->getViewpoint());
@@ -154,7 +154,7 @@ class GameTest extends CoreModelTestCase
public function testGetViewpointDefault() public function testGetViewpointDefault()
{ {
$c = $this->getEntityManager()->getRepository(Character::class)->find(1); $c = $this->getEntityManager()->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000001");
$this->g->setCharacter($c); $this->g->setCharacter($c);
$this->g->getEventManager()->subscribe('/h\/lotgd\/core\/default-scene/', DefaultSceneProvider::class, 'lotgd/core/tests'); $this->g->getEventManager()->subscribe('/h\/lotgd\/core\/default-scene/', DefaultSceneProvider::class, 'lotgd/core/tests');
@@ -176,7 +176,7 @@ class GameTest extends CoreModelTestCase
public function testTakeActionNonExistant() public function testTakeActionNonExistant()
{ {
$c = $this->getEntityManager()->getRepository(Character::class)->find(1); $c = $this->getEntityManager()->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000001");
$this->g->setCharacter($c); $this->g->setCharacter($c);
// For now, I cant seem to serialize a proper ActionGroup to store in // For now, I cant seem to serialize a proper ActionGroup to store in
@@ -189,7 +189,7 @@ class GameTest extends CoreModelTestCase
public function testTakeActionNavigate() public function testTakeActionNavigate()
{ {
$c = $this->getEntityManager()->getRepository(Character::class)->find(3); $c = $this->getEntityManager()->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000003");
$this->g->setCharacter($c); $this->g->setCharacter($c);
// For now, I cant seem to serialize a proper ActionGroup to store in // For now, I cant seem to serialize a proper ActionGroup to store in
@@ -210,7 +210,7 @@ class GameTest extends CoreModelTestCase
public function testIfActionParametersAreRelayedToEvent() public function testIfActionParametersAreRelayedToEvent()
{ {
/* @var $c Character */ /* @var $c Character */
$c = $this->getEntityManager()->getRepository(Character::class)->find(2); $c = $this->getEntityManager()->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000002");
$this->g->setCharacter($c); $this->g->setCharacter($c);
// subscribe event // subscribe event
@@ -240,7 +240,7 @@ class GameTest extends CoreModelTestCase
public function testIfActionParametersTakePriorityToOtherParameters() public function testIfActionParametersTakePriorityToOtherParameters()
{ {
/* @var $c Character */ /* @var $c Character */
$c = $this->getEntityManager()->getRepository(Character::class)->find(2); $c = $this->getEntityManager()->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000002");
$this->g->setCharacter($c); $this->g->setCharacter($c);
// subscribe event // subscribe event
@@ -288,7 +288,7 @@ class GameTest extends CoreModelTestCase
return $values; return $values;
}; };
$c = $this->getEntityManager()->getRepository(Character::class)->find(3); $c = $this->getEntityManager()->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000003");
$this->g->setCharacter($c); $this->g->setCharacter($c);
$v0 = $this->g->getViewpoint(); $v0 = $this->g->getViewpoint();
+3
View File
@@ -63,6 +63,9 @@ abstract class ModelTestCase extends \PHPUnit_Extensions_Database_TestCase
self::$em = EntityManager::create(["pdo" => self::$pdo], $configuration); self::$em = EntityManager::create(["pdo" => self::$pdo], $configuration);
// Register uuid type
\Doctrine\DBAL\Types\Type::addType('uuid', 'Ramsey\Uuid\Doctrine\UuidType');
// Create Schema // Create Schema
$metaData = self::$em->getMetadataFactory()->getAllMetadata(); $metaData = self::$em->getMetadataFactory()->getAllMetadata();
$schemaTool = new SchemaTool(self::$em); $schemaTool = new SchemaTool(self::$em);
+7 -5
View File
@@ -12,6 +12,7 @@ use LotGD\Core\Models\Character;
use LotGD\Core\Models\CharacterProperty; use LotGD\Core\Models\CharacterProperty;
use LotGD\Core\Tests\CoreModelTestCase; use LotGD\Core\Tests\CoreModelTestCase;
use LotGD\Core\Models\Repositories\CharacterRepository; use LotGD\Core\Models\Repositories\CharacterRepository;
use Ramsey\Uuid\UuidInterface;
/** /**
* Tests the management of Characters * Tests the management of Characters
@@ -26,13 +27,13 @@ class CharacterModelTest extends CoreModelTestCase
*/ */
public function testSoftDeletion() public function testSoftDeletion()
{ {
$chars = $this->getEntityManager()->getRepository(Character::class)->find(3); $chars = $this->getEntityManager()->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000003");
$this->assertSame(null, $chars); $this->assertSame(null, $chars);
$allChars = $this->getEntityManager()->getRepository(Character::class)->findAll(); $allChars = $this->getEntityManager()->getRepository(Character::class)->findAll();
$this->assertSame(2, count($allChars)); $this->assertSame(2, count($allChars));
$char = $this->getEntityManager()->getRepository(Character::class)->find(1); $char = $this->getEntityManager()->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000001");
$char->delete($this->getEntityManager()); $char->delete($this->getEntityManager());
$this->getEntityManager()->flush(); $this->getEntityManager()->flush();
$this->getEntityManager()->clear(); $this->getEntityManager()->clear();
@@ -101,7 +102,7 @@ class CharacterModelTest extends CoreModelTestCase
$em->flush(); $em->flush();
$this->assertInternalType("int", $characterEntity->getId()); $this->assertInstanceOf(UuidInterface::class, $characterEntity->getId());
$this->assertSame(16, $characterEntity->getProperty("a property")); $this->assertSame(16, $characterEntity->getProperty("a property"));
$em->flush(); $em->flush();
@@ -142,7 +143,7 @@ class CharacterModelTest extends CoreModelTestCase
$rowsBefore = count($em->getRepository(Character::class)->findAll()); $rowsBefore = count($em->getRepository(Character::class)->findAll());
// Delete one row // Delete one row
$character = $em->getRepository(Character::class)->find(1); $character = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000001");
$character->delete($em); $character->delete($em);
$em->clear(); $em->clear();
@@ -163,7 +164,7 @@ class CharacterModelTest extends CoreModelTestCase
$em = $this->getEntityManager(); $em = $this->getEntityManager();
// test default values // test default values
$firstCharacter = $em->getRepository(Character::class)->find(1); $firstCharacter = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000001");
$this->assertSame(5, $firstCharacter->getProperty("dragonkills", 5)); $this->assertSame(5, $firstCharacter->getProperty("dragonkills", 5));
$this->assertNotSame(5, $firstCharacter->getProperty("dragonkills", "5")); $this->assertNotSame(5, $firstCharacter->getProperty("dragonkills", "5"));
$this->assertSame("hanniball", $firstCharacter->getProperty("petname", "hanniball")); $this->assertSame("hanniball", $firstCharacter->getProperty("petname", "hanniball"));
@@ -226,6 +227,7 @@ class CharacterModelTest extends CoreModelTestCase
$eventManager->subscribe("#h/lotgd/core/getCharacterAttack#", get_class($detectionClass), "test"); $eventManager->subscribe("#h/lotgd/core/getCharacterAttack#", get_class($detectionClass), "test");
$eventManager->subscribe("#h/lotgd/core/getCharacterDefense#", get_class($detectionClass), "test"); $eventManager->subscribe("#h/lotgd/core/getCharacterDefense#", get_class($detectionClass), "test");
$this->getEntityManager()->flush();
$this->assertSame($level*2, $character1->getAttack()); $this->assertSame($level*2, $character1->getAttack());
$this->assertSame($level*4, $character2->getDefense()); $this->assertSame($level*4, $character2->getDefense());
+23 -23
View File
@@ -24,8 +24,8 @@ class MessageModelTest extends CoreModelTestCase
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$mm=new MessageManager(); $mm=new MessageManager();
$character1 = $em->getRepository(Character::class)->find(1); $character1 = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000001");
$character2 = $em->getRepository(Character::class)->find(4); $character2 = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000004");
$thread1 = $em->getRepository(MessageThread::class)->findOrCreateFor([$character1, $character2]); $thread1 = $em->getRepository(MessageThread::class)->findOrCreateFor([$character1, $character2]);
$thread2 = $em->getRepository(MessageThread::class)->findOrCreateFor([$character2, $character1]); $thread2 = $em->getRepository(MessageThread::class)->findOrCreateFor([$character2, $character1]);
@@ -42,8 +42,8 @@ class MessageModelTest extends CoreModelTestCase
$em->flush(); $em->flush();
$em->clear(); $em->clear();
$character1 = $em->getRepository(Character::class)->find(1); $character1 = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000001");
$character2 = $em->getRepository(Character::class)->find(4); $character2 = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000004");
$thread1 = $em->getRepository(MessageThread::class)->findOrCreateFor([$character1, $character2]); $thread1 = $em->getRepository(MessageThread::class)->findOrCreateFor([$character1, $character2]);
@@ -62,10 +62,10 @@ class MessageModelTest extends CoreModelTestCase
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$mm=new MessageManager(); $mm=new MessageManager();
$character1 = $em->getRepository(Character::class)->find(1); $character1 = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000001");
$character2 = $em->getRepository(Character::class)->find(2); $character2 = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000002");
$character3 = $em->getRepository(Character::class)->findWithSoftDeleted(3); $character3 = $em->getRepository(Character::class)->findWithSoftDeleted("10000000-0000-0000-0000-000000000003");
$character4 = $em->getRepository(Character::class)->find(4); $character4 = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000004");
$thread1 = $em->getRepository(MessageThread::class)->findOrCreateFor([$character1, $character2, $character3, $character4]); $thread1 = $em->getRepository(MessageThread::class)->findOrCreateFor([$character1, $character2, $character3, $character4]);
$thread2 = $em->getRepository(MessageThread::class)->findOrCreateFor([$character4, $character2, $character1, $character3]); $thread2 = $em->getRepository(MessageThread::class)->findOrCreateFor([$character4, $character2, $character1, $character3]);
@@ -89,11 +89,11 @@ class MessageModelTest extends CoreModelTestCase
$this->assertSame(1, count($character4->getMessageThreads())); $this->assertSame(1, count($character4->getMessageThreads()));
$em->flush(); $em->flush();
$character1 = $em->getRepository(Character::class)->find(1); $character1 = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000001");
$character2 = $em->getRepository(Character::class)->find(2); $character2 = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000002");
$character3 = $em->getRepository(Character::class)->findWithSoftDeleted(3); $character3 = $em->getRepository(Character::class)->findWithSoftDeleted("10000000-0000-0000-0000-000000000003");
$character4 = $em->getRepository(Character::class)->find(4); $character4 = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000004");
$thread1 = $em->getRepository(MessageThread::class)->findOrCreateFor([$character1, $character2, $character3, $character4]); $thread1 = $em->getRepository(MessageThread::class)->findOrCreateFor([$character1, $character2, $character3, $character4]);
@@ -111,8 +111,8 @@ class MessageModelTest extends CoreModelTestCase
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$mm=new MessageManager(); $mm=new MessageManager();
$character1 = $em->getRepository(Character::class)->find(1); $character1 = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000001");
$character2 = $em->getRepository(Character::class)->find(2); $character2 = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000002");
$thread1 = $em->getRepository(MessageThread::class)->findOrCreateReadonlyFor([$character1]); $thread1 = $em->getRepository(MessageThread::class)->findOrCreateReadonlyFor([$character1]);
$thread2 = $em->getRepository(MessageThread::class)->findOrCreateReadonlyFor([$character2]); $thread2 = $em->getRepository(MessageThread::class)->findOrCreateReadonlyFor([$character2]);
@@ -124,9 +124,9 @@ class MessageModelTest extends CoreModelTestCase
$em->flush(); $em->flush();
$em->clear(); $em->clear();
$character1 = $em->getRepository(Character::class)->find(1); $character1 = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000001");
$character2 = $em->getRepository(Character::class)->find(2); $character2 = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000002");
$thread1 = $em->getRepository(MessageThread::class)->findOrCreateReadonlyFor([$character1]); $thread1 = $em->getRepository(MessageThread::class)->findOrCreateReadonlyFor([$character1]);
$thread2 = $em->getRepository(MessageThread::class)->findOrCreateReadonlyFor([$character2]); $thread2 = $em->getRepository(MessageThread::class)->findOrCreateReadonlyFor([$character2]);
@@ -154,8 +154,8 @@ class MessageModelTest extends CoreModelTestCase
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$mm=new MessageManager(); $mm=new MessageManager();
$character1 = $em->getRepository(Character::class)->find(1); $character1 = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000001");
$character2 = $em->getRepository(Character::class)->find(2); $character2 = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000002");
$thread1 = $em->getRepository(MessageThread::class)->findOrCreateReadonlyFor([$character1, $character2]); $thread1 = $em->getRepository(MessageThread::class)->findOrCreateReadonlyFor([$character1, $character2]);
$thread2 = $em->getRepository(MessageThread::class)->findOrCreateFor([$character1, $character2]); $thread2 = $em->getRepository(MessageThread::class)->findOrCreateFor([$character1, $character2]);
@@ -166,9 +166,9 @@ class MessageModelTest extends CoreModelTestCase
$em->flush(); $em->flush();
$em->clear(); $em->clear();
$character1 = $em->getRepository(Character::class)->find(1); $character1 = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000001");
$character2 = $em->getRepository(Character::class)->find(2); $character2 = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000002");
$thread1 = $em->getRepository(MessageThread::class)->findOrCreateReadonlyFor([$character1, $character2]); $thread1 = $em->getRepository(MessageThread::class)->findOrCreateReadonlyFor([$character1, $character2]);
+3 -3
View File
@@ -19,7 +19,7 @@ class MotDModelTest extends CoreModelTestCase
{ {
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$author = $em->getRepository(Character::class)->find(1); $author = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000001");
// Test normal message // Test normal message
$motd1 = $em->getRepository(MotD::class)->find(1); $motd1 = $em->getRepository(MotD::class)->find(1);
@@ -63,13 +63,13 @@ class MotDModelTest extends CoreModelTestCase
{ {
return [ return [
[[ [[
"author" => 1, "author" => "10000000-0000-0000-0000-000000000001",
"title" => "ABC_\"EFG", "title" => "ABC_\"EFG",
"body" => "Lorem îpsum etc pp", "body" => "Lorem îpsum etc pp",
"systemMessage" => false, "systemMessage" => false,
]], ]],
[[ [[
"author" => 1, "author" => "10000000-0000-0000-0000-000000000001",
"title" => "AnotherOne", "title" => "AnotherOne",
"body" => "Test a Second One", "body" => "Test a Second One",
"systemMessage" => true, "systemMessage" => true,
+15 -15
View File
@@ -40,8 +40,8 @@ class ViewpointTest extends CoreModelTestCase
$em = $this->getEntityManager(); $em = $this->getEntityManager();
// Test character with a characterScene // Test character with a characterScene
$testCharacter = $em->getRepository(Character::class)->find(2); $testCharacter = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000002");
$this->assertSame(2, $testCharacter->getId()); $this->assertSame("10000000-0000-0000-0000-000000000002", (string)$testCharacter->getId());
$characterScene = $testCharacter->getViewpoint(); $characterScene = $testCharacter->getViewpoint();
$this->assertInstanceOf(Viewpoint::class, $characterScene); $this->assertInstanceOf(Viewpoint::class, $characterScene);
@@ -49,8 +49,8 @@ class ViewpointTest extends CoreModelTestCase
$this->assertSame("This is the village.", $characterScene->getDescription()); $this->assertSame("This is the village.", $characterScene->getDescription());
// Test character without a characterScene // Test character without a characterScene
$testCharacter = $em->getRepository(Character::class)->find(1); $testCharacter = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000001");
$this->assertSame(1, $testCharacter->getId()); $this->assertSame("10000000-0000-0000-0000-000000000001", (string)$testCharacter->getId());
$characterScene = $testCharacter->getViewpoint(); $characterScene = $testCharacter->getViewpoint();
$this->assertNull($characterScene); $this->assertNull($characterScene);
@@ -63,7 +63,7 @@ class ViewpointTest extends CoreModelTestCase
{ {
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$testCharacter = $em->getRepository(Character::class)->find(2); $testCharacter = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000002");
$testScene = $em->getRepository(Scene::class)->find(2); $testScene = $em->getRepository(Scene::class)->find(2);
@@ -95,13 +95,13 @@ class ViewpointTest extends CoreModelTestCase
$ag2 $ag2
]; ];
$input = $em->getRepository(Viewpoint::class)->find(2); $input = $em->getRepository(Viewpoint::class)->find("10000000-0000-0000-0000-000000000002");
$input->setActionGroups($actionGroups); $input->setActionGroups($actionGroups);
$input->save($em); $input->save($em);
$em->clear(); $em->clear();
$output = $em->getRepository(Viewpoint::class)->find(2); $output = $em->getRepository(Viewpoint::class)->find("10000000-0000-0000-0000-000000000002");
$this->assertEquals($actionGroups, $output->getActionGroups()); $this->assertEquals($actionGroups, $output->getActionGroups());
$this->assertEquals($ag2, $input->findActionGroupById('id2')); $this->assertEquals($ag2, $input->findActionGroupById('id2'));
@@ -124,13 +124,13 @@ class ViewpointTest extends CoreModelTestCase
$attachments = [$a1, $a2]; $attachments = [$a1, $a2];
$input = $em->getRepository(Viewpoint::class)->find(2); $input = $em->getRepository(Viewpoint::class)->find("10000000-0000-0000-0000-000000000002");
$input->setAttachments($attachments); $input->setAttachments($attachments);
$input->save($em); $input->save($em);
$em->clear(); $em->clear();
$output = $em->getRepository(Viewpoint::class)->find(2); $output = $em->getRepository(Viewpoint::class)->find("10000000-0000-0000-0000-000000000002");
$this->assertEquals($attachments, $output->getAttachments()); $this->assertEquals($attachments, $output->getAttachments());
$this->assertEquals('baz', $output->getAttachments()[0]->getFoo()); $this->assertEquals('baz', $output->getAttachments()[0]->getFoo());
$this->assertEquals('fiz', $output->getAttachments()[1]->getFoo()); $this->assertEquals('fiz', $output->getAttachments()[1]->getFoo());
@@ -160,13 +160,13 @@ class ViewpointTest extends CoreModelTestCase
$ag2 $ag2
]; ];
$input = $em->getRepository(Viewpoint::class)->find(2); $input = $em->getRepository(Viewpoint::class)->find("10000000-0000-0000-0000-000000000002");
$input->setActionGroups($actionGroups); $input->setActionGroups($actionGroups);
$input->save($em); $input->save($em);
$em->clear(); $em->clear();
$output = $em->getRepository(Viewpoint::class)->find(2); $output = $em->getRepository(Viewpoint::class)->find("10000000-0000-0000-0000-000000000002");
// Not finding the scene ID should change nothing. // Not finding the scene ID should change nothing.
$output->removeActionsWithSceneId(1000); $output->removeActionsWithSceneId(1000);
@@ -189,7 +189,7 @@ class ViewpointTest extends CoreModelTestCase
public function testChangingSceneDescription() public function testChangingSceneDescription()
{ {
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$testCharacter = $em->getRepository(Character::class)->find(2); $testCharacter = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000002");
$characterScene = $testCharacter->getViewpoint(); $characterScene = $testCharacter->getViewpoint();
$this->assertSame("This is the village.", $characterScene->getDescription()); $this->assertSame("This is the village.", $characterScene->getDescription());
@@ -201,7 +201,7 @@ class ViewpointTest extends CoreModelTestCase
public function testClearingSceneDescription() public function testClearingSceneDescription()
{ {
$em = $this->getEntityManager(); $em = $this->getEntityManager();
$testCharacter = $em->getRepository(Character::class)->find(2); $testCharacter = $em->getRepository(Character::class)->find("10000000-0000-0000-0000-000000000002");
$characterScene = $testCharacter->getViewpoint(); $characterScene = $testCharacter->getViewpoint();
$characterScene->clearDescription(); $characterScene->clearDescription();
@@ -235,14 +235,14 @@ class ViewpointTest extends CoreModelTestCase
$ag2 $ag2
]; ];
$input = $em->getRepository(Viewpoint::class)->find(2); $input = $em->getRepository(Viewpoint::class)->find("10000000-0000-0000-0000-000000000002");
$input->setActionGroups($actionGroups); $input->setActionGroups($actionGroups);
$input->save($em); $input->save($em);
$em->clear(); $em->clear();
/** @var Viewpoint $viewpoint */ /** @var Viewpoint $viewpoint */
$viewpoint = $em->getRepository(Viewpoint::class)->find(2); $viewpoint = $em->getRepository(Viewpoint::class)->find("10000000-0000-0000-0000-000000000002");
$actionGroupId1 = $viewpoint->findActionGroupById("id1"); $actionGroupId1 = $viewpoint->findActionGroupById("id1");
$actionGroupId2 = $viewpoint->findActionGroupById("id2"); $actionGroupId2 = $viewpoint->findActionGroupById("id2");
+13 -13
View File
@@ -1,48 +1,48 @@
characters: characters:
- -
id: 1 id: "d363c077-234a-433d-834e-f1a1d3b281d8"
name: "Player" name: "Player"
displayName: "The Player" displayName: "The Player"
health: 100 health: 100
maxhealth: 100 maxhealth: 100
level: 10 level: 10
- -
id: 2 id: "4d01c29b-d825-4bc7-9e6e-63525155fd37"
name: "High Level Char" name: "High Level Char"
displayName: "High Level Char" displayName: "High Level Char"
health: 1000 health: 1000
maxhealth: 1000 maxhealth: 1000
level: 100 level: 100
- -
id: 3 id: "c3792b61-4e34-4710-9871-65a68ac30bb4"
name: "Low Level Char" name: "Low Level Char"
displayName: "Low Level Char" displayName: "Low Level Char"
health: 10 health: 10
maxhealth: 10 maxhealth: 10
level: 1 level: 1
- -
id: 4 id: "6565b418-55f5-4a6b-8d92-a9ef81329912"
name: "Low Damage Char" name: "Low Damage Char"
displayName: "Low Damage Char" displayName: "Low Damage Char"
health: 500 health: 500
maxhealth: 500 maxhealth: 500
level: 0 level: 0
- -
id: 10 id: "539e4bb0-84d1-49ed-a697-ff449991e9b7"
name: "Level 10 Character" name: "Level 10 Character"
displayName: "Level 10 Character" displayName: "Level 10 Character"
health: 100 health: 100
maxhealth: 100 maxhealth: 100
level: 10 level: 10
- -
id: 11 id: "24d71c26-f915-401c-8b3e-1932edf650ce"
name: "Level 11 Character" name: "Level 11 Character"
displayName: "Level 11 Character" displayName: "Level 11 Character"
health: 110 health: 110
maxhealth: 110 maxhealth: 110
level: 11 level: 11
- -
id: 13 id: "1a9f63f2-3006-4e12-b272-4fd6be518a93"
name: "Level 13 Character" name: "Level 13 Character"
displayName: "Level 13 Character" displayName: "Level 13 Character"
health: 130 health: 130
@@ -50,26 +50,26 @@ characters:
level: 13 level: 13
monsters: monsters:
- -
id: 1 id: "de84c507-9673-44e7-b665-9e43416b9c2f"
name: "Evil Monster" name: "Evil Monster"
level: 5 level: 5
- -
id: 2 id: "b636df29-f72d-4e2d-9850-982e783a9e94"
name: "High Dragon" name: "High Dragon"
level: 100 level: 100
- -
id: 3 id: "c004bcb6-a7c1-4f9a-abc2-1711c64e23a0"
name: "Stone" name: "Stone"
level: 1 level: 1
- -
id: 10 id: "f1d1f672-e308-420e-939f-cbb39285b222"
name: "Level 10 Monster" name: "Level 10 Monster"
level: 10 level: 10
- -
id: 11 id: "7ca9c141-aaf8-44a5-9d04-b6f9923f3c66"
name: "Level 11 Monster" name: "Level 11 Monster"
level: 11 level: 11
- -
id: 13 id: "09540b93-63c9-4d82-8501-f569f63dfc4c"
name: "Level 13 Monster" name: "Level 13 Monster"
level: 13 level: 13
+4 -4
View File
@@ -1,18 +1,18 @@
characters: characters:
- -
id: 1 id: "10000000-0000-0000-0000-000000000001"
name: "Testcharacter 1" name: "Testcharacter 1"
displayName: "Testcharacter 1" displayName: "Testcharacter 1"
health: 0 health: 0
maxhealth: 100 maxhealth: 100
- -
id: 2 id: "10000000-0000-0000-0000-000000000002"
name: "Testcharacter 2" name: "Testcharacter 2"
displayName: "Testcharacter 2" displayName: "Testcharacter 2"
health: 90 health: 90
maxhealth: 90 maxhealth: 90
- -
id: 3 id: "10000000-0000-0000-0000-000000000003"
name: "Testcharacter 3" name: "Testcharacter 3"
displayName: "Testcharacter 3 (deleted)" displayName: "Testcharacter 3 (deleted)"
health: 90 health: 90
@@ -20,6 +20,6 @@ characters:
deletedAt: "2011-11-11 11:11:11" deletedAt: "2011-11-11 11:11:11"
character_properties: character_properties:
- -
owner_id: 1 owner_id: "10000000-0000-0000-0000-000000000001"
propertyName: "test" propertyName: "test"
propertyValue: 's:5:"hallo";' propertyValue: 's:5:"hallo";'
+4 -4
View File
@@ -1,19 +1,19 @@
characters: characters:
- -
id: 1 id: "10000000-0000-0000-0000-000000000001"
name: "Char without a Scene" name: "Char without a Scene"
displayName: "A" displayName: "A"
- -
id: 2 id: "10000000-0000-0000-0000-000000000002"
name: "Char with a Scene" name: "Char with a Scene"
displayName: "B" displayName: "B"
- -
id: 3 id: "10000000-0000-0000-0000-000000000003"
name: "Char without a Scene" name: "Char without a Scene"
displayName: "C" displayName: "C"
viewpoints: viewpoints:
- -
owner_id: 2 owner_id: "10000000-0000-0000-0000-000000000002"
title: "The Village" title: "The Village"
description: "This is the village." description: "This is the village."
template: "lotgd/tests/village" template: "lotgd/tests/village"
+7 -7
View File
@@ -1,19 +1,19 @@
characters: characters:
- -
id: 1 id: "10000000-0000-0000-0000-000000000001"
name: "Testcharacter 1" name: "Testcharacter 1"
displayName: "Testcharacter 1" displayName: "Testcharacter 1"
- -
id: 2 id: "10000000-0000-0000-0000-000000000002"
name: "Testcharacter 2" name: "Testcharacter 2"
displayName: "Testcharacter 2" displayName: "Testcharacter 2"
- -
id: 3 id: "10000000-0000-0000-0000-000000000003"
name: "Testcharacter 1" name: "Testcharacter 1"
displayName: "Deleted Testcharacter" displayName: "Deleted Testcharacter"
deletedAt: "2011-11-11 11:11:11" deletedAt: "2011-11-11 11:11:11"
- -
id: 4 id: "10000000-0000-0000-0000-000000000004"
name: "Testcharacter 3" name: "Testcharacter 3"
displayName: "Testcharacter 3" displayName: "Testcharacter 3"
message_threads: message_threads:
@@ -23,7 +23,7 @@ message_threads:
messages: messages:
- -
id: 1 id: 1
author_id: 1 author_id: "10000000-0000-0000-0000-000000000001"
thread_id: 1 thread_id: 1
message: "Hi!" message: "Hi!"
createdAt: "2000-01-01 00:00:01" createdAt: "2000-01-01 00:00:01"
@@ -31,7 +31,7 @@ messages:
message_threads_x_characters: message_threads_x_characters:
- -
messagethread_id: 1 messagethread_id: 1
character_id: 1 character_id: "10000000-0000-0000-0000-000000000001"
- -
messagethread_id: 1 messagethread_id: 1
character_id: 2 character_id: "10000000-0000-0000-0000-000000000002"
+6 -6
View File
@@ -1,18 +1,18 @@
characters: characters:
- -
id: 1 id: "10000000-0000-0000-0000-000000000001"
name: "Testcharacter 1" name: "Testcharacter 1"
displayName: "Testcharacter 1" displayName: "Testcharacter 1"
health: 0 health: 0
maxhealth: 100 maxhealth: 100
- -
id: 2 id: "10000000-0000-0000-0000-000000000002"
name: "Testcharacter 2" name: "Testcharacter 2"
displayName: "Testcharacter 2" displayName: "Testcharacter 2"
health: 90 health: 90
maxhealth: 90 maxhealth: 90
- -
id: 3 id: "10000000-0000-0000-0000-000000000003"
name: "Testcharacter 1" name: "Testcharacter 1"
displayName: "Deleted Testcharacter" displayName: "Deleted Testcharacter"
health: 200 health: 200
@@ -21,21 +21,21 @@ characters:
motd: motd:
- -
id: 1 id: 1
author_id: 1 author_id: "10000000-0000-0000-0000-000000000001"
title: "This is the title" title: "This is the title"
body: "This is the body of the message" body: "This is the body of the message"
creationTime: "2016-05-03 14:19:12" creationTime: "2016-05-03 14:19:12"
systemMessage: false systemMessage: false
- -
id: 2 id: 2
author_id: 1 author_id: "10000000-0000-0000-0000-000000000001"
title: "This is a system message" title: "This is a system message"
body: "This is the body of the system message" body: "This is the body of the system message"
creationTime: "2016-05-04 14:19:12" creationTime: "2016-05-04 14:19:12"
systemMessage: true systemMessage: true
- -
id: 3 id: 3
author_id: 3 author_id: "10000000-0000-0000-0000-000000000003"
title: "This is an old message." title: "This is an old message."
body: "This is an old message." body: "This is an old message."
creationTime: "2002-12-09 15:13:59" creationTime: "2002-12-09 15:13:59"
+3 -3
View File
@@ -1,15 +1,15 @@
characters: characters:
- -
id: 1 id: "10000000-0000-0000-0000-000000000001"
name: "Char without a Scene" name: "Char without a Scene"
displayName: "A" displayName: "A"
- -
id: 2 id: "10000000-0000-0000-0000-000000000002"
name: "Char with a Scene" name: "Char with a Scene"
displayName: "B" displayName: "B"
viewpoints: viewpoints:
- -
owner_id: 2 owner_id: "10000000-0000-0000-0000-000000000002"
title: "The Village" title: "The Village"
description: "This is the village." description: "This is the village."
template: "lotgd/tests/village" template: "lotgd/tests/village"