Skip to content

[Feature Request] Enable Recording as a Feature for Testing #69

@JustinLivi

Description

@JustinLivi

I've just started using UnityHFSM and I'm totally in love with it.

One of the things I love is how predictable and verifiable it makes my game logic.

On the theme of verifiable, I looked into how you were writing your tests and loved the Recorder class. I've adapted it a bit for my production code by creating an interface for the runtime bits which I then implement with an empty pass-through class at runtime. This gets replaced with the real Recorder class while I'm testing to give me the full history of events and state changes.

While this is "mostly" working, it's definitely a hack. I also leverage nested state machines a fair amount and if I decorate them using the .Track method they stop working. (Obviously Track treats them as simple States, not StateMachines.) It's not the end of the world to ignore these states while testing, or to explicitly check them through the ActiveStateName property, but the ideal would be to exclusively use the beautiful pre-existing Recorder interface.

Is first-class support for a full-blown Recorder class to be exposed for the way I'm using it (or a better way!) something you'd consider?

Either way, thank you so much for this truly stellar library. It has blown me away and taken my game development to the next level!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions