38 lines
1,007 B
Markdown
38 lines
1,007 B
Markdown
# mattermost_push_plugin_example
|
|
|
|
Thin Flutter app for exercising `mattermost_push_plugin` in isolation from any
|
|
real consuming product app.
|
|
|
|
## Purpose
|
|
|
|
This app is the repository's integration test harness. Keep it small and focused
|
|
on the plugin contract:
|
|
|
|
- plugin registration in a real Flutter application
|
|
- method channel and event channel behavior
|
|
- notification-open routing callbacks
|
|
- Android manifest merge behavior
|
|
- manual smoke testing for Firebase FCM and Mattermost ACK flows
|
|
|
|
Product-specific UI, authentication, and navigation should stay in consuming
|
|
apps. This app should only include the minimum surface needed to prove the
|
|
plugin works independently.
|
|
|
|
## Verification
|
|
|
|
Run these checks from this directory:
|
|
|
|
```sh
|
|
flutter analyze
|
|
flutter test
|
|
flutter test integration_test
|
|
```
|
|
|
|
Run Android native unit tests from `example/android`:
|
|
|
|
```sh
|
|
./gradlew testDebugUnitTest
|
|
```
|
|
|
|
Android Gradle tests require a configured Android SDK via `ANDROID_HOME` or
|
|
`example/android/local.properties`.
|