Commit Graph

134 Commits

Author SHA1 Message Date
Ben Olden-Cooligan
52bfc26caf Fix removing from transaction scopes 2022-12-03 17:17:00 -08:00
Ben Olden-Cooligan
bd8036c968 Fix desktop controller tests 2022-12-02 16:40:22 -08:00
Ben Olden-Cooligan
2c1187ab21 Update tesseract binary targets 2022-11-16 19:05:22 -08:00
Ben Olden-Cooligan
f900619d1d Fix test 2022-11-08 21:21:25 -08:00
Ben Olden-Cooligan
35669502cc Migrate from Ninject to Autofac
Performance is much better (might save ~20ms on startup), plus more popular in general means potentially easier for others to contribute/use the code.
2022-10-30 18:14:42 -07:00
Ben Olden-Cooligan
109643df18 Update tesseract binaries 2022-10-21 21:13:23 -07:00
Ben Olden-Cooligan
265a0607c6 Update tesseract binaries package 2022-10-20 17:31:30 -07:00
Ben Olden-Cooligan
76909ed962 Use tesseract binaries project 2022-10-16 14:24:33 -07:00
Ben Olden-Cooligan
c50c3381ec Refactor classes into eto namespaces 2022-10-10 18:44:13 -07:00
Ben Olden-Cooligan
c1f946df5f WIP: JPEG200 support, just on Mac for now 2022-10-10 18:25:59 -07:00
Ben Olden-Cooligan
1e74dcc360 Fix namespaces and imports 2022-10-01 16:38:06 -07:00
Ben Olden-Cooligan
3894645069 Use IAsyncEnumerable with a producer model
This replaces AsyncSource and simplifies various things. Also some cleanups / tests.
2022-09-27 18:12:36 -07:00
Ben Olden-Cooligan
433a838231 Unify progress callbacks and cancellation in ProgressHandler 2022-09-25 16:54:41 -07:00
Ben Olden-Cooligan
efa8d62cc0 Rename color_image resources to dog
As it's not always color.
2022-09-20 18:18:44 -07:00
Ben Olden-Cooligan
f01bf7e414 Rework tiff saving and add image load/save tests 2022-09-15 19:02:09 -07:00
Ben Olden-Cooligan
b63a400ab5 Optimize other test project builds for each platform 2022-09-14 21:08:23 -07:00
Ben Olden-Cooligan
02f5a83f6f Remove unnecessary references from NAPS2.Sdk 2022-09-12 18:23:42 -07:00
Ben Olden-Cooligan
1c0a7074d2 Remove final gdi references from NAPS2.Sdk 2022-09-11 17:48:05 -07:00
Ben Olden-Cooligan
e8c9ca4fab Test fixes 2022-09-10 21:34:02 -07:00
Ben Olden-Cooligan
fb625370d6 Merge NAPS2.Lib.Console into NAPS2.Lib 2022-08-20 17:50:38 -07:00
Ben Olden-Cooligan
2cc124f7bc Mac: Fix Lib.Tests tests 2022-08-14 15:09:58 -04:00
Ben Olden-Cooligan
1f4cc6954e Get Lib.Tests running without windows 2022-08-14 14:55:21 -04:00
Ben Olden-Cooligan
ef72059024 Mac support WIP 2022-08-04 17:15:43 -07:00
Ben Olden-Cooligan
59223dfc7a Switch from PdfSharp to a PdfSharpCore fork, using custom rendering logic
As well as helping move towards cross-platform support, this results in massive performance gains (which can probably be improved even further). However there is some extra complexity that hopefully we can pare down later.
2022-08-03 19:44:51 -07:00
Ben Olden-Cooligan
6530b5a73f Add (failing) test for import/export non-naps2 pdf with ocr 2022-07-30 22:28:02 -07:00
Ben Olden-Cooligan
7f87a681f6 Move ClientCreds to NAPS2.Lib.Common and avoid custom prebuild 2022-07-29 22:09:34 -07:00
Ben Olden-Cooligan
920f7fc4c2 Generalize SaveSmallestFormat and move to ImageContext 2022-07-28 17:18:03 -07:00
Ben Olden-Cooligan
7e455aed35 Group test resources into Image/Binary/Pdf instead of by test class 2022-07-26 18:05:32 -07:00
Ben Olden-Cooligan
be49969420 Add tests for ImageListDiffer 2022-07-23 15:09:48 -07:00
Ben Olden-Cooligan
ab9d70da38 Improve RecoveryStorageManager testing by using the full image list update flow, just bypassing the write throttle 2022-07-23 11:37:01 -07:00
Ben Olden-Cooligan
d6440ba747 Use ScanningContext to create images in PdfSharpImporter 2022-07-23 09:36:06 -07:00
Ben Olden-Cooligan
75835d91d3 Simplify image asserts 2022-07-19 18:21:45 -07:00
Ben Olden-Cooligan
33d928bcde Improve test flakiness 2022-07-18 21:47:36 -07:00
Ben Olden-Cooligan
9264a1cf40 Improve handling of empty scans 2022-07-17 17:41:56 -07:00
Ben Olden-Cooligan
f2eaa5e263 Add split tests and fix recovery cleanup 2022-07-17 17:19:04 -07:00
Ben Olden-Cooligan
87d231a3cc Fix resx generator config 2022-07-17 12:25:44 -07:00
Ben Olden-Cooligan
d0854fa4cc Add tests for interleave/reverse options 2022-07-17 12:12:44 -07:00
Ben Olden-Cooligan
4922a71bad Fix typo
I have no idea how I went this long without noticing...
2022-07-16 19:05:51 -07:00
Ben Olden-Cooligan
39f042cc3e Add pdf encryption command line tests and refactor CommandLineIntegrationTests 2022-07-16 19:05:14 -07:00
Ben Olden-Cooligan
a4a8425f5a Add pdf metadata command line tests 2022-07-16 13:17:17 -07:00
Ben Olden-Cooligan
180b6872a7 Fix deskew 2022-07-15 12:06:51 -07:00
Ben Olden-Cooligan
fe6386f9a2 Fix all Lib.Common warnings 2022-07-02 19:55:20 -07:00
Ben Olden-Cooligan
6731df4789 Remove unused usings 2022-07-02 16:01:45 -07:00
Ben Olden-Cooligan
ab219849e2 Fix a bunch more warnings 2022-07-02 16:00:11 -07:00
Ben Olden-Cooligan
425b896cb4 Make the console return a non-zero exit code on error, add console app tests, and remove static variables in console deps 2022-07-02 11:21:21 -07:00
Ben Olden-Cooligan
dafc26c6b3 Add UiImageList to the RecoveryStorageManager constructor and other minor fixes 2022-07-02 11:19:28 -07:00
Ben Olden-Cooligan
8de8a4b9df Remove RecoveryStorageManager as a dependency of UiImageList 2022-06-27 21:46:22 -07:00
Ben Olden-Cooligan
1572dfd095 Add ThumbnailRenderQueue tests and fix test flakiness
Probably will still flake on other machines (e.g. CI), but that's a problem for another time.
2022-06-27 21:16:10 -07:00
Ben Olden-Cooligan
6f5076d1ea Add still image, donate prompt, and update check tests to DesktopControllerTests 2022-06-27 15:22:54 -07:00
Ben Olden-Cooligan
7544aff995 Add a couple DesktopController tests
Many more to add as we've set up the outline
2022-06-26 22:10:09 -07:00
Ben Olden-Cooligan
232960381f Throttle config reads 2022-06-25 09:15:59 -07:00
Ben Olden-Cooligan
9c9dca767d Specify UserConfig/AppConfig as the root name for config xml 2022-06-24 20:01:47 -07:00
Ben Olden-Cooligan
92464aa5cc Add output ordering to xml/config serialization 2022-06-24 19:50:51 -07:00
Ben Olden-Cooligan
e89f49bfb3 Refactor ScopedConfig into a reusable base class and a specific Naps2Config class 2022-06-24 18:19:13 -07:00
Ben Olden-Cooligan
c69cd7e98b Move generic config code to a new namespace NAPS2.Config.Model 2022-06-24 16:29:26 -07:00
Ben Olden-Cooligan
136ef5313b Fix profile serialization 2022-06-24 15:32:10 -07:00
Ben Olden-Cooligan
5530952c9a Add TransactionConfigScope tests 2022-06-24 12:46:58 -07:00
Ben Olden-Cooligan
16916f3665 Implement ScopedConfig.Get for child configs 2022-06-24 11:43:19 -07:00
Ben Olden-Cooligan
4e9042a3a5 WIP: Implement ConfigStorage serialization to/from XDocument 2022-06-23 13:51:46 -07:00
Ben Olden-Cooligan
9d3620462a WIP: Use a Config scheme that doesn't depend on nulls
This requires using a graph data structure to store the config values (and record which ones are set), rather than just an instance of the config object.

