Exemple #1
0
    public ServerImpl(ILogger <ServerImpl> logger,
                      KyprDbContext db, KyprSession?session = null)
    {
        _logger  = logger;
        _db      = db;
        _session = session;

        if (_session == null)
        {
            _logger.LogInformation("no existing session provided");
            return;
        }

        _logger.LogInformation("Session:");
        _logger.LogInformation(JsonSerializer.Serialize(_session));

        var acctIdBytes = _session.SessionId !;
        var sessionKey  = _session.SessionKey !;
        //for (var i = 0; i < acctIdBytes.Length; i++)
        //{
        //    acctIdBytes[i] ^= sessionKey[i];
        //}

        var acctId = new Guid(acctIdBytes !);

        _logger.LogInformation("Loading Account:  " + acctId);
        var acct = _db.Accounts.FirstOrDefault(x => x.Id == acctId);

        if (acct == null)
        {
            throw new Exception("invalid Account");
        }

        _account = acct;
    }
Exemple #2
0
    public MainCommand(IConsole console
                       // Unfortunately, can't use const injection because of:
                       //    https://github.com/natemcmaster/CommandLineUtils/issues/448
                       /*ILogger<MainCommand> logger, KyprDbContext db*/)
    {
        //_logger = logger;
        //_db = db;

        _console = console;
        _logger  = Common.AdditionalServices !.GetRequiredService <ILogger <MainCommand> >();
        _db      = Common.AdditionalServices !.GetRequiredService <KyprDbContext>();
    }
    public KyprDbContextTests(ITestOutputHelper testOutputHelper)
    {
        _testOut = testOutputHelper;

        _conn = new SqliteConnection("Filename=:memory:");
        _conn.Open();

        _opts = new DbContextOptionsBuilder <KyprDbContext>()
                .UseSqlite <KyprDbContext>(_conn)
                .Options;

        _db = new KyprDbContext(_opts);
        _db.Database.EnsureCreated();
    }
Exemple #4
0
    public LocalServerTests(ITestOutputHelper testOutputHelper)
    {
        _testOut       = testOutputHelper;
        _loggerFactory = new LoggerFactory();

        _conn = new SqliteConnection("Filename=:memory:");
        _conn.Open();

        _opts = new DbContextOptionsBuilder <KyprDbContext>()
                .UseSqlite <KyprDbContext>(_conn)
                .Options;

        _db = new KyprDbContext(_opts);
        _db.Database.EnsureCreated();

        _server = new(_loggerFactory.CreateLogger <ServerImpl>(), _db);
    }