Ross Goldberg
3d9ea972f9
Cleanup code.
...
Partial #592
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-23 06:01:42 -04:00
Ross Goldberg
c2892626d7
Fix search & uninstall tests.
...
Partial #592
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-23 06:01:40 -04:00
Ross Goldberg
7cd8c1436b
Downgrade Nimble & Quick to fix testing on newer Xcode versions.
...
Resolve #583
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-18 10:28:44 -04:00
Ross Goldberg
20c08eb855
Update README.md
.
...
Resolve #559
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-15 07:49:15 -04:00
Ross Goldberg
280b38dfe8
Add media=software
query item to lookup URL to improve results.
...
Reorder query items for both lookup URLs & search URLs.
Partial #561
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-14 16:29:47 -04:00
Ross Goldberg
6c5a277ad9
Add & use Entity.desktopSoftware
instead of macSoftware
.
...
`desktopSoftware` returns info (including version & description) that aligns with what is displayed earlier in the App Store, while `macSoftware` is at least sometimes out of alignment.
Partial #561
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-14 16:24:39 -04:00
Ross Goldberg
265326dede
Add captureStream(…)
to observe stdout & stderr in tests.
...
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-14 05:05:45 -04:00
Ross Goldberg
dccac33abb
Improve tests.
...
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-14 04:40:01 -04:00
Ross Goldberg
f8d7a36a4c
Upgrade test dependencies.
...
Quick upgrade necessary if we ever switch from PromiseKit to Swift concurrency.
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-14 04:39:51 -04:00
Ross Goldberg
006273bb81
Standardize names of variables & parameters relating to AppIDs.
...
Resolve #478
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-14 04:10:39 -04:00
Ross Goldberg
39f77c01a9
Create typealias AppID = UInt64
.
...
Use `AppID` everywhere appropriate.
Associated appID cleanup.
Partial #478
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-14 04:10:38 -04:00
Ross Goldberg
388d963cd1
Do not return Result (or anything else) from command run(…) functions.
...
Throw when failure. Normal Void return when success.
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-14 03:44:12 -04:00
Ross Goldberg
3b86deb63e
Rename 2 test files that weren't renamed in previous commit to preserve history.
...
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-14 03:44:11 -04:00
Ross Goldberg
2535e3da42
Use Swift Argument Parser instead of Commandant.
...
Command structs are nested types of Mas.
Renamed structs.
Limit code visibility as much as possible.
Standardize variable names.
Standardize spacing.
Fix a few tests.
Disable a useless test.
Remove unnecessary test stdout output.
Get swift-format from Brewfile instead of from Package.swift
since swift-format depends on an old version of swift-argument-parser.
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-14 03:44:11 -04:00
Ross Goldberg
6793a91e03
Remove unnecessary explicit inits.
...
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-14 03:44:10 -04:00
Ross Goldberg
d413d8cfa1
Move MasKit module to mas.
...
Move MasKitTests module to masTests.
Rename MasKit enum as Mas.
Upgrade swift-tools-version from 5.3 to 5.6.1.
swift-tools-version 5.5+ is necessary to allow test code to import executable target code,
to allow MasKit library code to be moved into the mas executable.
Upgrade to swift-tools-version to 5.6.1 instead of to 5.5 because they support all the same macOS versions.
Standardize comments.
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-14 03:44:03 -04:00
Ross Goldberg
a24bcdd1e9
Merge branch 'main' into 562-apple-id
2024-10-13 22:23:37 -04:00
Ross Goldberg
1bebde9e4a
Merge pull request #550 from rgoldberg/536-output-responses-unparsable-as-json
...
Output to stderr responses from Apple endpoints that are unparsable as JSON
2024-10-13 22:20:51 -04:00
Ross Goldberg
fe7b688f3b
Merge pull request #549 from rgoldberg/538-fix-typos
...
Fix typos in comments & in documentation.
2024-10-13 22:18:28 -04:00
Ross Goldberg
7c81b4803c
Merge pull request #551 from rgoldberg/540-outdated-multi-platform-minimum-macos
...
`outdated` checks if new app version requires newer macOS for all kinds of apps, not just mac-software
2024-10-13 22:17:14 -04:00
Ross Goldberg
8e671f2624
Improve Account
, SignIn
, SignOut
& ISStoreAccount
extension & associated code.
...
Prevent `ISAccountService.signIn(with:)` deprecation warning.
Improve macOS version handling encapsulation.
Output error if `StoreAccount.signin(…)` provides a `nil` `ISStoreAccount`.
Improve `signin` `"Already Signed In" error output.
Remove unnecessary output.
Simplify code.
Partial #562
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-11 01:56:50 -04:00
Ross Goldberg
5676dcb797
Re-enable purchase
.
...
`purchase` seems to work on macOS 12+.
Resolve #289
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-06 03:13:10 -04:00
Ross Goldberg
b400422f4a
outdated
checks if new app version requires newer macOS for all kinds of apps, not just mac-software.
...
Resolve #540
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-05 20:28:49 -04:00
Ross Goldberg
7e9e3ba168
Output to stderr responses from Apple endpoints that are unparsable as JSON
...
Resolves #536
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-05 19:50:52 -04:00
Ross Goldberg
47f4b5c0da
Fix typos in comments
...
Resolves #538
Signed-off-by: Ross Goldberg <484615+rgoldberg@users.noreply.github.com>
2024-10-05 19:43:15 -04:00
Ben Chatelain
521df64b51
♻️ Refactor lookupURL, searchURL
...
Resolves unused protocol method lint warnings by moving updated implementations back to StoreSearch. Added `country` to MasStoreSearch, set to fixed fvalue for tests.
2024-02-17 23:47:02 -07:00
Ben Chatelain
22c6c57743
💚 Disable lucky spec: installs the first app matching a search
...
Stalls test when a MAS auth dialog stalls tests. Need more mocking.
2024-02-17 21:02:28 -07:00
Ben Chatelain
c2fcf7e5aa
💡 Document deprecated AccountCommandSpec and SignInCommandSpec
2024-02-17 14:04:01 -07:00
Ben Chatelain
cfc2bef921
🤡 Use mock network response in LuckyCommandSpec
2024-02-17 14:04:01 -07:00
Ben Chatelain
212461caee
💚 Fix purchase test
2024-02-17 14:04:01 -07:00
Chris Araman
cfef4aebc4
🔍 Verify command results
2024-02-17 14:04:01 -07:00
Chris Araman
844131ff2e
⛔ ️ Remove impossible error case
2024-02-17 14:04:01 -07:00
Ben Chatelain
f7dd98811f
♻️ Move URL builders to MasStoreSearch
2024-02-17 14:04:01 -07:00
Ross Goldberg
e6e2ccab0d
Updated swift source by running:
...
swiftformat Sources Tests
2024-02-05 16:03:51 -05:00
Ben Chatelain
610257f292
🔇 Add --verbose flag to outdated command
2022-10-08 14:46:12 -06:00
Chris Araman
560c89af2c
🌍 Localize queries
2021-12-20 15:41:54 -08:00
Chris Araman
9305160b2e
🧹 Lint
2021-11-02 20:16:17 -07:00
Ben Chatelain
8ef416cf35
👌🏻 Address review comments
2021-10-12 19:54:08 -06:00
Ben Chatelain
a955ff6bca
🚨 Fix lint issue
2021-10-12 19:54:08 -06:00
Ben Chatelain
1fe4b5b3e2
🍏 Ignore min OS for iOS apps
2021-10-12 19:54:08 -06:00
Ben Chatelain
84461fa5c6
🐛 Don't consider an app outdated if the update can't be installed on the current OS
...
Fixes #420
2021-10-12 19:54:08 -06:00
Ben Chatelain
59483ef34d
Merge branch 'main' into lint
2021-05-12 16:54:52 -06:00
Chris Araman
3b7c9a47bd
🏡 Update mock bundle path
2021-05-12 12:11:21 -07:00
Chris Araman
9904707152
🧹 Lint
2021-05-12 11:19:12 -07:00
Chris Araman
c3ef7b40b7
♻️ Remove loadDataSync
2021-05-08 21:16:54 -07:00
Chris Araman
9494dea403
🤞🏼 Rephrase StoreSearch as Promises
2021-05-08 21:14:16 -07:00
Chris Araman
a9b018854d
🤞🏼 Rephrase MasStoreSearch as Promises
2021-05-08 21:14:16 -07:00
Chris Araman
2ad8695295
🔥 Initialize PromiseKit
2021-05-08 21:10:03 -07:00
Chris Araman
0b8acab235
🧹 Lint with periphery
2021-05-08 20:14:18 -07:00
Chris Araman
4848f422d6
🧹 Match swift-format to compiler version
...
Fixes #364 .
2021-05-08 20:14:18 -07:00