Объявление JSON Enum Array в C# для датабоя и TDD десериализации - PullRequest
0 голосов
/ 28 апреля 2020

У меня есть это enum, созданное в файле, и использование для массива enum в datamember. Для разработки, основанной на тестировании, мне сложно настроить тест. Ниже приведен пример

В файле * .cs я объявил

public enum StatusType
{

   [EnumMember(Value = "Ok")]
   Ok =0,

   [EnumMember(Value = "Warning")]
   Warning,

   // ...
}

Часть CRUD является обновлением, и в этой части модели, где я установил его в качестве примера:

public partial class Patch
{
   // ...

   [DataMember(Name = "status:enum")]
   public StatusType[] StatusResult { get; set; }

}

* Обратите внимание на объявленный массив.

Для TDD, как мне проверить это? Определение двух перечислений одновременно?

Пример в JSON string:

"status:enum": ["ok", "warning"]``

Самая важная часть - это TDD, где тест способен сравнивать результат в массив enum.

1 Ответ

0 голосов
/ 29 апреля 2020

Это не разработка, управляемая тестами (TDD), если вы не управляете проектированием и реализацией с помощью тестов. Написание тестов после типов не TDD, но это все еще автоматическое тестирование.

Не ясно, что вы подразумеваете под

Для TDD, как мне тестировать для этого?

но из второго вопроса я понимаю, что вы спрашиваете о том, как установить значения в соответствии с примером JSON. Вы можете сделать это в следующем тесте:

[Fact]
public void TestExample()
{
    var patch = new Patch
    {
        StatusResult = new[] { StatusType.Ok, StatusType.Warning }
    };

    // Do something with `patch`, e.g.:
    Assert.Contains(StatusType.Ok, patch.StatusResult);
}

В этом примере используется xUnit. net.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...