public void ItMoves()
    {
        IMonster          monster    = GetMonsterMock();
        MonsterController controller = GetControllerMock(monster);

        controller = SetWithSingleWaypoint(controller, monster);

        controller.Move(new Vector3(0, 0, 1));
        monster.ReceivedWithAnyArgs().Move(new Vector3(0, 0, 1));
    }
    public void ItChangesHealthBar()
    {
        IMonster          monster    = GetMonsterMock();
        MonsterController controller = GetControllerMock(monster);

        controller = SetWithSingleWaypoint(controller, monster);

        controller.GetDamage(10);

        monster.ReceivedWithAnyArgs().ChangeHealthBar(0.1f);
    }
    public void ItHitsPlayer()
    {
        IMonster          monster    = GetMonsterMock();
        MonsterController controller = GetControllerMock(monster);

        Vector3 vect1 = new Vector3(0, 0, 1.1f);

        controller = SetWithSingleWaypointAndVector(controller, monster, vect1);

        controller.Move(vect1);
        monster.ReceivedWithAnyArgs().HitPlayer(10);
    }
    public IEnumerable itDies()
    {
        IMonster          monster    = GetMonsterMock();
        MonsterController controller = GetControllerMock(monster);

        controller = SetWithSingleWaypoint(controller, monster);

        controller.GetDamage(10000000);

        yield return(null);

        monster.ReceivedWithAnyArgs().Die(10);
    }
    public IEnumerable itChangesColorOnHit()
    {
        IMonster          monster    = GetMonsterMock();
        MonsterController controller = GetControllerMock(monster);

        controller = SetWithSingleWaypoint(controller, monster);

        controller.GetDamage(10);

        yield return(null);

        monster.ReceivedWithAnyArgs().ChangeColor(Color.black);
    }