命名空间:Microsoft.Azure。工作流程。单元测试
该 LiquidDataMapTestExecutor 类课程提供了在单元测试期间执行液态数据映射转换的能力。 实例通过名称在逻辑应用项目目录 Artifacts/Maps 中定位一个 Liquid 映射文件,并根据提供的输入内容执行转换,输出可选择模式验证。
用法
var executor = new LiquidDataMapTestExecutor(appDirectoryPath: @"C:\MyLogicApp");
JToken result = await executor.RunLiquidMapAsync(
mapName: "TransformOrder",
transformKind: TestLiquidTransformKind.JsonToJson,
inputContent: JToken.Parse("{\"orderId\": 123}"));
Constructors
LiquidDataMapTestExecutor(string appDirectoryPath)
初始化一个新的类实例 LiquidDataMapTestExecutor ,使用指定的逻辑应用项目根路径。
public LiquidDataMapTestExecutor(string appDirectoryPath)
| 名称 | 说明 | 类型 | 必需 |
|---|---|---|---|
| app目录路径 | Logic 应用项目根路径,位于 Artifacts/Maps 目录的位置。 | string |
是的 |
var executor = new LiquidDataMapTestExecutor(appDirectoryPath: @"C:\MyLogicApp");
Methods
运行液体地图同步
使用指定的映射名称、转换类型和输入内容执行液体映射转换。 可选地对转换后的内容进行 JSON 模式验证。 如果地图文件不存在,则会抛 ArgumentException 出。
public async Task<JToken> RunLiquidMapAsync(string mapName, TestLiquidTransformKind transformKind, JToken inputContent, JSchema transformedContentSchema = null)
| 名称 | 说明 | 类型 | 必需 |
|---|---|---|---|
| 地图名称 | Liquid 数据映射文件的名称(无 .liquid 扩展名)。 |
string |
是的 |
| 变形种类 | 该进行的液体转化类型。 | 测试液体变形类型 | 是的 |
| inputContent | 输入内容需要转换。 | JToken |
是的 |
| transformedContentSchema | 一个可选的 JSON 模式用于验证转换后的内容。 | JSchema |
否 |
var executor = new LiquidDataMapTestExecutor(appDirectoryPath: @"C:\MyLogicApp");
// Execute a JSON-to-JSON Liquid transformation with schema validation
var schema = JSchema.Parse("{\"type\": \"object\", \"properties\": {\"total\": {\"type\": \"number\"}}}");
JToken result = await executor.RunLiquidMapAsync(
mapName: "CalculateTotal",
transformKind: TestLiquidTransformKind.JsonToJson,
inputContent: JToken.Parse("{\"items\": [{\"price\": 10}, {\"price\": 20}]}"),
transformedContentSchema: schema);