forge-cli icon indicating copy to clipboard operation
forge-cli copied to clipboard

Add tests

Open bakerkretzmar opened this issue 4 years ago • 0 comments

This PR adds tests for managing Forge workers. It mocks the necessary calls to the Forge API client and asserts that, given a specified config file and array of worker resources returned by Forge, the config file will be updated correctly and the expected calls will be made to create or delete additional workers.

One small changes to unrelated code was necessary to make these tests work for now. I actually kind of like it... but I'm open to feedback and alternatives—the config:push command now passes the console output into the sync classes as a closure, so that output from the sync classes can be expected/asserted on in tests. Commands' ->getOutput() methods return null in testing because the output methods are all mocked, so in order to test this we have to actually call ->info(), ->warn(), etc. directly.

All these tests pass, I'll add a GitHub Action in another PR to run them automatically and prove it 😅

bakerkretzmar avatar Jun 11 '21 17:06 bakerkretzmar