示例#1
0
        public ScannerUser(KeyId keyId, int start, ScannerTester tester)
        {
            var folder = Path.Combine(tester._FolderName, tester.scanner.ToString());
            TestUtils.EnsureNew(folder);

            var chainStream = new StreamObjectStream<ChainChange>(File.Open(Path.Combine(folder, "Chain"), FileMode.OpenOrCreate));
            var accountStream = new StreamObjectStream<AccountEntry>(File.Open(Path.Combine(folder, "Entries"), FileMode.OpenOrCreate));
            _Id = keyId;
            _Scanner = new PubKeyHashScanner(keyId);
            _ScanState = new ScanState(new PubKeyHashScanner(keyId),
                            new Chain(chainStream),
                            new Account(accountStream),
                            start);
            _Tester = tester;
        }
示例#2
0
 public void CanScanPubKeyHash()
 {
     var alice = new Key().PubKey.ID;
     var bob = new Key().PubKey.ID;
     Transaction tx = new Transaction();
     tx.Outputs.Add(new TxOut(Money.Parse("1.5"), alice));
     tx.Outputs.Add(new TxOut(Money.Parse("2.0"), bob));
     PubKeyHashScanner scanner = new PubKeyHashScanner(alice);
     var coins = scanner.ScanCoins(tx, 0);
     Assert.NotNull(coins);
     Assert.Equal(Money.Parse("1.5"), coins.Value);
 }