Skip to content

Given a FSM, generate parallel tests. #22

Open
@jeffh

Description

@jeffh

Each API call is assumed atomic.

  • Add Parallel Testing to CLI & CI (to fix CI failures)
  • Automate providing the FoxlingCompiler Plugin for Releases.
  • Documentation how parallel testing works in Fox
    • Lock implementations overridden
    • Libraries that are safe to use (aka - no direct kernel threads code)
    • Testing with and without the cooperative scheduler
    • Testing with Foxling Compiler
    • Current limitations in implementation for automatic thread yielding (e.g. - no Swift support, expressions replaced, number of concurrent commands, etc.)
  • Document how to develop / compile Foxling
  • Verify: parallel testing does not work on iOS devices?
  • Document if parallel test does not work on iOS devices.
  • Remove hardcoded paths in Foxling
  • Finish overriding mach semaphores.
  • Alcatraz Support for Foxling

Bonus:

  • Good ways of testing the compiler besides End-to-End?
  • Configuring the plugin to automatically refer to its internal copy of the Foxling compiler.

Finalize:

  • Audit APIs that are alpha
  • Audit documentation that marks alpha APIs
  • Grammer / editing check of documentation.
  • Create and link issues mentioned in the documentation.

Things to consider in other PR/issues:

  • Dead-lock detection / timeout runs
  • More rewriting rules for Foxling
  • Non-brute-force linearizable verifier.

Metadata

Metadata

Assignees

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions