Модульный тест JsonStorageTest () не выполняется каждый раз, когда он построен на AppVeyor, даже если он успешно выполняется на моей локальной машине.
[Fact]
public static void JsonStorageTest()
{
const string expected = "I'm a unit test!";
const string expectedKey = "xUnitTests/TEST";
IDataStorage storage = new JsonStorage();
storage.StoreObject(expected, expectedKey);
var actual = storage.RestoreObject<string>(expectedKey);
Assert.Equal(expected, actual);
}
Я вошел с RDP на виртуальную машину, которую запускает AppVeyor, и заметил,этот Appveyor не создает никакой директории, поэтому тест, естественно, не проходит.Эта ошибка также отображается в [Журнале сборки AppVeyor], поэтому я использовал RDP для поиска ошибки.
public void StoreObject(object obj, string key)
{
var file = $"{key}.json";
CreateDirectory(Path.GetDirectoryName(file));
var json = JsonConvert.SerializeObject(obj);
File.WriteAllText(file, json);
}
Это метод, который обычно должен создавать каталог, но, как уже упоминалось, он нене делай этого с AppVeyor.Я надеюсь, что такого вопроса еще не существует (я искал целую вечность, но не нашел решения), и проблема не вызвана моей неспособностью написать правильный код.Кто-нибудь сможет указать мне правильное направление?
PS: вот ссылка репо , если это поможет.