Commit graph

168 commits

Author SHA1 Message Date
Joseph Stewart 030f33740f Generalize mock activity 2021-08-07 18:56:13 +02:00
Joseph Stewart c49ed765b9 Add tests for liquid expressions 2021-08-07 18:56:13 +02:00
Joseph Stewart e51395ff21 Add test for javascript 2021-08-07 18:56:13 +02:00
Rafael Carnucci e316ca6c80 Added TenantId in IStartsWorkflow.StartWorkflowAsync and IWorkflowFactory.InstantiateAsync 2021-07-26 19:38:47 +02:00
Sipke Schoorstra 42e95033cf
BREAKING: Persistable input (#1302)
* Implement resuming Idle workflows + persistable input

* Refactor workflow input model

* Re-enable tests
2021-07-22 22:13:33 +02:00
Sipke Schoorstra cbfb21c4c9 Remove redundant Trigger parameter from workflow selection 2021-07-12 19:37:01 +02:00
Sipke Schoorstra f17cb73590 Cleanup 2021-06-29 21:03:57 +02:00
Sipke Schoorstra b506421ba5 Merge branch 'master' into webhook/url-management
# Conflicts:
#	src/activities/Elsa.Activities.Webhooks/Elsa.Activities.Webhooks.csproj
#	src/designer/elsa-workflows-studio/package-lock.json
#	src/designer/elsa-workflows-studio/src/components/editors/elsa-multi-expression-editor/elsa-multi-expression-editor.tsx
#	src/designer/elsa-workflows-studio/src/services/elsa-client.ts
#	src/samples/server/Elsa.Samples.Server.Host/Startup.cs
2021-06-19 10:20:24 +02:00
axeleron007 eb388caed1 Setup Elsa Server project with Features #1032
Setup Elsa Server project with Features.
2021-06-18 16:22:57 +03:00
Sipke Schoorstra 9f7208d296 Fix test 2021-06-14 14:10:03 +02:00
Sipke Schoorstra f67140f7e2 Cleanup 2021-06-14 14:10:03 +02:00
Sipke Schoorstra 9ec82d9293 Refactor Output handling 2021-06-14 14:10:03 +02:00
Sipke Schoorstra 332741d54f Implement pluggable storage for activity input and output properties 2021-06-14 14:10:03 +02:00
Sipke Schoorstra 0c79bac321 Updated some namespaces 2021-06-14 14:10:03 +02:00
Sipke Schoorstra 8a18a85e26 Organize folder structure a bit more 2021-06-14 14:10:03 +02:00
Sipke Schoorstra c5facf0ff5 Organize folder structure a bit 2021-06-14 14:10:03 +02:00
Sipke Schoorstra 3d623b94e1 Improve bookmarking API and add Event Received activity 2021-05-31 10:01:33 +02:00
Sipke Schoorstra 2b77ac8fe0 Handle potential null dictionary 2021-05-28 16:38:59 +02:00
Sipke Schoorstra 4d156c7ef7 Change namespaces for MongoDB extensions 2021-05-27 20:23:18 +02:00
Sipke Schoorstra bb4ff3b714 Update packages 2021-05-25 09:57:17 +02:00
Sipke Schoorstra e945e58ecf Fix component tests 2021-05-24 17:57:27 +02:00
Sipke Schoorstra bdf544bd8e Bump RC to 3 2021-05-24 15:28:34 +02:00
Sipke Schoorstra 49dcd4a624 Implement workaround for EF Core bulk delete operations with Postgres
Fixes #980
2021-05-17 11:35:50 +02:00
Sipke Schoorstra 899551463e Refactor workflow collection and execution 2021-05-16 21:05:34 +02:00
Sipke Schoorstra 400a862f96 Cleanup: remove unused namespaces 2021-05-13 11:31:38 +02:00
Sipke Schoorstra cb94f4dde5 Update packages 2021-05-10 22:19:29 +02:00
Sipke Schoorstra e84e4d0c14 Update docker-compose and appveyor with Postgres 2021-05-06 19:26:32 +02:00
Sipke Schoorstra 173ded683f Provide Id value to mocked ActivityBlueprint 2021-05-05 13:14:28 +02:00
Sipke Schoorstra ee027eef58 Fix WithEntityFrameworkAttribute to use overload using automigrations 2021-05-05 13:13:48 +02:00
Sipke Schoorstra 1febb9a211 Handle DateTime parsing for UTC strings 2021-05-05 13:13:05 +02:00
Sipke Schoorstra d0affca777 Fix test 2021-05-04 12:32:26 +02:00
Sipke Schoorstra 805d234df4 Cleanup 2021-05-04 10:59:52 +02:00
Sipke Schoorstra 2ec915dabe Merge branch 'feature/elsa-2.0'
# Conflicts:
#	.gitignore
#	Dockerfile
#	Nuget.Config
#	README.md
#	Samples.sln
#	appveyor.yml
#	docker-compose.yaml
#	src/activities/Elsa.Activities.ControlFlow/Activities/ForEach.cs
#	src/activities/Elsa.Activities.ControlFlow/Activities/IfElse.cs
#	src/activities/Elsa.Activities.ControlFlow/Activities/Join.cs
#	src/activities/Elsa.Activities.ControlFlow/Activities/Switch.cs
#	src/activities/Elsa.Activities.ControlFlow/Activities/While.cs
#	src/activities/Elsa.Activities.ControlFlow/icon.png
#	src/activities/Elsa.Activities.Dropbox/Extensions/ServiceCollectionExtensions.cs
#	src/activities/Elsa.Activities.Dropbox/icon.png
#	src/activities/Elsa.Activities.Email/Activities/SendEmail.cs
#	src/activities/Elsa.Activities.Email/icon.png
#	src/activities/Elsa.Activities.Http/Activities/ReceiveHttpRequest.cs
#	src/activities/Elsa.Activities.Http/Activities/Redirect.cs
#	src/activities/Elsa.Activities.Http/Activities/SendHttpRequest.cs
#	src/activities/Elsa.Activities.Http/Activities/WriteHttpResponse.cs
#	src/activities/Elsa.Activities.Http/RequestHandlers/Handlers/TriggerRequestHandler.cs
#	src/activities/Elsa.Activities.Http/icon.png
#	src/activities/Elsa.Activities.MassTransit/Activities/CancelScheduledSendMassTransitMessage.cs
#	src/activities/Elsa.Activities.MassTransit/Activities/MassTransitBusActivity.cs
#	src/activities/Elsa.Activities.MassTransit/Activities/ReceiveMassTransitMessage.cs
#	src/activities/Elsa.Activities.MassTransit/Extensions/ServiceCollectionExtensions.cs
#	src/activities/Elsa.Activities.MassTransit/icon.png
#	src/activities/Elsa.Activities.Reflection/Activities/ExecuteFunction.cs
#	src/activities/Elsa.Activities.Reflection/icon.png
#	src/activities/Elsa.Activities.Timers/Activities/CronEvent.cs
#	src/activities/Elsa.Activities.Timers/Activities/TimerEvent.cs
#	src/activities/Elsa.Activities.Timers/Elsa.Activities.Timers.csproj
#	src/activities/Elsa.Activities.Timers/icon.png
#	src/activities/Elsa.Activities.UserTask/Activities/UserTask.cs
#	src/activities/Elsa.Activities.UserTask/icon.png
#	src/activities/Elsa.Activities.Workflows/Activities/Finish.cs
#	src/activities/Elsa.Activities.Workflows/Activities/TriggerWorkflow.cs
#	src/activities/Elsa.Activities.Workflows/icon.png
#	src/core/Elsa.Abstractions/Converters/TypeNameHandlingConverter.cs
#	src/core/Elsa.Abstractions/Exceptions/WorkflowException.cs
#	src/core/Elsa.Abstractions/Models/ActivityDefinition.cs
#	src/core/Elsa.Abstractions/Models/BlockingActivity.cs
#	src/core/Elsa.Abstractions/Models/Variables.cs
#	src/core/Elsa.Abstractions/Models/WorkflowFault.cs
#	src/core/Elsa.Abstractions/Models/WorkflowInstance.cs
#	src/core/Elsa.Abstractions/Services/ActivityBase.cs
#	src/core/Elsa.Abstractions/Services/IWorkflowEventHandler.cs
#	src/core/Elsa.Abstractions/Services/Models/Workflow.cs
#	src/core/Elsa.Abstractions/Services/Models/WorkflowExecutionContext.cs
#	src/core/Elsa.Abstractions/Services/Models/WorkflowFault.cs
#	src/core/Elsa.Abstractions/Services/WorkflowEventHandlerBase.cs
#	src/core/Elsa.Abstractions/icon.png
#	src/core/Elsa.Core/Expressions/WorkflowExpressionEvaluator.cs
#	src/core/Elsa.Core/Extensions/AutoMapperServiceCollectionExtensions.cs
#	src/core/Elsa.Core/Extensions/ElsaServiceCollectionExtensions.cs
#	src/core/Elsa.Core/Mapping/WorkflowDefinitionProfile.cs
#	src/core/Elsa.Core/Persistence/Memory/MemoryWorkflowInstanceStore.cs
#	src/core/Elsa.Core/Results/FaultWorkflowResult.cs
#	src/core/Elsa.Core/Runtime/StartupRunnerHostedService.cs
#	src/core/Elsa.Core/Services/WorkflowInvoker.cs
#	src/core/Elsa.Core/Services/WorkflowPublisher.cs
#	src/core/Elsa.Core/WorkflowBuilders/ActivityBuilder.cs
#	src/core/Elsa.Core/icon.png
#	src/core/Elsa/icon.png
#	src/dashboard/Elsa.Dashboard.Web/Elsa.Dashboard.Web.csproj
#	src/dashboard/Elsa.Dashboard.Web/Startup.cs
#	src/dashboard/Elsa.Dashboard.Web/icon.png
#	src/dashboard/Elsa.Dashboard/ActionFilters/NotifierFilter.cs
#	src/dashboard/Elsa.Dashboard/Areas/Elsa/Views/Shared/UserMenuItems.cshtml
#	src/dashboard/Elsa.Dashboard/Areas/Elsa/Views/Shared/WorkflowDefinitionEditor.cshtml
#	src/dashboard/Elsa.Dashboard/Areas/Elsa/Views/_ViewImports.cshtml
#	src/dashboard/Elsa.Dashboard/Conventions/ElsaConvention.cs
#	src/dashboard/Elsa.Dashboard/Elsa.Dashboard.csproj
#	src/dashboard/Elsa.Dashboard/Extensions/DashboardServiceCollectionExtensions.cs
#	src/dashboard/Elsa.Dashboard/icon.png
#	src/dashboard/Elsa.WorkflowDesigner/Elsa.WorkflowDesigner.csproj
#	src/dashboard/Elsa.WorkflowDesigner/ViewComponents/WorkflowDesignerViewComponent.cs
#	src/dashboard/Elsa.WorkflowDesigner/icon.png
#	src/persistence/Elsa.Persistence.DocumentDb/DocumentDbStorage.cs
#	src/persistence/Elsa.Persistence.DocumentDb/DocumentDbStorageOptions.cs
#	src/persistence/Elsa.Persistence.DocumentDb/Documents/WorkflowDefinitionVersionDocument.cs
#	src/persistence/Elsa.Persistence.DocumentDb/Documents/WorkflowInstanceDocument.cs
#	src/persistence/Elsa.Persistence.DocumentDb/Elsa.Persistence.DocumentDb.csproj
#	src/persistence/Elsa.Persistence.DocumentDb/Extensions/DateTimeExtensions.cs
#	src/persistence/Elsa.Persistence.DocumentDb/Extensions/DocumentClientExtensions.cs
#	src/persistence/Elsa.Persistence.DocumentDb/Extensions/QueryableExtensions.cs
#	src/persistence/Elsa.Persistence.DocumentDb/Extensions/ServiceConfigurationExtensions.cs
#	src/persistence/Elsa.Persistence.DocumentDb/Mapping/DocumentProfile.cs
#	src/persistence/Elsa.Persistence.DocumentDb/Services/CosmosDbWorkflowDefinitionStore.cs
#	src/persistence/Elsa.Persistence.DocumentDb/Services/CosmosDbWorkflowInstanceStore.cs
#	src/persistence/Elsa.Persistence.DocumentDb/icon.png
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/CustomSchema/CustomSchemaOptionsExtensionInfo.cs
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/DbContexts/ElsaContext.cs
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/DbContexts/MySqlContext.cs
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/DbContexts/MySqlContextFactory.cs
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/DbContexts/PostgreSqlContext.cs
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/DbContexts/SqlServerContext.cs
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/DbContexts/SqliteContext.cs
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/Elsa.Persistence.EntityFrameworkCore.csproj
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/Entities/WorkflowInstanceEntity.cs
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/Extensions/EFCoreServiceCollectionExtensions.cs
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/Mapping/EntitiesProfile.cs
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/Migrations/MySql/MySqlContextModelSnapshot.cs
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/Migrations/PostgreSql/20201027192219_Update02.Designer.cs
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/Migrations/PostgreSql/PostgreSqlContextModelSnapshot.cs
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/Migrations/SqlServer/SqlServerContextModelSnapshot.cs
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/Migrations/Sqlite/20201029094740_Create.Designer.cs
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/Migrations/Sqlite/20201029094740_Create.cs
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/Migrations/Sqlite/SqliteContextModelSnapshot.cs
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/Services/EntityFrameworkCoreWorkflowDefinitionStore.cs
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/Services/EntityFrameworkCoreWorkflowInstanceStore.cs
#	src/persistence/Elsa.Persistence.EntityFrameworkCore/icon.png
#	src/persistence/Elsa.Persistence.MongoDb/Extensions/ServiceCollectionExtensions.cs
#	src/persistence/Elsa.Persistence.MongoDb/icon.png
#	src/persistence/Elsa.Persistence.YesSql/Documents/WorkflowInstanceDocument.cs
#	src/persistence/Elsa.Persistence.YesSql/Extensions/YesSqlServiceCollectionExtensions.cs
#	src/persistence/Elsa.Persistence.YesSql/Mapping/DocumentProfile.cs
#	src/persistence/Elsa.Persistence.YesSql/Services/YesSqlWorkflowDefinitionStore.cs
#	src/persistence/Elsa.Persistence.YesSql/Services/YesSqlWorkflowInstanceStore.cs
#	src/persistence/Elsa.Persistence.YesSql/StartupTasks/InitializeStoreTask.cs
#	src/persistence/Elsa.Persistence.YesSql/icon.png
#	src/samples/README.md
#	src/samples/Sample04/Activities/ArithmeticOperation.cs
#	src/samples/Sample04/Activities/Divide.cs
#	src/samples/Sample04/Activities/Multiply.cs
#	src/samples/Sample04/Activities/Subtract.cs
#	src/samples/Sample04/Activities/Sum.cs
#	src/samples/Sample04/Program.cs
#	src/samples/Sample05/Sample05.csproj
#	src/samples/Sample07/Startup.cs
#	src/samples/Sample08/Sample08.csproj
#	src/samples/Sample08/Startup.cs
#	src/samples/Sample12/Program.cs
#	src/samples/Sample14/ElsaContextFactory.cs
#	src/samples/Sample14/Program.cs
#	src/samples/Sample14/Sample14.csproj
#	src/samples/Sample18/Program.cs
#	src/samples/Sample18/Sample18.csproj
#	src/samples/Sample19/Sample19.csproj
#	src/samples/Sample20/Workflows/SplitObjectWorkflow.cs
#	src/samples/Sample21/Sample21.csproj
#	src/samples/Sample21/Startup.cs
#	src/samples/Sample21/Workflows/CartTrackingWorkflow.cs
#	src/samples/Sample21/appsettings.json
#	src/samples/Sample22/Program.cs
#	src/samples/Sample22/Sample22.csproj
#	src/samples/Sample23/ElsaContextFactory.cs
#	src/samples/Sample23/HelloWorldWorkflow.cs
#	src/samples/Sample23/Migrations/Sqlite/20201027194619_Create.Designer.cs
#	src/samples/Sample23/Migrations/Sqlite/20201027194619_Create.cs
#	src/samples/Sample23/Migrations/Sqlite/ElsaContextModelSnapshot.cs
#	src/samples/Sample23/Program.cs
#	src/samples/Sample23/Sample23.csproj
#	src/samples/Sample24/Sample24.csproj
#	src/scripting/Elsa.Scripting.JavaScript/Converters/TruncatingNumberJsonConverter.cs
#	src/scripting/Elsa.Scripting.JavaScript/Handlers/CommonJavaScriptEngineHandler.cs
#	src/scripting/Elsa.Scripting.JavaScript/Services/JavaScriptExpressionEvaluator.cs
#	src/scripting/Elsa.Scripting.JavaScript/icon.png
#	src/scripting/Elsa.Scripting.Liquid/Handlers/CommonLiquidContextHandler.cs
#	src/scripting/Elsa.Scripting.Liquid/Services/LiquidExpressionEvaluator.cs
#	src/scripting/Elsa.Scripting.Liquid/icon.png
2021-05-04 10:53:55 +02:00
Craig Fowler 951904a643 WIP #777 - Add test coverage to repro issue
The test coverage here actually proves that for Liquid expressions,
the issue has already been fixed as part of other work.  Specifically
it was fixed in 2a22a328c4 in the
class StringExtensions.cs
2021-04-26 21:13:14 +02:00
Sipke Schoorstra 489750432a Remove Email and UserTask projects from Elsa project 2021-04-21 14:46:17 +02:00
Sipke Schoorstra d9094575fd Remove unused namespaces 2021-04-16 12:48:06 +02:00
Craig Fowler fa7601ca1a WIP #751 - Add integration test for using Postgres
From this commit onwards, in order to run all of the tests, you
must now have postgresql installed and running on your dev
environment.  The credentials/config is:
* Database name: elsa-yessql
* Username: postgres (this is the default anyway)
* Password: Password12! (this matches AppVeyor's postgres password)
* Port: 5432 (this is the default anyway)
2021-04-07 20:38:13 +01:00
Sipke Schoorstra a3e7b1e023 Disable YesSQL test (temp) 2021-04-07 15:06:30 +02:00
Sipke Schoorstra ae46e0e143 Update packages and accommodate for breaking changes 2021-04-07 14:48:30 +02:00
Sipke Schoorstra ce957b95e7 Cleanup 2021-04-07 13:13:13 +02:00
Sipke Schoorstra df6ad74eec Replace custom distributed locking implementation with DistributedLock
https://github.com/madelson/DistributedLock
2021-04-07 13:13:13 +02:00
Craig Fowler 8413cb0e55
Merge pull request #834 from craigfowler/composable-autofixture-attributes
Add composable autofixture attributes
2021-04-02 21:04:18 +01:00
Craig Fowler 189b4a69bb
Correct typo 2021-04-02 21:03:33 +01:00
Sipke Schoorstra a6d05cfce0 Remove StringValuesModel
Deserialization causes problems when a value is a single string
2021-04-02 16:52:31 +02:00
Craig Fowler da88ee1b95 Trivial: Make running tests less noisy 2021-04-02 13:46:47 +01:00
Craig Fowler 2e3aef2740 Merge remote-tracking branch 'elsa-core/feature/elsa-2.0' into 751-postgres-yessql-exception 2021-04-02 13:46:13 +01:00
Craig Fowler 7044e69231 Refactor one test to use new Autofixture resolution attribute
This change means that a service provider may use both the Frozen
specimen builder and also the 'with autofixture resolution' behaviour.
That means that some unwanted extra logic in the test may now be
removed, with the test objects also coming from Autofixture.
2021-04-02 13:29:46 +01:00
Craig Fowler 282c90f80f Further fixup & refactoring of Autofixture attribs
This now also includes reworking the attribute which activates
Autofixture-style resolution upon an IServiceProvider.
This has now been renamed to WithAutofixtureResolutionAttribute.

The new/reworked attribute is composable with other Autofixture
attributes.
2021-04-02 13:28:27 +01:00
Craig Fowler f2b27480fc Trivial - remove redundant types 2021-04-02 12:08:05 +01:00
Sipke Schoorstra 881f0acb7a Fix tests 2021-04-02 12:43:14 +02:00