As mentioned in #169, the extension uses a lot of package-level variables, instantiated in the various files of the extension package. The most notable are:
- The logger
- The
APMServerState
- The
AgentDataServer
- The
AgentDone
signal
Replacing these variables by structs instantiated by main.go
will make it easier to track the status of the extension, especially across multiple tests. The tests could create their own instances of the structs and then be run in parallel.