.NET тест Linux кода зависит от Environment.OSVersion.Platform на Windows - PullRequest
0 голосов
/ 01 мая 2019

У меня есть кроссплатформенное консольное приложение C # .NET Core.

У меня есть код, который зависит от ОС, например:

public int Foo(){
    if (Environment.OSVersion.Platform == PlatformID.Unix)
        return -1;
    return 1;
}

Как мне написать модульный тест, который будет выполняться на Windows , и проверить, что когда код будет работать в Linux , он вернет -1?

Как подделать Environment.OSVersion.Platform?

(Есть ли причина, по которой я не смог использовать ShimsContext?)

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