Update the plugin API test cases to add methods that help ensure the API can
remain stable. These include:
- Test to ensure that no new abstract methods are added. If any new abstract
methods are introduced, then this will break backward compatibility, and an
error will be printed.
- Test to ensure that no abstract methods are removed. If any existing
abstract methods are removed, then it has the potential to break backward
compatibility, and an error will be printed.
- Test to ensure that no existing public methods are removed. If any public
methods are removed, then this has the potential to break backward
compatibility, and an error will be printed.
- Test to ensure that no new public methods are added. This isn't a problem in
itself, and it's perfectly acceptable to add new public methods without
impacting backward compatibility. However, the test will still fail until
the test case is updated to account for this new method so that we can ensure
that the new method won't be removed or altered in the future in a way that
could impact backward compatibility.