class_docstr: State machine that computes the next state of a test based on the current state and
  perform actions accordingly during the state transition. For example:
  - passing -[two last results failed]-> failing: create github issue
  - failing -[last result passed]-> passing: close github issue
  - jailed -[latest result passed]-> passing: update the test's oncall
  ...
docstr: Move the test to the next state.
docstr_tok: ["Move","the","test","to","the","next","state","."]
code: def move(self) -> None:
      """
      Move the test to the next state.
      """
      from_state = self.test.get_state()
      to_state = self._next_state(from_state)
      self.test.set_state(to_state)
      if self.dry_run:
          # Don't perform any action if dry run
          return
      self._move_hook(from_state, to_state)
      self._state_hook(to_state)
  
imports: import abc
  from github import Github
  from pybuildkite.buildkite import Buildkite
  from ray_release.test import Test, TestState
  from ray_release.aws import get_secret_token
label_desc: Use image node_id 5 for calling the TestStateMachine obj's underlying member method code with example usage: obj.move() without return types