This also requires parsing input as expressions that define a lookup into the graph rather than functions that can operate on the config object directly.
2022-06-22 21:07:01 -07:00
Ben Olden-Cooligan
2b966d224b Finish RecoveryManager tests 2022-06-20 15:36:12 -07:00
Ben Olden-Cooligan
3eda15242a Build net5 instead of net6
Seems like there's either a net6 bug or something wrong with my local install, as starting the worker works on net5 but not net6 ("hostfxr.dll" error message when running from Rider).

Plus net5 is probably a good general target right now in terms of compatibility, too.
2022-06-19 18:33:00 -07:00
Ben Olden-Cooligan
b23c13738f Upgrade Eto.Forms and fix more warnings 2022-06-19 11:20:00 -07:00
Ben Olden-Cooligan
5047655aba Upgrade from net461 to net462 2022-06-19 11:02:32 -07:00
Ben Olden-Cooligan
5a9a949e9d Add multi-build for NET6 (as well as 4.6.1)
Tests pass & FDesktop shows.
2022-06-18 20:48:45 -07:00
Ben Olden-Cooligan
3ec1add537 Fix FormState serialization 2022-06-18 19:35:15 -07:00
Ben Olden-Cooligan
ba16ac845e Remove GUI-related dependencies from NAPS2.Sdk and have unit tests specify all their own paths (rather than using the Paths constants that reference the real user appdata etc) 2022-06-18 19:09:21 -07:00
Ben Olden-Cooligan
2f2211e1fc Partition most WinForms and non-SDK classes into appropriate projects
Tried this a couple times previously and failed due to difficulty getting it to compile, but now enough things have been rewritten that the extra work is minimal.
2022-06-18 17:25:19 -07:00
Ben Olden-Cooligan
7f0a0ac667 Add an OCR command line integration test 2022-06-18 14:32:09 -07:00
Ben Olden-Cooligan
a166dd6766 Move platform-specific native library logic to PlatformCompat 2022-06-18 11:59:31 -07:00
Ben Olden-Cooligan
f4dde8ee14 WIP: Rewrite tesseract code and strip out all old tesseract configs. Going forward we'll bundle the exe and only support the latest traineddata. 2022-06-17 21:04:35 -07:00
Ben Olden-Cooligan
b084a50472 Recovery wip and processed image tests 2022-06-09 18:26:19 -07:00
Ben Olden-Cooligan
b8ecc536e8 WIP: Tests compiling and passing for updated image model 2022-06-08 19:13:36 -07:00
Ben Olden-Cooligan
7928e52737 Use global usings for common System and NAPS2 usings 2021-12-17 12:18:20 -08:00
Ben Olden-Cooligan
6a7562b506 Use file-scoped namespaces 2021-12-17 11:59:54 -08:00
Ben Olden-Cooligan
015d087603 Move various types to different namespaces
Mostly moving types out of Util. Added new NAPS2.Platform.Windows, NAPS2.Threading, NAPS2.Unmanaged, and NAPS2.Testing namespaces.
2021-04-16 17:46:30 -07:00
Ben Olden-Cooligan
ac5745e774 Change member variable naming 2020-02-16 15:36:30 -05:00
Ben Olden-Cooligan
3d9d1aa9e6 Add a SharedData resource file for common test data 2020-02-14 21:26:39 -05:00
Ben Olden-Cooligan
950667721a Migrate test projects to .NET 4.7.2 2020-02-14 21:25:28 -05:00
Ben Olden-Cooligan
c6b56d1047 Generalize console output so it can be redirected for tests 2020-02-09 23:58:14 -05:00
Ben Olden-Cooligan
8d48002c92 Clean up xunit logging 2020-02-09 23:43:48 -05:00
Ben Olden-Cooligan
0147f5df64 Bug fixes 2020-02-09 23:30:09 -05:00
Ben Olden-Cooligan
9aebc4133c Add another integration test 2020-02-09 20:24:12 -05:00
Ben Olden-Cooligan
14911114c3 Add a command line integration test 2020-02-09 16:00:53 -05:00