• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Aldaviva / SunsUpStreamsUp / 15601044290

12 Jun 2025 03:40AM UTC coverage: 79.581% (-2.0%) from 81.579%
15601044290

push

github

Aldaviva
Update dependencies

64 of 87 branches covered (73.56%)

8 of 13 new or added lines in 2 files covered. (61.54%)

152 of 191 relevant lines covered (79.58%)

25.26 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/SunsUpStreamsUp/Program.cs
1
using Microsoft.Extensions.Options;
2
using NodaTime;
3
using RuntimeUpgrade.Notifier;
4
using RuntimeUpgrade.Notifier.Data;
5
using SunsUpStreamsUp;
6
using SunsUpStreamsUp.Logic;
7
using SunsUpStreamsUp.Options;
8
using Twitch.Net;
9
using Unfucked;
10
using Unfucked.OBS;
11
using Unfucked.Twitch;
12

13
HostApplicationBuilder builder = Host.CreateApplicationBuilder(args);
×
14

15
builder.Configuration.AlsoSearchForJsonFilesInExecutableDirectory();
×
16

17
builder.Logging.AddUnfuckedConsole(options => options.Color = true);
×
18

19
builder.Services
×
20
    .Configure<StreamOptions>(builder.Configuration.GetSection("stream"))
×
21
    .Configure<GeographicOptions>(builder.Configuration.GetSection("geography"))
×
22
    .AddHostedService<StreamManager>()
×
23
    .AddSingleton<SolarEventEmitter, SolarEventEmitterImpl>()
×
24
    .AddHostedService(s => s.GetRequiredService<SolarEventEmitter>())
×
25
    .AddSingleton<IClock>(SystemClock.Instance)
×
26
    .AddSingleton<IObsClientFactory, ObsClientFactory>()
×
27
    .AddSingleton(TimeProvider.System)
×
28
    .AddSingleton<ITwitchApi>(services => {
×
29
        StreamOptions options      = services.GetRequiredService<IOptions<StreamOptions>>().Value;
×
30
        string?       clientId     = options.twitchClientId;
×
31
        string?       clientSecret = options.twitchClientSecret;
×
32
        return clientId.HasText() && clientSecret.HasText() ? new TwitchApiClient(new TwitchApiBuilder(clientId).WithClientSecret(clientSecret).Build()) : null!;
×
33
    });
×
34

35
using IHost host = builder.Build();
×
36

NEW
37
using RuntimeUpgradeNotifier upgradeNotifier = new() {
×
NEW
38
    LoggerFactory   = host.Services.GetRequiredService<ILoggerFactory>(),
×
NEW
39
    RestartStrategy = RestartStrategy.AutoRestartProcess,
×
NEW
40
    ExitStrategy    = new HostedLifetimeExit(host)
×
NEW
41
};
×
42

43
try {
44
    await host.RunAsync();
×
45
    return 0;
×
46
} catch (ObsFailedToConnect) {
×
47
    return 1;
×
48
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc