For the TypeDoc plugin to correctly pull information from `@appium/types` and `@appium/base-driver`, they both need `tsconfig.json` files.
They currently _have_ `tsconfig.json` files, but they extend base configs in the monorepo root, which is problematic. Moving the configs into a package seems reasonable. Further, all packages must publish `tsconfig.json`. There's precedent for publishing a `tsconfig.json` this way.
FWIW the `paths` and `references` fields in the `tsconfig.json` files seem to be ignored by TypeDoc, so we can get away with this.
This is getting pretty close, but:
- Commands from a driver will show even w/o a `newMethodMap` or `execMethodMap`; it is able to understand that it's overriding `BaseDriver`
- It's also able to understand the associated routes
- And it's able to understand the routes even if `BaseDriver` does not implement it
Still working on the parameters display, but we have the name override working at least.
Added some docstrings in `fake-driver`, `base-driver` for testing
* docs: update build status link
Since June 15th, 2021, the building on travis-ci.org is ceased. Please use travis-ci.com from now on.
* docs: Fix broken link
* docs: Remove Travis CI build status
* fix(appium): inability to find automationName inside appium:options
we fixed this before but only fixed it in basedriver's createSession, which is not
actually called by Appium's createSession (though maybe it should be)
* test(base-driver): remove appium:options test
Manifest migrations were not being fully applied due to a method in `Manifest` which refused to overwrite data.
- `Manifest` now has full control of the manifest file and its in-memory representation. Nothing else should ever modify the in-memory data directly; instead, use its API. This restriction also applies to migrations.
- Corrected some incorrect explanations in `manifest-migrations`
- `Manifest#addExtension` became `Manifest#setExtension` and allows overwriting of data, which prevented migrations from being fully applied.
- More tests
* feat(base): add get computed role and label in W3C v2
* add command names
* chore: add type
* chore: use `?` instead of `| null`
Co-authored-by: Christopher Hiller <boneskull@boneskull.com>
* Revert "chore: use `?` instead of `| null`"
This reverts commit 62af5e80ac.
Co-authored-by: Christopher Hiller <boneskull@boneskull.com>
The manifest file was not getting its migrations applied _to disk_ in all situations. Essentially: the migration could repeat over and over, depending on the environment--the changes would only exist in memory.
Added a test, as well. I didn't originally add a test because the whole migration thing came out of a rabbit hole intended to fix a separate issue. My bad!
The problem was that after we published a new major of `@appium/fake-driver`, the `updateVersion` field of the response was `null`, but `unsafeUpdateVersion` was populated; the test only used the former. Now, the test uses `updateVersion` but falls back to `unsafeUpdateVersion`.