Skip to content
Snippets Groups Projects
RestCallServiceTest.cs 1.17 KiB
using System;
using System.Net;
using System.Net.Http;
using FitConnect.Services;
using FluentAssertions;
using NUnit.Framework;

namespace BasicUnitTest;

internal class DummyRestService : RestCallService {
    public DummyRestService() : base("http://locahost:5050") {
    }

    public HttpClient GetClient() {
        return CreateClient();
    }
}

public class RestCallServiceTest {
    [Test]
    public void RestCallShouldContainVersionHeader() {
        var restCallService = new DummyRestService();
        var client = restCallService.GetClient();
        client.DefaultRequestHeaders.Contains("User-Agent").Should().BeTrue();
        client.DefaultRequestHeaders.GetValues("User-Agent").Should()
            .ContainMatch("FITConnectDotNetSDK*");
    }

    [Test]
    [Ignore("Server project must run to evaluate the headers")]
    public void RunActualCall() {
        var client = new DummyRestService().GetClient();
        var request = new HttpRequestMessage();
        request.RequestUri = new Uri("http://localhost:5050");
        request.Method = HttpMethod.Get;
        var result = client.Send(request);
        result.StatusCode.Should().Be(HttpStatusCode.OK);
    }
}