From 9a14289686f7dd8d7e5b8f82a3c074c4ba23e594 Mon Sep 17 00:00:00 2001 From: postmeback Date: Sat, 3 Aug 2024 17:32:29 +0530 Subject: [PATCH] Formatter ran --- .../Extensions/ObjectExtensions.cs | 8 ++++++++ .../ObjectExtensionsTests.cs | 19 +++++++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/src/Meilisearch/Extensions/ObjectExtensions.cs b/src/Meilisearch/Extensions/ObjectExtensions.cs index 47a5cc25..a911e2f6 100644 --- a/src/Meilisearch/Extensions/ObjectExtensions.cs +++ b/src/Meilisearch/Extensions/ObjectExtensions.cs @@ -56,6 +56,14 @@ internal static string ToQueryString(this object source, BindingFlags bindingAtt { values.Add(key + "=" + string.Join(",", (List)value)); } + else if (itemType == typeof(TaskInfoStatus)) + { + values.Add(key + "=" + string.Join(",", ((List)value).Select(x => x.ToString()))); + } + else if (itemType == typeof(TaskInfoType)) + { + values.Add(key + "=" + string.Join(",", ((List)value).Select(x => x.ToString()))); + } } else if (value is DateTime) { diff --git a/tests/Meilisearch.Tests/ObjectExtensionsTests.cs b/tests/Meilisearch.Tests/ObjectExtensionsTests.cs index 30e77927..53894c14 100644 --- a/tests/Meilisearch.Tests/ObjectExtensionsTests.cs +++ b/tests/Meilisearch.Tests/ObjectExtensionsTests.cs @@ -1,7 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using System.Text.Json.Serialization; +using Meilisearch.Converters; using Meilisearch.Extensions; using Meilisearch.QueryParameters; @@ -17,6 +19,8 @@ public class FakeQuery public string FakeString { get; set; } public int? FakeInteger { get; set; } public List FakeStringList { get; set; } + public List FakeStatusList { get; set; } + public List FakeTypeList { get; set; } public string Path { get; set; } } @@ -40,6 +44,21 @@ public static IEnumerable FakeData() new FakeQuery { FakeDate = date, FakeStringList = new List { "hey", "ho" } }, $"fakeDate={Uri.EscapeDataString(date.ToString("yyyy-MM-dd'T'HH:mm:ss.fffzzz"))}&fakeStringList=hey,ho" }; + + yield return new object[] { + new FakeQuery { FakeStatusList = new List { TaskInfoStatus.Enqueued, TaskInfoStatus.Succeeded } }, + "fakeStatusList=Enqueued,Succeeded" + }; + + yield return new object[] { + new FakeQuery { FakeTypeList = new List { TaskInfoType.IndexCreation, TaskInfoType.DocumentDeletion } }, + "fakeTypeList=IndexCreation,DocumentDeletion" + }; + + yield return new object[] { + new FakeQuery { FakeStatusList = new List { TaskInfoStatus.Processing }, FakeTypeList = new List { TaskInfoType.SettingsUpdate } }, + "fakeStatusList=Processing&fakeTypeList=SettingsUpdate" + }; } [Theory]