tree 4e9fe6eeb404d5dbf365b6a020c1e0ce0fef4a27
parent d27ab4c5a5af10989b3b81de4d23b9a96bdf13d0
author Patrick Williams <patrick@stwcx.xyz> 1669637646 -0600
committer Patrick Williams <patrick@stwcx.xyz> 1669746396 -0600

unit-test: always call global formatter

There has been some confusion about the relationship between the global
and local formatters (the one here vs the one in repositories).  The
previous behavior was that if the local formatter existed then the
global formatter was ignored.  In most cases this leads to duplicative
or missing functionality.

The global formatter already has some code in place for calling local
formatters as secondary formatters.  Leverage this and ensure the
global formatter is always called.

Running the following resulted in no repositories with local formatters
failing:
```
find -maxdepth 2 -name "format-code.sh" | xargs -n1 dirname | \
    xargs -n1 openbmc-build-scripts/scripts/format-code.sh
openbmc-build-scripts/scripts/format-code.sh entity-manager
```

I also manually inspected all of the format-code scripts and they all
seem safe to utilize the global formatter as well.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I88f3266062528e7fcf6ea71515c02d2d40048ae2
