.NET Core получает значения конфигурации appsettings.json - PullRequest
0 голосов
/ 30 января 2019

Я пытаюсь написать модульный тест для следующего:

[TestMethod]
public void GetInviteEndPoint_ShouldAccessAppSettings()
{
    //Data pulled from the appsettings.test.json
    var config = InitConfiguration();
    var inviteEndPointConfig = config["InviteEndPoint"]; // <-- Pain Point

    //Arrange Test && Mock if needed
    string mockInviteEndPoint = "https://graph.microsoft.com/v1.0/invitations";


    //Actual Code from Application (ACT)
    SendInvite sendInvite = new SendInvite();
    string inviteEndPoint = sendInvite.GetInviteEndPoint(config);

    //Assert 
    // Assert always tests (Expected[Arranged], Actual[From Code Base])
    Assert.AreEqual(mockInviteEndPoint, inviteEndPoint);
}

Мои и мои appsettings.json и appsettings.test.json выглядят одинаково.Я испытываю трудности с получением значения из файла .json.Мне было интересно, может ли кто-нибудь представить какую-либо информацию об этом коде, на котором я застрял.

{
    "SendeInvite": {
        "InviteEndPoint": "https://graph.microsoft.com/v1.0/invitations"
        ...Code Omitted... 
    } 
}

Я неправильно набираю config["InvitedEndPoint"]?

Обратите внимание, у меня есть следующий код навершина испытательного класса

public static IConfiguration InitConfiguration()
{
    var config = new ConfigurationBuilder()
        .AddJsonFile("appsettings.test.json")
        .Build();
    return config;
}

1 Ответ

0 голосов
/ 30 января 2019

Попробуйте:

var inviteEndPointConfig = config["SendeInvite:InviteEndPoint"];

Возможно, потому что вы вложили атрибут в SendeInvite, вы не получите значение.

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