Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/Nethermind/Nethermind.Db.Test/DbOnTheRocksTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -564,7 +564,7 @@ public void Smoke_test_span_with_memory_manager()
};

[Test]
public void Can_get_all_on_empty() => _ = _db.GetAll().ToList();
public void Can_get_all_on_empty() => Assert.That(_db.GetAll(), Is.Empty);

[Test]
public void Smoke_test_iterator()
Expand Down
25 changes: 8 additions & 17 deletions src/Nethermind/Nethermind.Db.Test/MemDbTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,13 @@ public void Can_create_with_delays()
{
MemDb memDb = new(10, 10);
memDb.Set(TestItem.KeccakA, new byte[] { 1, 2, 3 });
memDb.Get(TestItem.KeccakA);
_ = memDb[new[] { TestItem.KeccakA.BytesToArray() }];
byte[]? direct = memDb.Get(TestItem.KeccakA);
KeyValuePair<byte[], byte[]>[] batch = memDb[new[] { TestItem.KeccakA.BytesToArray() }];
using (Assert.EnterMultipleScope())
{
Assert.That(direct, Is.EqualTo(new byte[] { 1, 2, 3 }));
Assert.That(batch[0].Value, Is.EqualTo(new byte[] { 1, 2, 3 }));
}
}

[Test]
Expand All @@ -49,7 +54,7 @@ public void Can_create_without_arguments()
{
MemDb memDb = new();
memDb.Set(TestItem.KeccakA, new byte[] { 1, 2, 3 });
memDb.Get(TestItem.KeccakA);
Assert.That(memDb.Get(TestItem.KeccakA), Is.EqualTo(new byte[] { 1, 2, 3 }));
}

[Test]
Expand Down Expand Up @@ -133,20 +138,6 @@ public void Can_get_values()
Assert.That(memDb.Values, Has.Count.EqualTo(2));
}

[Test]
public void Dispose_does_not_cause_trouble()
{
MemDb memDb = new();
memDb.Dispose();
}

[Test]
public void Flush_does_not_cause_trouble()
{
MemDb memDb = new();
memDb.Flush();
}

[Test]
public void Can_get_all_ordered()
{
Expand Down
32 changes: 31 additions & 1 deletion src/Nethermind/Nethermind.Db.Test/ReadOnlyDbProviderTests.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
// SPDX-FileCopyrightText: 2022 Demerzel Solutions Limited
// SPDX-License-Identifier: LGPL-3.0-only

using System;
using Nethermind.Core;
using Nethermind.Core.Test.Builders;
Comment thread
benaadams marked this conversation as resolved.
using NSubstitute;
using NUnit.Framework;

Expand All @@ -13,8 +16,35 @@ public class ReadOnlyDbProviderTests
[TestCase(false)]
public void Can_clear(bool localChanges)
{
ReadOnlyDbProvider dbProvider = new(Substitute.For<IDbProvider>(), localChanges);
MemDb wrappedDb = new();
wrappedDb.Set(TestItem.KeccakA, [1, 2, 3]);
IDbProvider wrappedProvider = Substitute.For<IDbProvider>();
wrappedProvider.GetDb<IDb>("test").Returns(wrappedDb);

ReadOnlyDbProvider dbProvider = new(wrappedProvider, localChanges);
IDb readOnlyDb = dbProvider.GetDb<IDb>("test");

if (localChanges)
{
readOnlyDb.Set(TestItem.KeccakB, [4, 5, 6]);
Assert.That(readOnlyDb.Get(TestItem.KeccakB), Is.EqualTo(new byte[] { 4, 5, 6 }));
}
else
{
Assert.Throws<InvalidOperationException>(() => readOnlyDb.Set(TestItem.KeccakB, [4, 5, 6]));
}

dbProvider.ClearTempChanges();

using (Assert.EnterMultipleScope())
{
if (localChanges)
{
Assert.That(readOnlyDb.Get(TestItem.KeccakB), Is.Null, "the in-memory overlay must be dropped");
}

Assert.That(readOnlyDb.Get(TestItem.KeccakA), Is.EqualTo(new byte[] { 1, 2, 3 }), "the wrapped db must be untouched");
}
}
}
}
14 changes: 0 additions & 14 deletions src/Nethermind/Nethermind.Db.Test/SnapshotableMemColumnsDbTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -156,20 +156,6 @@ public void Can_use_write_batch()
Assert.That(column1.Get(TestItem.KeccakA), Is.EqualTo(_sampleValue));
}

[Test]
public void Flush_does_not_cause_trouble()
{
SnapshotableMemColumnsDb<TestColumns> columnsDb = new();
columnsDb.Flush();
}

[Test]
public void Dispose_does_not_cause_trouble()
{
SnapshotableMemColumnsDb<TestColumns> columnsDb = new();
columnsDb.Dispose();
}

[Test]
public void ColumnKeys_returns_all_columns()
{
Expand Down
14 changes: 0 additions & 14 deletions src/Nethermind/Nethermind.Db.Test/SnapshotableMemDbTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -190,20 +190,6 @@ public void Can_get_values()
Assert.That(memDb.Values, Has.Count.EqualTo(2));
}

[Test]
public void Dispose_does_not_cause_trouble()
{
SnapshotableMemDb memDb = new();
memDb.Dispose();
}

[Test]
public void Flush_does_not_cause_trouble()
{
SnapshotableMemDb memDb = new();
memDb.Flush();
}

[Test]
public void Can_clear()
{
Expand Down
Loading