Мой проект находится в Do tnet core 3.0 и использует библиотеку Mono.Posix.NETStandard .dll для чтения информации о файле в среде Linux.
Я использую Visual Studio 2019 на windows для разработки, а затем я развернул ее на UNIX коробке (Ubuntu 18.04 TLS) и удаленной отладке. Код отлично работает на платформе Linux, и я получаю необходимую информацию о файле.
проблема: я написал контрольные примеры с MSTEST, но они не выполняются со следующей ошибкой: Невозможно найти точка входа с именем 'Mono_Posix_Syscall_getcwd' в DLL 'MonoPosixHelper'. '
Я хочу знать: 1. Возможно ли выполнить Linux команды с MS TEST? (что, я думаю, невозможно, поскольку мой исходный код также не работает) 2. Как я могу запустить свой mstest в среде Linux и отладить его?
Код моего тестового примера:
public static class UnixFileInfoExtensions
{
public static bool HasExtension( this UnixFileInfo fileInfo )
{
return (fileInfo != null) && fileInfo.Name.IndexOf( '.' ) >= 0;
}
}
[TestClass]
public class UnixFileInfoExtensionsTests
{
[TestMethod]
public void HasExtension_WithvalidFilePath_ReturnTrue()
{
// Arrange
var fileInfo = new UnixFileInfo("SampleFile.txt");
// Act
var result = fileInfo.HasExtension();
// Assert
Assert.IsTrue( result );
}
}