Skip to content
Snippets Groups Projects
EndToEndTestBase.cs 1.26 KiB
using Autofac;
using FitConnect;
using FitConnect.Interfaces.Sender;
using FitConnect.Interfaces.Subscriber;
using FitConnect.Models;
using Microsoft.Extensions.Logging;
using MockContainer;

namespace E2ETest;

public abstract class EndToEndTestBase {
    protected ILogger Logger = null!;
    protected ISender Sender = null!;
    protected MockSettings Settings = null!;
    protected ISubscriber Subscriber = null!;

    [OneTimeSetUp]
    public void Setup() {
        var container = Container.Create();
        Settings = container.Resolve<MockSettings>();

        Logger = LoggerFactory.Create(
            builder => {
                builder.AddSimpleConsole();
                builder.SetMinimumLevel(LogLevel.Trace);
            }).CreateLogger("E2E Test");


        Sender = Client.GetSender(FitConnectEnvironment.Testing,
            Settings.SenderClientId, Settings.SenderClientSecret,
            Logger);
        Subscriber = Client.GetSubscriber(FitConnectEnvironment.Testing,
            Settings.SubscriberClientId, Settings.SubscriberClientSecret,
            Settings.PrivateKeyDecryption,
            Settings.PrivateKeySigning,
            Settings.PublicKeyEncryption,
            Settings.PublicKeySignatureVerification,
            Logger
        );
    }
}