Commit graph

24978 commits

Author SHA1 Message Date
darcywong00
067b43cfd3 Remove Answers
Removing Answers because of the setup involved with Fabric IO. Keeping this feature to Crashlytics
2018-02-14 20:48:26 +07:00
darcywong00
9cd8eed976 Tweak Crashlytics / Firebase
Using Crashlytics for crash reporting.
Trying Firebase and Crashlytics.Answers for logging events (like km_add_keyboard) for analytics

Firebase events don't persist between app launches
2018-02-14 19:37:21 +07:00
darcywong00
84ddf0c990 Add Firebase Crashlytics for crash reporting
While legacy stable kmapro releases have analytics on the Google Play Console, Google recommends [Firebase Crashlytics](https://firebase.google.com/docs/crash/) for crash reporting.
This requires a `google-services.json` file for gradle builds. A sanitized version intended for developers/Debug variant is checked into the repo, and is associated with an appliction ID `com.tavultesoft.kmapro.debug`. The one for `com.tavultesoft.kmapro` releaeses will go on the CI servers.

Breaking change: Consuming apps of KMEA will be responsible for including the Firebase dependencies. At the moment, only kmapro has been updated.
TBD: Registering KMSamples and the Test Harness with Firebase for their own `google.services.json` file.

- Log addKeyboard as an analytic event 
- Update kmapro build.sh script to allow debug-only variant
- Add info to history.md and README.md
- Add Gradle setting so CI server can use production `google-services.json` file
- Temporarily add a menu button to force a crash. This is engineering code that will be removed once analytics in a Release build is confirmed.
2018-02-14 19:37:21 +07:00
Joshua A. Horton
0725a8f195 Now takes in per-sequence error messages if specified. 2018-02-14 15:52:49 +07:00
Marc Durdin
85aac9a898
Merge pull request #597 from keymanapp/developer-setup-upgrade-fails
Developer setup fails to upgrade due to invalid version check
2018-02-14 15:43:55 +07:00
Joshua A. Horton
0f1414926b Tweaks recorder touch support to better load existing JSON. 2018-02-14 15:28:32 +07:00
Joshua A. Horton
819e37a58b Minor test runner parameter tweak for readability. 2018-02-14 14:19:55 +07:00
Joshua A. Horton
428ba42802 The new OO structure is now used by the example engine test case. 2018-02-14 14:05:19 +07:00
Joshua A. Horton
7ebb7307e7 Recorder infrastructure and UI now only need polish. 2018-02-14 13:28:45 +07:00
Marc Durdin
05c5c51863 Developer setup fails to upgrade due to invalid version check 2018-02-14 12:18:24 +07:00
Joshua A. Horton
18ba780350 Merge branch 'master' into web-350-engine-tests 2018-02-14 08:40:38 +07:00
Tom Bogle
b13af7bd10 Working implementation of kmp file association
There is no UI feedback and the newly added keyboard is not selected (checked) by default.
2018-02-13 15:44:33 -05:00
Tom Bogle
30adeb61bd WIP: Non-working explaratory code for associating KMP with Keyman IM 2018-02-13 13:41:33 -05:00
Tom Bogle
60790ee33b
Merge pull request #592 from keymanapp/mac-fix-local-deployment
[Mac] fix local deployment by running tests as a separate build step
2018-02-13 09:54:53 -05:00
Marc Durdin
044dc0cf18
Merge pull request #593 from keymanapp/windows-report-unit-test-results-to-teamcity
Support reporting Delphi unit test results back to TeamCity
2018-02-13 21:51:58 +07:00
Marc Durdin
d9f6e65075
Merge pull request #588 from keymanapp/android-use-version-in-cloud-api-calls
[android] Use version parameter in all cloud API calls
2018-02-13 21:51:32 +07:00
Joshua A. Horton
5ec722efad Added initial constructor for the KeyboardTest class. 2018-02-13 21:25:55 +07:00
Joshua A. Horton
99db1cda7f Moved Device to new file for Recorder access, + objects for auto tests. 2018-02-13 21:21:43 +07:00
Joshua A. Horton
607cefd65e InputTestSequence JSON pretty-print is "go." Fixes recorder post-merge. 2018-02-13 19:23:14 +07:00
Jacob Bullock
3016bcb624 Adding methods for prompting installing, parsing KMP, and installing 2018-02-13 02:48:38 -07:00
Jacob Bullock
bb24f7f5fd adding kmp file type 2018-02-13 02:48:11 -07:00
Marc Durdin
228dacbd67 Remove failure case 2018-02-13 16:07:32 +07:00
Marc Durdin
3bea2b0741
Merge pull request #594 from keymanapp/developer-add-rtl-to-package-json-format
Add rtl property to keyboard info in package.json
2018-02-13 16:04:50 +07:00
Marc Durdin
d7af6e8891 Test failure case 2018-02-13 16:00:10 +07:00
Marc Durdin
ef254a44df Rework to use nunit reporting to teamcity, cleanup, and don't stop the build on a failing test 2018-02-13 15:59:04 +07:00
Marc Durdin
2451e85706 Tweak path 2018-02-13 15:45:37 +07:00
Marc Durdin
be6c520a70 Try importData method of reporting test results 2018-02-13 15:37:47 +07:00
Marc Durdin
784cb53b1e Add rtl property to keyboard info in package.json 2018-02-13 15:05:04 +07:00
Marc Durdin
8e0b2c32d4
Merge pull request #589 from keymanapp/macos-use-version-in-cloud-api-calls
[mac] Include version in download dialog and use final target url
2018-02-13 14:33:03 +07:00
Marc Durdin
8ca874e470
Merge pull request #591 from keymanapp/developer-check-all-js-files-for-keyboard_info_merge
Support .js files within a keyboard package when merging .keyboard_info files
2018-02-13 14:29:14 +07:00
Marc Durdin
5cb4f20dae Remove temporary test code 2018-02-13 14:26:06 +07:00
Marc Durdin
d7d1e125c5 Temporary test for logging on teamcity 2018-02-13 14:21:36 +07:00
Marc Durdin
ea57f47e87 Report unit test results to TeamCity for Delphi tests 2018-02-13 14:03:15 +07:00
Tom Bogle
9e9a08e6cd Run IM tests as separate step to avoid interfering with local deploy
For some seemingly inexplicable reason, if the scheme is not specified, xcodebuild magically builds the app and puts it in the Debug or Release subfolder of the build folder. However, if the scheme is specified explicitly, then the app is built only in the DerivedData folder and not automatically copied to the build folder. Since the local deploy process expects to find it there, it fails. So I'm adding a subsequent step to run the tests. As an added bonus, I also suppress the IM tests for a release build since they fail to build.
2018-02-13 01:36:00 -05:00
Marc Durdin
5da353e6fb Support .js files within a keyboard package 2018-02-13 12:58:34 +07:00
Tom Bogle
016f0dc7f6 Re-added $BUILD_ACTIONS - maybe not needed 2018-02-12 23:15:04 -05:00
Joshua A. Horton
1d88348f59 Engine test + recorder build now integrated and working with CI test run. 2018-02-13 11:03:49 +07:00
Joshua A. Horton
6970c86477 Relocates the recorder into the general /source/ directory + ties its build into the test command. 2018-02-13 09:46:23 +07:00
Joshua Horton
48697c63a7
Merge pull request #581 from keymanapp/web-350-attachment-tests
KeymanWeb - Unit Testing:  Control Attachment
2018-02-13 09:14:49 +07:00
Joshua A. Horton
c0b518e549 Accidental lines left out of merge + necessitated change to the new 'engine' test case. 2018-02-13 08:46:05 +07:00
Joshua A. Horton
8e1e0bc62f Merge branch 'web-350-attachment-tests' into web-350-engine-tests 2018-02-13 08:43:37 +07:00
Joshua A. Horton
dc64f384a4 Modified 'shutdown' related code; adjusted initial definition of the 'keyman' variable to help the 'delete' succeed. 2018-02-13 08:31:35 +07:00
Joshua A. Horton
db04649d2c Merge branch 'master' into web-350-attachment-tests 2018-02-13 08:13:25 +07:00
Joshua A. Horton
506e9d1182 Adjustments as per PR review. 2018-02-13 08:09:13 +07:00
Joshua Horton
edb766b04d
Merge pull request #452 from keymanapp/web-340-chiral-font
[Web] Chiral font update
2018-02-13 07:57:00 +07:00
Joshua Horton
3bdd1857b3
Merge pull request #582 from keymanapp/web-testing-centralize-conf
Web Testing - Centralizing configuration data
2018-02-13 07:55:23 +07:00
Marc Durdin
3c033e0e22 Add version parameter to cloud query 2018-02-12 20:44:43 +07:00
Marc Durdin
8c6eadb899 Fixup url and log download keyboard attempt 2018-02-12 20:30:53 +07:00
Marc Durdin
a7b2352304 In progress, changeover to using version and new url in download dialog 2018-02-12 19:41:58 +07:00
Marc Durdin
a6bd7106c3 Use version parameter in all cloud API calls 2018-02-12 19:22:49 +07:00