Как запустить тест Microsoft для моно. unix библиотечные методы в Visual Studio? - PullRequest
0 голосов
/ 13 марта 2020

Мой проект находится в 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 );
    }
}
...