public async Task <Validator> GetValidator(ECPoint publicKey) { var raw = await _rocksDbContext.Get(publicKey.BuildStateValidatorKey()); return(raw == null ? null : _binarySerializer.Deserialize <Validator>(raw)); }
public async Task DeleteValidator_DeletesCorrectKey() { var pubkey = new byte[33]; pubkey[0] = 0x02; var input = new ECPoint(pubkey); var redisDbContextMock = AutoMockContainer.GetMock <IRedisDbJsonContext>(); var testee = AutoMockContainer.Create <RedisDbJsonRepository>(); await testee.DeleteValidator(input); redisDbContextMock.Verify( m => m.Delete(It.Is <RedisKey>(b => b == input.BuildStateValidatorKey()))); }
public async Task DeleteValidator_DeletesCorrectKey() { var pubkey = new byte[33]; pubkey[0] = 0x02; var input = new ECPoint(pubkey); var rocksDbContextMock = AutoMockContainer.GetMock <IRocksDbContext>(); var testee = AutoMockContainer.Create <RocksDbRepository>(); await testee.DeleteValidator(input); rocksDbContextMock.Verify( m => m.Delete(It.Is <byte[]>(b => b.SequenceEqual(input.BuildStateValidatorKey())))); }
public async Task GetValidator_NoValue_ReturnsNull() { var pubkey = new byte[33]; pubkey[0] = 0x02; var input = new ECPoint(pubkey); var redisDbContextMock = AutoMockContainer.GetMock <IRedisDbJsonContext>(); redisDbContextMock .Setup(m => m.Get(It.Is <RedisKey>(b => b == input.BuildStateValidatorKey()))) .ReturnsAsync(RedisValue.Null); var testee = AutoMockContainer.Create <RedisDbJsonRepository>(); var result = await testee.GetValidator(input); result.Should().BeNull(); }
public async Task GetValidator_NoValue_ReturnsNull() { var pubkey = new byte[33]; pubkey[0] = 0x02; var input = new ECPoint(pubkey); var rocksDbContextMock = AutoMockContainer.GetMock <IRocksDbContext>(); rocksDbContextMock .Setup(m => m.Get(It.Is <byte[]>(b => b.SequenceEqual(input.BuildStateValidatorKey())))) .ReturnsAsync((byte[])null); var testee = AutoMockContainer.Create <RocksDbRepository>(); var result = await testee.GetValidator(input); result.Should().BeNull(); }
public async Task AddValidator_WritesCorrectKeyValue() { var pubkey = new byte[33]; pubkey[0] = 0x02; var point = new ECPoint(pubkey); var input = new Validator { PublicKey = point }; var expectedBytes = new byte[1]; _serializerMock.Setup(m => m.Serialize(input, null)).Returns(expectedBytes); var rocksDbContextMock = AutoMockContainer.GetMock <IRocksDbContext>(); var testee = AutoMockContainer.Create <RocksDbRepository>(); await testee.AddValidator(input); rocksDbContextMock.Verify(m => m.Save(It.Is <byte[]>(b => b.SequenceEqual(point.BuildStateValidatorKey())), expectedBytes)); }
public async Task GetValidator_ValueFound_ReturnsValidator() { var pubkey = new byte[33]; pubkey[0] = 0x02; var input = new ECPoint(pubkey); var expectedBytes = new byte[1]; var expectedResult = new Validator(); var rocksDbContextMock = AutoMockContainer.GetMock <IRocksDbContext>(); rocksDbContextMock .Setup(m => m.Get(It.Is <byte[]>(b => b.SequenceEqual(input.BuildStateValidatorKey())))) .ReturnsAsync(expectedBytes); _serializerMock.Setup(m => m.Deserialize <Validator>(expectedBytes, null)).Returns(expectedResult); var testee = AutoMockContainer.Create <RocksDbRepository>(); var result = await testee.GetValidator(input); result.Should().Be(expectedResult); }
public async Task DeleteValidator(ECPoint point) { await _redisDbContext.Delete(point.BuildStateValidatorKey()); }
public async Task <Validator> GetValidator(ECPoint publicKey) { var raw = await _redisDbJsonContext.Get(publicKey.BuildStateValidatorKey()); return(raw.IsNull ? null : _jsonConverter.DeserializeObject <Validator>(raw)); }