diff --git a/ReadMe.md b/ReadMe.md deleted file mode 100644 index b8494d1..0000000 --- a/ReadMe.md +++ /dev/null @@ -1,224 +0,0 @@ -

Power Automate Mock-Up

-

Skeleton to run Power Automate flows from JSON flow definition.

-

- Build status - Build status - - Nuget downloads - - - Nuget version - - - Nuget prerelease version - -

- - -~~Currently there is not a way to unit test Power Automate flows. You have the ability to manually run a flow with static results, but this isn't the same as a unit test. I have during my work implemented business critical functionality in Power Automate using Common Data Service (current environment) connector.~~ - -There is a way to unit test Power Automate flows! - -## Installation - -A the [NuGet package](https://www.nuget.org/packages/PowerAutomateMockUp/) to your project. - -## How to use - -### Introduction -This is a skeleton and itself will not test anything OOB. Instead this is meant as the core, used to implement different connectors. As you probably know, Power Automate uses Connectors to interact with others services, such as Common Data Service. I have implemented [Common Data Service (current environment)](https://github.com/thygesteffensen/PAMU_CDS), go take a look to see how it can be used. - -### Getting Started - -```c# -var path = ""; - -// from Microsoft.Extensions.DependencyInjection -var services = new ServiceCollection(); - -// Required to set up required dependencies -services.AddFlowRunner(); - -var sp = services.BuildServiceProvider(); - -var flowRunner = sp.GetRequiredService(); - -flowRunner.InitializeFlowRunner(path); - -var flowResult = await flowRunner.Trigger(); - -// Your flow have now ran -``` - -### Configuration -This is optional and the settings class has the default values mentioned below. - -The settings object is configured this way: -```cs -services.Configure(x => { }); // Optional way to add settings -``` -The possible values to set is: - - * `x.FailOnUnknownAction` (default: `true`): If an action cannot be found and exception is thrown. This can be avoid and the action is ignored and the status is assumed to be `Succeeded`. - * `x.IgnoreActions` (default: `empty`): List of action names which are ignored during execution, the action is not executed and the status is assumed to be `Succeeded`. -* `x.LogActionsStates` (default: `true`): Logs JSON, parsed input and generated output for every action executed. - -### Asserting action input and output - -The FlowReport from triggering the flow can be used to assert the input and output of an action. - -This can be used to verify that the expected parameters to an action is present and you can assert the input is as expected. - -```c# -var greetingCardItems = flowReport.ActionStates["Create_a_new_row_-_Create_greeting_note"] - .ActionInput?["parameters"]?["item"]; -Assert.IsNotNull(greetingCardItems); -Assert.AreEqual(expectedNoteSubject, greetingCardItems["subject"]); -Assert.AreEqual(expectedNoteText, greetingCardItems["notetext"]); -``` - -### Adding actions -Actions can be added in three ways - -1. Using specific action name -2. Using Connection ApiId and supported OperationIds -3. Using Action type (**Not recommended**) - -#### 1. Using specific action name -```c# -services.AddFlowActionByName("Get_forecast_for_today_(Metric)"); -``` - -When the action named *Get_forecast_for_today_(Metric)* is reached and about to be executed, the class with type GetMsnWeather is retrieved from the ServiceProvider and used to execute the action. - -#### 2. Using Connection ApiId and supported OperationIds -```c# -// For OpenApiConnection connectors only -services.AddFlowActionByApiIdAndOperationsName( - "/providers/Microsoft.PowerApps/apis/shared_flowpush", - new []{ "SendEmailNotification", "SendNotification" }); -``` - -When an action from the **Notification** connector with one of the supported types is reached in the flow, a action executor instance of type `Notification` is created and used to execute the action. - -#### 3. Using Action type (**Not recommended**) -```c# -services.AddFlowActionByFlowType("If"); -``` -When the generic action type **If** i reached, an action executor instance of type `IfActionExecutor` is created and used to execute the action. - -This is not recommended due to the fact that every OpenApiConnection connector will have the type **OpenApiConnection**. This means that both Common Data Service (current environment) and many others, will use the same action executors, which is not the correct way to do it. - -This way of resolving an action executor is only used to resolve actions, where only one Action uses that type. This is **If**, **DoUntil** etc. - -### Creating action executors. -Currently there are two classes to extend, one is **DefaultBaseActionExecutor** and the other is **OpenApiConnectionBaseActionExecutor**. - -#### DefaultBaseActionExecutor -```c# -private class ActionExecutor : DefaultBaseActionExecutor -{ - private readonly IExpressionEngine _expression; - - // Using dependency injection to get dependencies - public TriggerActionExecutor(IExpressionEngine expression) - { - _expression = expression ?? throw new ArgumentNullException(nameof(expression)); - } - - public override Task Execute() - { - var result = new ActionResult(); - - try - { - // Some dangerous operation - // ... - - result.ActionOutput = new ValueContainer(new Dictionary() - { - {"Key", new ValueContainer("Value")} - }); - // Corresponds to: outputs('').Key || outputs('')['Key'] - - result.ActionStatus = ActionStatus.Succeeded; - } - catch(EvenMoreDangerousException exp) - { - // PAMU handles the exceptions... - result.ActionStatus = ActionStatus.Failed; - result.ActionExecutorException = exp; - } - - return Task.FromResult(result); - } -} -``` - -The execute method is called when the action is run. - -#### OpenApiConnectionBaseActionExecutor -```c# -private class ActionExecutor : OpenApiConnectionActionExecutorBase -{ - // To easier register the Action Executor - public const string FlowActionName = "Update_Account_-_Invalid_Id"; - - public override Task Execute() - { - // ... Execute action functionality - - var parameters = Parameters; - - var entityName = parameters["string"].GetValue(); - - // ... - } -} -``` - -When using OpenApiConnectionActionExecutorBase, some extra values form the Json definition is parsed and ready to use. These are currently values in the parameter object and host object. - -### Dependencies -Power Automate MockUp heavily depends on dependencies and its a great way to easily get different classes, in your own class. -Below is a list of dependencies you might want to use, when executing flows. - -#### ExpressionParser -```c# -ValueContainer value = expressionParser.Parse(""); -``` -An expression is known from Power Automate such as `"@toLower('Jonh Doe')"` or `"@outputs('Get_contacts')[2]"`. -Every expression from Power Automate is supported in PowerAutomateMockUp. - -The response is returned wrap in the ValueContainer. - -#### IState -IState, and its implementation, is how the state of the execution of a Power Automate flow is handled. It contains the trigger values and can give the value of previous executed actions, by either using one of the interfaces below (for simplicity) or IState itself. - -## Tests - -Tests are located in the **Tests** project and they are written using Nunit as test framework. - - -## Contribute - -Feel free to create an issue with a suggestion, create a pull request or participate in any way you like :rocket: - - - -## Code style -The code is written using [Riders](https://www.jetbrains.com/help/rider/Settings_Code_Style_CSHARP.html) default C# code style. - -Commits are written in [conventional commit](https://www.conventionalcommits.org/en/v1.0.0/) style, the commit messages are used to determine the version and when to release a new version. The pipeline is hosted on Github and [Semantic Release](https://github.com/semantic-release/semantic-release) is used. - - - -## License - -MIT diff --git a/samples/.gitkeep b/samples/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/Test/ActionTests/DoUntilActionExecutorTest.cs b/src/PowerAutomateMockUp.Tests/ActionTests/DoUntilActionExecutorTest.cs similarity index 98% rename from Test/ActionTests/DoUntilActionExecutorTest.cs rename to src/PowerAutomateMockUp.Tests/ActionTests/DoUntilActionExecutorTest.cs index bc6c8fa..bcbb8db 100644 --- a/Test/ActionTests/DoUntilActionExecutorTest.cs +++ b/src/PowerAutomateMockUp.Tests/ActionTests/DoUntilActionExecutorTest.cs @@ -6,10 +6,9 @@ using Parser; using Parser.ExpressionParser; using Parser.FlowParser.ActionExecutors; -using Parser.FlowParser.ActionExecutors.Implementations; using Parser.FlowParser.ActionExecutors.Implementations.ControlActions; -namespace Test.ActionTests +namespace PowerAutomateMockUp.Tests.ActionTests { [TestFixture] public class DoUntilActionExecutorTest diff --git a/Test/ActionTests/ForEachActionExecutorTest.cs b/src/PowerAutomateMockUp.Tests/ActionTests/ForEachActionExecutorTest.cs similarity index 98% rename from Test/ActionTests/ForEachActionExecutorTest.cs rename to src/PowerAutomateMockUp.Tests/ActionTests/ForEachActionExecutorTest.cs index 8a0384b..c0d81fd 100644 --- a/Test/ActionTests/ForEachActionExecutorTest.cs +++ b/src/PowerAutomateMockUp.Tests/ActionTests/ForEachActionExecutorTest.cs @@ -6,10 +6,9 @@ using Parser; using Parser.ExpressionParser; using Parser.FlowParser.ActionExecutors; -using Parser.FlowParser.ActionExecutors.Implementations; using Parser.FlowParser.ActionExecutors.Implementations.ControlActions; -namespace Test.ActionTests +namespace PowerAutomateMockUp.Tests.ActionTests { [TestFixture] public class ForEachActionExecutorTest diff --git a/Test/ActionTests/IfActionExecutorTest.cs b/src/PowerAutomateMockUp.Tests/ActionTests/IfActionExecutorTest.cs similarity index 99% rename from Test/ActionTests/IfActionExecutorTest.cs rename to src/PowerAutomateMockUp.Tests/ActionTests/IfActionExecutorTest.cs index 55c5784..d76b32e 100644 --- a/Test/ActionTests/IfActionExecutorTest.cs +++ b/src/PowerAutomateMockUp.Tests/ActionTests/IfActionExecutorTest.cs @@ -10,7 +10,7 @@ using Parser.FlowParser.ActionExecutors; using Parser.FlowParser.ActionExecutors.Implementations.ControlActions; -namespace Test.ActionTests +namespace PowerAutomateMockUp.Tests.ActionTests { [TestFixture] public class IfActionExecutorTest diff --git a/Test/ActionTests/ScopeActionExecutorTest.cs b/src/PowerAutomateMockUp.Tests/ActionTests/ScopeActionExecutorTest.cs similarity index 95% rename from Test/ActionTests/ScopeActionExecutorTest.cs rename to src/PowerAutomateMockUp.Tests/ActionTests/ScopeActionExecutorTest.cs index 8017b31..50dfcac 100644 --- a/Test/ActionTests/ScopeActionExecutorTest.cs +++ b/src/PowerAutomateMockUp.Tests/ActionTests/ScopeActionExecutorTest.cs @@ -6,7 +6,7 @@ using Parser; using Parser.FlowParser.ActionExecutors; -namespace Test.ActionTests +namespace PowerAutomateMockUp.Tests.ActionTests { [TestFixture] public class ScopeActionExecutorTest diff --git a/Test/ActionTests/SwitchActionTest.cs b/src/PowerAutomateMockUp.Tests/ActionTests/SwitchActionTest.cs similarity index 97% rename from Test/ActionTests/SwitchActionTest.cs rename to src/PowerAutomateMockUp.Tests/ActionTests/SwitchActionTest.cs index 9c90c4a..0198674 100644 --- a/Test/ActionTests/SwitchActionTest.cs +++ b/src/PowerAutomateMockUp.Tests/ActionTests/SwitchActionTest.cs @@ -6,10 +6,9 @@ using Parser; using Parser.ExpressionParser; using Parser.FlowParser.ActionExecutors; -using Parser.FlowParser.ActionExecutors.Implementations; using Parser.FlowParser.ActionExecutors.Implementations.ControlActions; -namespace Test.ActionTests +namespace PowerAutomateMockUp.Tests.ActionTests { [TestFixture] public class SwitchActionTest diff --git a/Test/ActionTests/TerminateActionTest.cs b/src/PowerAutomateMockUp.Tests/ActionTests/TerminateActionTest.cs similarity index 97% rename from Test/ActionTests/TerminateActionTest.cs rename to src/PowerAutomateMockUp.Tests/ActionTests/TerminateActionTest.cs index 9fd0d3c..5fa1e58 100644 --- a/Test/ActionTests/TerminateActionTest.cs +++ b/src/PowerAutomateMockUp.Tests/ActionTests/TerminateActionTest.cs @@ -8,7 +8,7 @@ using Parser.FlowParser.ActionExecutors; using Parser.FlowParser.ActionExecutors.Implementations.ControlActions; -namespace Test.ActionTests +namespace PowerAutomateMockUp.Tests.ActionTests { [TestFixture] public class TerminateActionTest diff --git a/Test/Expression/CollectionFunctionTests.cs b/src/PowerAutomateMockUp.Tests/Expressions/CollectionFunctionTests.cs similarity index 99% rename from Test/Expression/CollectionFunctionTests.cs rename to src/PowerAutomateMockUp.Tests/Expressions/CollectionFunctionTests.cs index cb7968b..aeb5185 100644 --- a/Test/Expression/CollectionFunctionTests.cs +++ b/src/PowerAutomateMockUp.Tests/Expressions/CollectionFunctionTests.cs @@ -2,7 +2,7 @@ using Parser.ExpressionParser; using Parser.ExpressionParser.Functions.Implementations.CollectionFunctions; -namespace Test.Expression +namespace PowerAutomateMockUp.Tests.Expressions { public class CollectionFunctionTests { diff --git a/Test/Expression/ConversionFunctionTest.cs b/src/PowerAutomateMockUp.Tests/Expressions/ConversionFunctionTest.cs similarity index 98% rename from Test/Expression/ConversionFunctionTest.cs rename to src/PowerAutomateMockUp.Tests/Expressions/ConversionFunctionTest.cs index ea4afb7..59b0482 100644 --- a/Test/Expression/ConversionFunctionTest.cs +++ b/src/PowerAutomateMockUp.Tests/Expressions/ConversionFunctionTest.cs @@ -2,7 +2,7 @@ using Parser.ExpressionParser; using Parser.ExpressionParser.Functions.Implementations.ConversionFunctions; -namespace Test.Expression +namespace PowerAutomateMockUp.Tests.Expressions { public class ConversionFunctionTest { diff --git a/Test/Expression/GenericExpressionTest.cs b/src/PowerAutomateMockUp.Tests/Expressions/GenericExpressionTest.cs similarity index 95% rename from Test/Expression/GenericExpressionTest.cs rename to src/PowerAutomateMockUp.Tests/Expressions/GenericExpressionTest.cs index 4c0fca0..39d13fe 100644 --- a/Test/Expression/GenericExpressionTest.cs +++ b/src/PowerAutomateMockUp.Tests/Expressions/GenericExpressionTest.cs @@ -2,7 +2,7 @@ using Parser.ExpressionParser; using Parser.ExpressionParser.Functions.Base; -namespace Test.Expression +namespace PowerAutomateMockUp.Tests.Expressions { [TestFixture] public class GenericExpressionTest diff --git a/Test/Expression/LogicalFunctionTest.cs b/src/PowerAutomateMockUp.Tests/Expressions/LogicalFunctionTest.cs similarity index 99% rename from Test/Expression/LogicalFunctionTest.cs rename to src/PowerAutomateMockUp.Tests/Expressions/LogicalFunctionTest.cs index 5e64bf6..12093fa 100644 --- a/Test/Expression/LogicalFunctionTest.cs +++ b/src/PowerAutomateMockUp.Tests/Expressions/LogicalFunctionTest.cs @@ -1,7 +1,7 @@ using Parser.ExpressionParser; using Parser.ExpressionParser.Functions.Implementations.LogicalComparisonFunctions; -namespace Test.Expression +namespace PowerAutomateMockUp.Tests.Expressions { public class LogicalFunctionTest { diff --git a/Test/Expression/MathFunctionTests.cs b/src/PowerAutomateMockUp.Tests/Expressions/MathFunctionTests.cs similarity index 89% rename from Test/Expression/MathFunctionTests.cs rename to src/PowerAutomateMockUp.Tests/Expressions/MathFunctionTests.cs index 4562098..81a0eff 100644 --- a/Test/Expression/MathFunctionTests.cs +++ b/src/PowerAutomateMockUp.Tests/Expressions/MathFunctionTests.cs @@ -1,7 +1,7 @@ using Parser.ExpressionParser; using Parser.ExpressionParser.Functions.Math; -namespace Test.Expression +namespace PowerAutomateMockUp.Tests.Expressions { public class MathFunctionTests { diff --git a/Test/Expression/StringFunctionTests.cs b/src/PowerAutomateMockUp.Tests/Expressions/StringFunctionTests.cs similarity index 95% rename from Test/Expression/StringFunctionTests.cs rename to src/PowerAutomateMockUp.Tests/Expressions/StringFunctionTests.cs index 263754b..a3540f3 100644 --- a/Test/Expression/StringFunctionTests.cs +++ b/src/PowerAutomateMockUp.Tests/Expressions/StringFunctionTests.cs @@ -2,7 +2,7 @@ using Parser.ExpressionParser; using Parser.ExpressionParser.Functions.Implementations.StringFunctions; -namespace Test.Expression +namespace PowerAutomateMockUp.Tests.Expressions { [TestFixture] public class StringFunctionTests @@ -49,7 +49,7 @@ public class StringFunctionTests new FormatNumberFunction(), "formatNumber", new[] {new ValueContainer(17.35), new ValueContainer("C2"), new ValueContainer("is-is")}, - new ValueContainer("17,35 kr") + new ValueContainer("17,35 ISK") }, new object[] { @@ -73,13 +73,6 @@ public class StringFunctionTests new ValueContainer(0) }, new object[] - { - new LastIndexOfFunction(), - "lastIndexOf", - new[] {new ValueContainer("Hey there"), new ValueContainer("e")}, - new ValueContainer(8) - }, - new object[] { new LastIndexOfFunction(), "lastIndexOf", diff --git a/Test/FlowSamples/ContactTrigger.json b/src/PowerAutomateMockUp.Tests/FlowSamples/ContactTrigger.json similarity index 100% rename from Test/FlowSamples/ContactTrigger.json rename to src/PowerAutomateMockUp.Tests/FlowSamples/ContactTrigger.json diff --git a/Test/FlowSamples/PAMUApplyToEach.json b/src/PowerAutomateMockUp.Tests/FlowSamples/PAMUApplyToEach.json similarity index 100% rename from Test/FlowSamples/PAMUApplyToEach.json rename to src/PowerAutomateMockUp.Tests/FlowSamples/PAMUApplyToEach.json diff --git a/Test/FlowSamples/PAMUSwitch.json b/src/PowerAutomateMockUp.Tests/FlowSamples/PAMUSwitch.json similarity index 100% rename from Test/FlowSamples/PAMUSwitch.json rename to src/PowerAutomateMockUp.Tests/FlowSamples/PAMUSwitch.json diff --git a/Test/FlowSamples/PowerAutomateMockUpSampleFlow.json b/src/PowerAutomateMockUp.Tests/FlowSamples/PowerAutomateMockUpSampleFlow.json similarity index 100% rename from Test/FlowSamples/PowerAutomateMockUpSampleFlow.json rename to src/PowerAutomateMockUp.Tests/FlowSamples/PowerAutomateMockUpSampleFlow.json diff --git a/Test/FlowSamples/Pure CDS ce.json b/src/PowerAutomateMockUp.Tests/FlowSamples/Pure CDS ce.json similarity index 100% rename from Test/FlowSamples/Pure CDS ce.json rename to src/PowerAutomateMockUp.Tests/FlowSamples/Pure CDS ce.json diff --git a/Test/FullFlowTest.cs b/src/PowerAutomateMockUp.Tests/FullFlowTest.cs similarity index 86% rename from Test/FullFlowTest.cs rename to src/PowerAutomateMockUp.Tests/FullFlowTest.cs index 64126ab..6ad2134 100644 --- a/Test/FullFlowTest.cs +++ b/src/PowerAutomateMockUp.Tests/FullFlowTest.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.IO; using System.Threading.Tasks; using Microsoft.Extensions.DependencyInjection; using NUnit.Framework; @@ -8,17 +9,17 @@ using Parser.FlowParser; using Parser.FlowParser.ActionExecutors; -namespace Test +namespace PowerAutomateMockUp.Tests { [TestFixture] public class FullFlowTest { - private static readonly string TestFlowPath = System.IO.Path.GetFullPath(@"FlowSamples"); + private static readonly string TestFlowPath = Path.GetFullPath("FlowSamples"); [Test] public async Task TestFlowFalse() { - var path = @$"{TestFlowPath}\PowerAutomateMockUpSampleFlow.json"; + var path = Path.Combine(TestFlowPath, "PowerAutomateMockUpSampleFlow.json"); var services = new ServiceCollection(); @@ -56,7 +57,7 @@ public async Task TestFlowFalse() private class TriggerActionExecutor : DefaultBaseActionExecutor { public const string ApiId = "/providers/Microsoft.PowerApps/apis/shared_commondataserviceforapps"; - public static readonly string[] SupportedOperations = {"SubscribeWebhookTrigger"}; + public static readonly string[] SupportedOperations = { "SubscribeWebhookTrigger" }; public override Task Execute() { @@ -65,17 +66,17 @@ public override Task Execute() ActionStatus = ActionStatus.Succeeded, ActionOutput = new ValueContainer( new Dictionary { - {"body/name", new ValueContainer("Alice Bob")}, - {"body/accountid", new ValueContainer(Guid.NewGuid().ToString())} + { "body/name", new ValueContainer("Alice Bob") }, + { "body/accountid", new ValueContainer(Guid.NewGuid().ToString()) } }) }); } } - private class UpdateAccountInvalidId : + private class UpdateAccountInvalidId : OpenApiConnectionActionExecutorBase { - public const string FlowActionName = + public const string FlowActionName = "Update_Account_-_Invalid_Id"; public override Task Execute() @@ -83,8 +84,10 @@ public override Task Execute() Assert.AreEqual(FlowActionName, ActionName); return Task.FromResult(new ActionResult - {ActionStatus = ActionStatus.Failed, - ActionOutput = new ValueContainer(true)}); + { + ActionStatus = ActionStatus.Failed, + ActionOutput = new ValueContainer(true) + }); } public UpdateAccountInvalidId( @@ -96,7 +99,7 @@ public UpdateAccountInvalidId( private class SendEmailNotification : OpenApiConnectionActionExecutorBase { public const string ApiId = "/providers/Microsoft.PowerApps/apis/shared_flowpush"; - public static readonly string[] SupportedOperations = {"SendEmailNotification"}; + public static readonly string[] SupportedOperations = { "SendEmailNotification" }; public override Task Execute() { @@ -105,7 +108,7 @@ public override Task Execute() Console.WriteLine($"Email Title: {Parameters["NotificationEmailDefinition/notificationSubject"]}"); Console.WriteLine($"Email Content: {Parameters["NotificationEmailDefinition/notificationBody"]}"); - return Task.FromResult(new ActionResult {ActionOutput = new ValueContainer(true)}); + return Task.FromResult(new ActionResult { ActionOutput = new ValueContainer(true) }); } public SendEmailNotification(IExpressionEngine expressionEngine) : base(expressionEngine) @@ -128,7 +131,7 @@ public override Task Execute() Assert.AreEqual("accounts", Parameters["entityName"].GetValue()); Assert.AreNotEqual(ValueContainer.ValueType.Null, Parameters["recordId"]); - return Task.FromResult(new ActionResult {ActionOutput = new ValueContainer(true)}); + return Task.FromResult(new ActionResult { ActionOutput = new ValueContainer(true) }); } } @@ -165,4 +168,4 @@ public SendOutWarning(IExpressionEngine expressionEngine) : } } } -} \ No newline at end of file +} diff --git a/Test/FullFlowTestV2.cs b/src/PowerAutomateMockUp.Tests/FullFlowTestV2.cs similarity index 95% rename from Test/FullFlowTestV2.cs rename to src/PowerAutomateMockUp.Tests/FullFlowTestV2.cs index 6ff2805..f0250aa 100644 --- a/Test/FullFlowTestV2.cs +++ b/src/PowerAutomateMockUp.Tests/FullFlowTestV2.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.IO; using System.Threading.Tasks; using Microsoft.Extensions.DependencyInjection; using NUnit.Framework; @@ -8,17 +9,17 @@ using Parser.FlowParser; using Parser.FlowParser.ActionExecutors; -namespace Test +namespace PowerAutomateMockUp.Tests { [TestFixture] public class FullFlowTestV2 { - private static readonly string TestFlowPath = System.IO.Path.GetFullPath(@"FlowSamples"); + private static readonly string TestFlowPath = Path.GetFullPath("FlowSamples"); [Test] public async Task TestFlowFalse() { - var path = @$"{TestFlowPath}\PowerAutomateMockUpSampleFlow.json"; + var path = Path.Combine(TestFlowPath, "PowerAutomateMockUpSampleFlow.json"); var services = new ServiceCollection(); services.AddFlowRunner(); @@ -55,6 +56,7 @@ public async Task TestFlowFalse() Assert.IsTrue(flowResult.ActionStates.ContainsKey(actionName), "Action is expected to be triggered."); Assert.NotNull(flowResult.ActionStates[actionName].ActionInput?["parameters"], "Action input is expected."); var actionInput = flowResult.ActionStates[actionName].ActionInput?["parameters"].AsDict(); + Assert.IsNotNull(actionInput); Assert.IsTrue(actionInput.ContainsKey("NotificationEmailDefinition"), "Action input should contain this object."); var notification = actionInput["NotificationEmailDefinition"].AsDict(); diff --git a/Test/FullFlowTestWithException.cs b/src/PowerAutomateMockUp.Tests/FullFlowTestWithException.cs similarity index 91% rename from Test/FullFlowTestWithException.cs rename to src/PowerAutomateMockUp.Tests/FullFlowTestWithException.cs index f9a233d..69885b9 100644 --- a/Test/FullFlowTestWithException.cs +++ b/src/PowerAutomateMockUp.Tests/FullFlowTestWithException.cs @@ -1,26 +1,25 @@ using System; using System.Collections.Generic; +using System.IO; using System.Threading.Tasks; using Microsoft.Extensions.DependencyInjection; using NUnit.Framework; using Parser; using Parser.ExpressionParser; -using Parser.ExpressionParser.Functions.Base; -using Parser.ExpressionParser.Functions.Implementations.ConversionFunctions; using Parser.FlowParser; using Parser.FlowParser.ActionExecutors; -namespace Test +namespace PowerAutomateMockUp.Tests { [TestFixture] public class FullFlowTestWithException { - private static readonly string TestFlowPath = System.IO.Path.GetFullPath(@"FlowSamples"); + private static readonly string TestFlowPath = Path.GetFullPath("FlowSamples"); [Test] public void TestFlowFalse() { - var path = @$"{TestFlowPath}\PowerAutomateMockUpSampleFlow.json"; + var path = Path.Combine(TestFlowPath, "PowerAutomateMockUpSampleFlow.json"); var services = new ServiceCollection(); diff --git a/Test/OpenApiConnectionActionExecutorBaseTest.cs b/src/PowerAutomateMockUp.Tests/OpenApiConnectionActionExecutorBaseTest.cs similarity index 93% rename from Test/OpenApiConnectionActionExecutorBaseTest.cs rename to src/PowerAutomateMockUp.Tests/OpenApiConnectionActionExecutorBaseTest.cs index 40ec1d5..a7c35ec 100644 --- a/Test/OpenApiConnectionActionExecutorBaseTest.cs +++ b/src/PowerAutomateMockUp.Tests/OpenApiConnectionActionExecutorBaseTest.cs @@ -1,25 +1,25 @@ using System; using System.Collections.Generic; +using System.IO; using System.Threading.Tasks; using Microsoft.Extensions.DependencyInjection; using NUnit.Framework; using Parser; using Parser.ExpressionParser; -using Parser.ExpressionParser.Functions.Base; using Parser.FlowParser; using Parser.FlowParser.ActionExecutors; -namespace Test +namespace PowerAutomateMockUp.Tests { [TestFixture] public class OpenApiConnectionActionExecutorBaseTest { - private static readonly string TestFlowPath = System.IO.Path.GetFullPath(@"FlowSamples"); + private static readonly string TestFlowPath = Path.GetFullPath("FlowSamples"); [Test] public async Task TestFlowFalse() { - var path = @$"{TestFlowPath}\Pure CDS ce.json"; + var path = Path.Combine(TestFlowPath, "Pure CDS ce.json"); var services = new ServiceCollection(); diff --git a/Test/PAMUApplyToEachTest.cs b/src/PowerAutomateMockUp.Tests/PAMUApplyToEachTest.cs similarity index 95% rename from Test/PAMUApplyToEachTest.cs rename to src/PowerAutomateMockUp.Tests/PAMUApplyToEachTest.cs index a704b90..fab53ca 100644 --- a/Test/PAMUApplyToEachTest.cs +++ b/src/PowerAutomateMockUp.Tests/PAMUApplyToEachTest.cs @@ -1,26 +1,26 @@ using System; using System.Collections.Generic; +using System.IO; using System.Linq; using System.Threading.Tasks; using Microsoft.Extensions.DependencyInjection; using NUnit.Framework; using Parser; using Parser.ExpressionParser; -using Parser.ExpressionParser.Functions.Base; using Parser.FlowParser; using Parser.FlowParser.ActionExecutors; -namespace Test +namespace PowerAutomateMockUp.Tests { [TestFixture] public class PAMUApplyToEachTest { - private static readonly string TestFlowPath = System.IO.Path.GetFullPath(@"FlowSamples"); + private static readonly string TestFlowPath = Path.GetFullPath("FlowSamples"); [Test] public async Task TestForEachFlow() { - var path = @$"{TestFlowPath}\PAMUApplyToEach.json"; + var path = Path.Combine(TestFlowPath, "PAMUApplyToEach.json"); var services = new ServiceCollection(); diff --git a/Test/PAMUSwitchTest.cs b/src/PowerAutomateMockUp.Tests/PAMUSwitchTest.cs similarity index 86% rename from Test/PAMUSwitchTest.cs rename to src/PowerAutomateMockUp.Tests/PAMUSwitchTest.cs index fb95d56..d67be33 100644 --- a/Test/PAMUSwitchTest.cs +++ b/src/PowerAutomateMockUp.Tests/PAMUSwitchTest.cs @@ -1,26 +1,26 @@ using System; using System.Collections.Generic; +using System.IO; using System.Linq; using System.Threading.Tasks; using Microsoft.Extensions.DependencyInjection; using NUnit.Framework; using Parser; using Parser.ExpressionParser; -using Parser.ExpressionParser.Functions.Base; using Parser.FlowParser; using Parser.FlowParser.ActionExecutors; -namespace Test +namespace PowerAutomateMockUp.Tests { [TestFixture] public class PAMUSwitchTest { - private static readonly string TestFlowPath = System.IO.Path.GetFullPath(@"FlowSamples"); + private static readonly string TestFlowPath = Path.GetFullPath("FlowSamples"); [Test] public async Task TestForEachFlow() { - var path = @$"{TestFlowPath}\PAMUSwitch.json"; + var path = Path.Combine(TestFlowPath, "PAMUSwitch.json"); var services = new ServiceCollection(); @@ -54,7 +54,7 @@ private class ListRecordsAccounts : OpenApiConnectionActionExecutorBase { public const string FlowActionName = "List_records"; - public static readonly Guid[] Guids = {Guid.NewGuid(), Guid.NewGuid(), Guid.NewGuid()}; + public static readonly Guid[] Guids = { Guid.NewGuid(), Guid.NewGuid(), Guid.NewGuid() }; public override Task Execute() { @@ -63,8 +63,8 @@ public override Task Execute() new ValueContainer( new Dictionary { - {"accountid", new ValueContainer(Guids[0].ToString())}, - {"name", new ValueContainer("Phillip Price")} + { "accountid", new ValueContainer(Guids[0].ToString()) }, + { "name", new ValueContainer("Phillip Price") } }) }); @@ -73,7 +73,7 @@ public override Task Execute() ActionStatus = ActionStatus.Succeeded, ActionOutput = new ValueContainer( new Dictionary { - {"body/value", accountList} + { "body/value", accountList } }) }); } @@ -112,4 +112,4 @@ public override Task Execute() } } } -} \ No newline at end of file +} diff --git a/Test/ParserTest.cs b/src/PowerAutomateMockUp.Tests/ParserTest.cs similarity index 99% rename from Test/ParserTest.cs rename to src/PowerAutomateMockUp.Tests/ParserTest.cs index 083e382..6eb0ea8 100644 --- a/Test/ParserTest.cs +++ b/src/PowerAutomateMockUp.Tests/ParserTest.cs @@ -5,11 +5,9 @@ using NUnit.Framework; using Parser; using Parser.ExpressionParser; -using Parser.ExpressionParser.Functions.Base; using Parser.ExpressionParser.Functions.CustomException; - -namespace Test +namespace PowerAutomateMockUp.Tests { [TestFixture] public class ParserTest diff --git a/Test/Test.csproj b/src/PowerAutomateMockUp.Tests/PowerAutomateMockUp.Tests.csproj similarity index 96% rename from Test/Test.csproj rename to src/PowerAutomateMockUp.Tests/PowerAutomateMockUp.Tests.csproj index d5e2739..4aa4dcf 100644 --- a/Test/Test.csproj +++ b/src/PowerAutomateMockUp.Tests/PowerAutomateMockUp.Tests.csproj @@ -1,7 +1,7 @@  - netcoreapp3.1;net48;net462 + netcoreapp3.1;net48;net462;net60;net80 8 diff --git a/Test/StateTest.cs b/src/PowerAutomateMockUp.Tests/StateTest.cs similarity index 95% rename from Test/StateTest.cs rename to src/PowerAutomateMockUp.Tests/StateTest.cs index 29d10d4..bbf5cc9 100644 --- a/Test/StateTest.cs +++ b/src/PowerAutomateMockUp.Tests/StateTest.cs @@ -1,9 +1,8 @@ -using System.Collections.Generic; -using NUnit.Framework; +using NUnit.Framework; using Parser; using Parser.ExpressionParser; -namespace Test +namespace PowerAutomateMockUp.Tests { [TestFixture] public class StateTest diff --git a/Test/TestLogger.cs b/src/PowerAutomateMockUp.Tests/TestLogger.cs similarity index 96% rename from Test/TestLogger.cs rename to src/PowerAutomateMockUp.Tests/TestLogger.cs index 01f3791..aaeee14 100644 --- a/Test/TestLogger.cs +++ b/src/PowerAutomateMockUp.Tests/TestLogger.cs @@ -1,7 +1,7 @@ using System; using Microsoft.Extensions.Logging; -namespace Test +namespace PowerAutomateMockUp.Tests { // https://alastaircrabtree.com/using-logging-in-unit-tests-in-net-core/ public static class TestLogger diff --git a/Test/TestValueContainerTrigger.cs b/src/PowerAutomateMockUp.Tests/TestValueContainerTrigger.cs similarity index 93% rename from Test/TestValueContainerTrigger.cs rename to src/PowerAutomateMockUp.Tests/TestValueContainerTrigger.cs index 7f0e7c2..d9a66bf 100644 --- a/Test/TestValueContainerTrigger.cs +++ b/src/PowerAutomateMockUp.Tests/TestValueContainerTrigger.cs @@ -1,4 +1,5 @@ using System.Collections.Generic; +using System.IO; using System.Threading.Tasks; using Microsoft.Extensions.DependencyInjection; using NUnit.Framework; @@ -7,18 +8,18 @@ using Parser.FlowParser; using Parser.FlowParser.ActionExecutors; -namespace Test +namespace PowerAutomateMockUp.Tests { [TestFixture] public class TestValueContainerTrigger { - private static readonly string TestFlowPath = System.IO.Path.GetFullPath(@"FlowSamples"); + private static readonly string TestFlowPath = Path.GetFullPath("FlowSamples"); [Test] public async Task TestFlowFalse() { // Arrange - var path = @$"{TestFlowPath}\ContactTrigger.json"; + var path = Path.Combine(TestFlowPath, "ContactTrigger.json"); var services = new ServiceCollection(); diff --git a/Test/ValueContainer/ValueContainerCompareTest.cs b/src/PowerAutomateMockUp.Tests/ValueContainers/ValueContainerCompareTest.cs similarity index 98% rename from Test/ValueContainer/ValueContainerCompareTest.cs rename to src/PowerAutomateMockUp.Tests/ValueContainers/ValueContainerCompareTest.cs index e533808..251c51b 100644 --- a/Test/ValueContainer/ValueContainerCompareTest.cs +++ b/src/PowerAutomateMockUp.Tests/ValueContainers/ValueContainerCompareTest.cs @@ -2,7 +2,7 @@ using NUnit.Framework; using Parser.ExpressionParser; -namespace Test +namespace PowerAutomateMockUp.Tests.ValueContainers { [TestFixture] public class ValueContainerCompareTest diff --git a/Test/ValueContainer/ValueContainerJTokenConstructorTest.cs b/src/PowerAutomateMockUp.Tests/ValueContainers/ValueContainerJTokenConstructorTest.cs similarity index 97% rename from Test/ValueContainer/ValueContainerJTokenConstructorTest.cs rename to src/PowerAutomateMockUp.Tests/ValueContainers/ValueContainerJTokenConstructorTest.cs index 40f7acd..92c2a10 100644 --- a/Test/ValueContainer/ValueContainerJTokenConstructorTest.cs +++ b/src/PowerAutomateMockUp.Tests/ValueContainers/ValueContainerJTokenConstructorTest.cs @@ -3,7 +3,7 @@ using NUnit.Framework; using Parser.ExpressionParser; -namespace Test +namespace PowerAutomateMockUp.Tests.ValueContainers { [TestFixture] public class ValueContainerJTokenConstructorTest diff --git a/Test/ValueContainer/ValueContainerTest.cs b/src/PowerAutomateMockUp.Tests/ValueContainers/ValueContainerTest.cs similarity index 99% rename from Test/ValueContainer/ValueContainerTest.cs rename to src/PowerAutomateMockUp.Tests/ValueContainers/ValueContainerTest.cs index b193f7f..b7a5891 100644 --- a/Test/ValueContainer/ValueContainerTest.cs +++ b/src/PowerAutomateMockUp.Tests/ValueContainers/ValueContainerTest.cs @@ -4,7 +4,7 @@ using NUnit.Framework; using Parser.ExpressionParser; -namespace Test +namespace PowerAutomateMockUp.Tests.ValueContainers { [TestFixture] public class ValueContainerTest diff --git a/PowerAutomateMockUp.sln b/src/PowerAutomateMockUp.sln similarity index 90% rename from PowerAutomateMockUp.sln rename to src/PowerAutomateMockUp.sln index ef8e704..b6d991d 100644 --- a/PowerAutomateMockUp.sln +++ b/src/PowerAutomateMockUp.sln @@ -3,7 +3,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 16 VisualStudioVersion = 16.0.30413.136 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Test", "Test\Test.csproj", "{DCBD636B-9320-4843-B2C0-F6599162116B}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PowerAutomateMockUp.Tests", "PowerAutomateMockUp.Tests\PowerAutomateMockUp.Tests.csproj", "{DCBD636B-9320-4843-B2C0-F6599162116B}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PowerAutomateMockUp", "PowerAutomateMockUp\PowerAutomateMockUp.csproj", "{FA5B2BAD-31DF-42D9-9E35-BC058316F06D}" EndProject diff --git a/PowerAutomateMockUp/ExpressionParser/ExpressionEngine.cs b/src/PowerAutomateMockUp/ExpressionParser/ExpressionEngine.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/ExpressionEngine.cs rename to src/PowerAutomateMockUp/ExpressionParser/ExpressionEngine.cs diff --git a/PowerAutomateMockUp/ExpressionParser/ExpressionGrammar.cs b/src/PowerAutomateMockUp/ExpressionParser/ExpressionGrammar.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/ExpressionGrammar.cs rename to src/PowerAutomateMockUp/ExpressionParser/ExpressionGrammar.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Base/IFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Base/IFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Base/IFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Base/IFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/CustomException/ArgumentError.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/CustomException/ArgumentError.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/CustomException/ArgumentError.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/CustomException/ArgumentError.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/CustomException/FunctionNotKnown.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/CustomException/FunctionNotKnown.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/CustomException/FunctionNotKnown.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/CustomException/FunctionNotKnown.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/CustomException/InvalidTemplateException.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/CustomException/InvalidTemplateException.cs similarity index 96% rename from PowerAutomateMockUp/ExpressionParser/Functions/CustomException/InvalidTemplateException.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/CustomException/InvalidTemplateException.cs index 5acddbd..91b269c 100644 --- a/PowerAutomateMockUp/ExpressionParser/Functions/CustomException/InvalidTemplateException.cs +++ b/src/PowerAutomateMockUp/ExpressionParser/Functions/CustomException/InvalidTemplateException.cs @@ -10,10 +10,6 @@ public InvalidTemplateException() { } - protected InvalidTemplateException(SerializationInfo info, StreamingContext context) : base(info, context) - { - } - public InvalidTemplateException(string message) : base(message) { } diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/ContainsFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/ContainsFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/ContainsFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/ContainsFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/EmptyFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/EmptyFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/EmptyFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/EmptyFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/FirstFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/FirstFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/FirstFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/FirstFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/IntersectionFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/IntersectionFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/IntersectionFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/IntersectionFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/JoinFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/JoinFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/JoinFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/JoinFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/LastFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/LastFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/LastFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/LastFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/LengthFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/LengthFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/LengthFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/LengthFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/SkipFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/SkipFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/SkipFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/SkipFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/TakeFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/TakeFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/TakeFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/TakeFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/UnionFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/UnionFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/UnionFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/CollectionFunctions/UnionFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/ArrayFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/ArrayFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/ArrayFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/ArrayFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/Base64Function.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/Base64Function.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/Base64Function.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/Base64Function.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/Base64ToBinaryFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/Base64ToBinaryFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/Base64ToBinaryFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/Base64ToBinaryFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/Base64ToStringFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/Base64ToStringFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/Base64ToStringFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/Base64ToStringFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/BinaryFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/BinaryFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/BinaryFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/BinaryFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/BoolFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/BoolFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/BoolFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/BoolFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/CreateArrayFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/CreateArrayFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/CreateArrayFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/CreateArrayFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/DataUriFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/DataUriFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/DataUriFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/DataUriFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/DataUriToBinaryFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/DataUriToBinaryFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/DataUriToBinaryFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/ConversionFunctions/DataUriToBinaryFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/AndFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/AndFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/AndFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/AndFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/EqualFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/EqualFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/EqualFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/EqualFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/GreaterFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/GreaterFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/GreaterFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/GreaterFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/GreaterOrEqualsFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/GreaterOrEqualsFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/GreaterOrEqualsFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/GreaterOrEqualsFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/IfFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/IfFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/IfFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/IfFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/LessFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/LessFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/LessFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/LessFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/LessOrEqualsFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/LessOrEqualsFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/LessOrEqualsFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/LessOrEqualsFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/NotFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/NotFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/NotFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/NotFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/OrFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/OrFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/OrFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/LogicalComparisonFunctions/OrFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/Miscellaneous/ParametersFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/Miscellaneous/ParametersFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/Miscellaneous/ParametersFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/Miscellaneous/ParametersFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/AuxiliaryMethods.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/AuxiliaryMethods.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/AuxiliaryMethods.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/AuxiliaryMethods.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/ConcatFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/ConcatFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/ConcatFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/ConcatFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/EndsWithFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/EndsWithFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/EndsWithFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/EndsWithFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/FormatNumberFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/FormatNumberFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/FormatNumberFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/FormatNumberFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/GuidFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/GuidFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/GuidFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/GuidFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/IndexOfFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/IndexOfFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/IndexOfFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/IndexOfFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/LastIndexOfFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/LastIndexOfFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/LastIndexOfFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/LastIndexOfFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/LengthFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/LengthFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/LengthFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/LengthFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/ReplaceFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/ReplaceFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/ReplaceFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/ReplaceFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/SplitFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/SplitFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/SplitFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/SplitFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/StartsWithFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/StartsWithFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/StartsWithFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/StartsWithFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/SubstringFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/SubstringFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/SubstringFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/SubstringFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/ToLowerFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/ToLowerFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/ToLowerFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/ToLowerFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/ToUpperFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/ToUpperFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/ToUpperFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/ToUpperFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/TrimFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/TrimFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/TrimFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Implementations/StringFunctions/TrimFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Math/AddFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Math/AddFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Math/AddFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Math/AddFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Storage/ItemsFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Storage/ItemsFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Storage/ItemsFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Storage/ItemsFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Storage/OutputsFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Storage/OutputsFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Storage/OutputsFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Storage/OutputsFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Storage/TriggerOutputsFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Storage/TriggerOutputsFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Storage/TriggerOutputsFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Storage/TriggerOutputsFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Functions/Storage/VariablesFunction.cs b/src/PowerAutomateMockUp/ExpressionParser/Functions/Storage/VariablesFunction.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Functions/Storage/VariablesFunction.cs rename to src/PowerAutomateMockUp/ExpressionParser/Functions/Storage/VariablesFunction.cs diff --git a/PowerAutomateMockUp/ExpressionParser/ReadMe.md b/src/PowerAutomateMockUp/ExpressionParser/ReadMe.md similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/ReadMe.md rename to src/PowerAutomateMockUp/ExpressionParser/ReadMe.md diff --git a/PowerAutomateMockUp/ExpressionParser/Rules/AccessValueRule.cs b/src/PowerAutomateMockUp/ExpressionParser/Rules/AccessValueRule.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Rules/AccessValueRule.cs rename to src/PowerAutomateMockUp/ExpressionParser/Rules/AccessValueRule.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Rules/ArgumentRule.cs b/src/PowerAutomateMockUp/ExpressionParser/Rules/ArgumentRule.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Rules/ArgumentRule.cs rename to src/PowerAutomateMockUp/ExpressionParser/Rules/ArgumentRule.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Rules/ConstantRule.cs b/src/PowerAutomateMockUp/ExpressionParser/Rules/ConstantRule.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Rules/ConstantRule.cs rename to src/PowerAutomateMockUp/ExpressionParser/Rules/ConstantRule.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Rules/ExpressionRule.cs b/src/PowerAutomateMockUp/ExpressionParser/Rules/ExpressionRule.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Rules/ExpressionRule.cs rename to src/PowerAutomateMockUp/ExpressionParser/Rules/ExpressionRule.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Rules/IRule.cs b/src/PowerAutomateMockUp/ExpressionParser/Rules/IRule.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Rules/IRule.cs rename to src/PowerAutomateMockUp/ExpressionParser/Rules/IRule.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Rules/IndexRule.cs b/src/PowerAutomateMockUp/ExpressionParser/Rules/IndexRule.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Rules/IndexRule.cs rename to src/PowerAutomateMockUp/ExpressionParser/Rules/IndexRule.cs diff --git a/PowerAutomateMockUp/ExpressionParser/Rules/StringLiteralRule.cs b/src/PowerAutomateMockUp/ExpressionParser/Rules/StringLiteralRule.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/Rules/StringLiteralRule.cs rename to src/PowerAutomateMockUp/ExpressionParser/Rules/StringLiteralRule.cs diff --git a/PowerAutomateMockUp/ExpressionParser/ValueContainer.cs b/src/PowerAutomateMockUp/ExpressionParser/ValueContainer.cs similarity index 99% rename from PowerAutomateMockUp/ExpressionParser/ValueContainer.cs rename to src/PowerAutomateMockUp/ExpressionParser/ValueContainer.cs index fd926c6..06804e5 100644 --- a/PowerAutomateMockUp/ExpressionParser/ValueContainer.cs +++ b/src/PowerAutomateMockUp/ExpressionParser/ValueContainer.cs @@ -342,7 +342,7 @@ public bool IsNull() return _type == ValueType.Null; } - public int CompareTo(object? obj) + public int CompareTo(object obj) { if (obj == null || obj.GetType() != GetType()) throw new InvalidOperationException("Cannot compare these two..."); diff --git a/PowerAutomateMockUp/ExpressionParser/ValueContainerConverter.cs b/src/PowerAutomateMockUp/ExpressionParser/ValueContainerConverter.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/ValueContainerConverter.cs rename to src/PowerAutomateMockUp/ExpressionParser/ValueContainerConverter.cs diff --git a/PowerAutomateMockUp/ExpressionParser/VariableDoesNotExist.cs b/src/PowerAutomateMockUp/ExpressionParser/VariableDoesNotExist.cs similarity index 100% rename from PowerAutomateMockUp/ExpressionParser/VariableDoesNotExist.cs rename to src/PowerAutomateMockUp/ExpressionParser/VariableDoesNotExist.cs diff --git a/PowerAutomateMockUp/FlowParser/ActionExecutors/ActionExecutorBase.cs b/src/PowerAutomateMockUp/FlowParser/ActionExecutors/ActionExecutorBase.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/ActionExecutors/ActionExecutorBase.cs rename to src/PowerAutomateMockUp/FlowParser/ActionExecutors/ActionExecutorBase.cs diff --git a/PowerAutomateMockUp/FlowParser/ActionExecutors/ActionExecutorFactory.cs b/src/PowerAutomateMockUp/FlowParser/ActionExecutors/ActionExecutorFactory.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/ActionExecutors/ActionExecutorFactory.cs rename to src/PowerAutomateMockUp/FlowParser/ActionExecutors/ActionExecutorFactory.cs diff --git a/PowerAutomateMockUp/FlowParser/ActionExecutors/ActionExecutorRegistration.cs b/src/PowerAutomateMockUp/FlowParser/ActionExecutors/ActionExecutorRegistration.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/ActionExecutors/ActionExecutorRegistration.cs rename to src/PowerAutomateMockUp/FlowParser/ActionExecutors/ActionExecutorRegistration.cs diff --git a/PowerAutomateMockUp/FlowParser/ActionExecutors/ActionResult.cs b/src/PowerAutomateMockUp/FlowParser/ActionExecutors/ActionResult.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/ActionExecutors/ActionResult.cs rename to src/PowerAutomateMockUp/FlowParser/ActionExecutors/ActionResult.cs diff --git a/PowerAutomateMockUp/FlowParser/ActionExecutors/DefaultBaseActionExecutor.cs b/src/PowerAutomateMockUp/FlowParser/ActionExecutors/DefaultBaseActionExecutor.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/ActionExecutors/DefaultBaseActionExecutor.cs rename to src/PowerAutomateMockUp/FlowParser/ActionExecutors/DefaultBaseActionExecutor.cs diff --git a/PowerAutomateMockUp/FlowParser/ActionExecutors/IScopeActionExecutor.cs b/src/PowerAutomateMockUp/FlowParser/ActionExecutors/IScopeActionExecutor.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/ActionExecutors/IScopeActionExecutor.cs rename to src/PowerAutomateMockUp/FlowParser/ActionExecutors/IScopeActionExecutor.cs diff --git a/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/DoUntilActionExecutor.cs b/src/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/DoUntilActionExecutor.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/DoUntilActionExecutor.cs rename to src/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/DoUntilActionExecutor.cs diff --git a/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/ForEachActionExecutor.cs b/src/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/ForEachActionExecutor.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/ForEachActionExecutor.cs rename to src/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/ForEachActionExecutor.cs diff --git a/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/IfActionExecutor.cs b/src/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/IfActionExecutor.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/IfActionExecutor.cs rename to src/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/IfActionExecutor.cs diff --git a/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/ScopeActionExecutor.cs b/src/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/ScopeActionExecutor.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/ScopeActionExecutor.cs rename to src/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/ScopeActionExecutor.cs diff --git a/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/SwitchActionExecutor.cs b/src/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/SwitchActionExecutor.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/SwitchActionExecutor.cs rename to src/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/SwitchActionExecutor.cs diff --git a/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/TerminateActionExecutor.cs b/src/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/TerminateActionExecutor.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/TerminateActionExecutor.cs rename to src/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/ControlActions/TerminateActionExecutor.cs diff --git a/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/DataOperation/ComposeActionExecutor.cs b/src/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/DataOperation/ComposeActionExecutor.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/DataOperation/ComposeActionExecutor.cs rename to src/PowerAutomateMockUp/FlowParser/ActionExecutors/Implementations/DataOperation/ComposeActionExecutor.cs diff --git a/PowerAutomateMockUp/FlowParser/ActionExecutors/InputsBaseActionExecutor.cs b/src/PowerAutomateMockUp/FlowParser/ActionExecutors/InputsBaseActionExecutor.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/ActionExecutors/InputsBaseActionExecutor.cs rename to src/PowerAutomateMockUp/FlowParser/ActionExecutors/InputsBaseActionExecutor.cs diff --git a/PowerAutomateMockUp/FlowParser/ActionExecutors/OpenApiConnectionBaseActionExecutor.cs b/src/PowerAutomateMockUp/FlowParser/ActionExecutors/OpenApiConnectionBaseActionExecutor.cs similarity index 96% rename from PowerAutomateMockUp/FlowParser/ActionExecutors/OpenApiConnectionBaseActionExecutor.cs rename to src/PowerAutomateMockUp/FlowParser/ActionExecutors/OpenApiConnectionBaseActionExecutor.cs index d9fd827..fd6ed21 100644 --- a/PowerAutomateMockUp/FlowParser/ActionExecutors/OpenApiConnectionBaseActionExecutor.cs +++ b/src/PowerAutomateMockUp/FlowParser/ActionExecutors/OpenApiConnectionBaseActionExecutor.cs @@ -47,7 +47,7 @@ internal class ActionInputs internal HostValues HostValues { get; set; } [JsonProperty("parameters")] - internal Dictionary Parameters; + internal Dictionary Parameters { get; set; } } public class HostValues diff --git a/PowerAutomateMockUp/FlowParser/ActionReport.cs b/src/PowerAutomateMockUp/FlowParser/ActionReport.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/ActionReport.cs rename to src/PowerAutomateMockUp/FlowParser/ActionReport.cs diff --git a/PowerAutomateMockUp/FlowParser/FlowReport.cs b/src/PowerAutomateMockUp/FlowParser/FlowReport.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/FlowReport.cs rename to src/PowerAutomateMockUp/FlowParser/FlowReport.cs diff --git a/PowerAutomateMockUp/FlowParser/FlowRunner.cs b/src/PowerAutomateMockUp/FlowParser/FlowRunner.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/FlowRunner.cs rename to src/PowerAutomateMockUp/FlowParser/FlowRunner.cs diff --git a/PowerAutomateMockUp/FlowParser/FlowSettings.cs b/src/PowerAutomateMockUp/FlowParser/FlowSettings.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/FlowSettings.cs rename to src/PowerAutomateMockUp/FlowParser/FlowSettings.cs diff --git a/PowerAutomateMockUp/FlowParser/IScopeDepthManager.cs b/src/PowerAutomateMockUp/FlowParser/IScopeDepthManager.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/IScopeDepthManager.cs rename to src/PowerAutomateMockUp/FlowParser/IScopeDepthManager.cs diff --git a/PowerAutomateMockUp/FlowParser/ScopeDepthManager.cs b/src/PowerAutomateMockUp/FlowParser/ScopeDepthManager.cs similarity index 100% rename from PowerAutomateMockUp/FlowParser/ScopeDepthManager.cs rename to src/PowerAutomateMockUp/FlowParser/ScopeDepthManager.cs diff --git a/PowerAutomateMockUp/FlowParser/readme.md b/src/PowerAutomateMockUp/FlowParser/readme.md similarity index 100% rename from PowerAutomateMockUp/FlowParser/readme.md rename to src/PowerAutomateMockUp/FlowParser/readme.md diff --git a/PowerAutomateMockUp/FlowRunnerDependencyExtension.cs b/src/PowerAutomateMockUp/FlowRunnerDependencyExtension.cs similarity index 100% rename from PowerAutomateMockUp/FlowRunnerDependencyExtension.cs rename to src/PowerAutomateMockUp/FlowRunnerDependencyExtension.cs diff --git a/PowerAutomateMockUp/IState.cs b/src/PowerAutomateMockUp/IState.cs similarity index 100% rename from PowerAutomateMockUp/IState.cs rename to src/PowerAutomateMockUp/IState.cs diff --git a/PowerAutomateMockUp/PowerAutomateMockUp.csproj b/src/PowerAutomateMockUp/PowerAutomateMockUp.csproj similarity index 77% rename from PowerAutomateMockUp/PowerAutomateMockUp.csproj rename to src/PowerAutomateMockUp/PowerAutomateMockUp.csproj index 2e741dc..2df970f 100644 --- a/PowerAutomateMockUp/PowerAutomateMockUp.csproj +++ b/src/PowerAutomateMockUp/PowerAutomateMockUp.csproj @@ -1,7 +1,7 @@  - netcoreapp3.1;net48;net462 + netcoreapp3.1;net48;net462;net60;net80 Parser 8 @@ -18,17 +18,17 @@ - - - - - - - + + + + + + + - + - + diff --git a/PowerAutomateMockUp/PowerAutomateMockUpException.cs b/src/PowerAutomateMockUp/PowerAutomateMockUpException.cs similarity index 75% rename from PowerAutomateMockUp/PowerAutomateMockUpException.cs rename to src/PowerAutomateMockUp/PowerAutomateMockUpException.cs index 961e117..0994459 100644 --- a/PowerAutomateMockUp/PowerAutomateMockUpException.cs +++ b/src/PowerAutomateMockUp/PowerAutomateMockUpException.cs @@ -16,9 +16,5 @@ public PowerAutomateMockUpException(string message) : base(message) public PowerAutomateMockUpException(string message, Exception innerException) : base(message, innerException) { } - - protected PowerAutomateMockUpException(SerializationInfo info, StreamingContext context) : base(info, context) - { - } } -} \ No newline at end of file +} diff --git a/PowerAutomateMockUp/State.cs b/src/PowerAutomateMockUp/State.cs similarity index 100% rename from PowerAutomateMockUp/State.cs rename to src/PowerAutomateMockUp/State.cs diff --git a/PowerAutomateMockUp/WorkflowParameters.cs b/src/PowerAutomateMockUp/WorkflowParameters.cs similarity index 100% rename from PowerAutomateMockUp/WorkflowParameters.cs rename to src/PowerAutomateMockUp/WorkflowParameters.cs