public void TestUnspentOutputs() { string testFolder = TestUtils.PrepareTestFolder(GetType(), nameof(TestUnspentOutputs), "*.db"); using (SQLiteBlockchainStorage storage = SQLiteBlockchainStorage.Open(testFolder)) { byte[] transactionHash = new byte[32]; transactionHash[0] = 1; UnspentOutput output = new UnspentOutput(1, transactionHash, 0, 100, new byte[10]); storage.AddUnspentOutput(output); List<UnspentOutput> dbOutputs = storage.FindUnspentOutputs(transactionHash); Assert.That(dbOutputs.Count, Is.EqualTo(1)); UnspentOutput dbOutput = dbOutputs[0]; Assert.That(dbOutput.SourceBlockHeight, Is.EqualTo(output.SourceBlockHeight)); Assert.That(dbOutput.TransactionHash, Is.EqualTo(output.TransactionHash)); Assert.That(dbOutput.OutputNumber, Is.EqualTo(output.OutputNumber)); Assert.That(dbOutput.Sum, Is.EqualTo(output.Sum)); Assert.That(dbOutput.PublicScript, Is.EqualTo(output.PublicScript)); storage.RemoveUnspentOutput(transactionHash, 0); Assert.That(storage.FindUnspentOutputs(transactionHash), Is.Empty); storage.AddSpentOutput(SpentOutput.Create(new StoredBlockBuilder(GenesisBlock.GetHeader()) {Height = 2}.Build(), dbOutput)); } }
public void AddUnspentOutput(UnspentOutput unspentOutput) { transactionalResource.Enlist(); storage.AddUnspentOutput(unspentOutput); }
public void AddUnspentOutput(UnspentOutput unspentOutput) { unspentOutputs.Add(unspentOutput); }