public async Task PostTransaction_ConcurrencyException()
        {
            Dictionary<string, long> accounts = new Dictionary<string, long>()
            {
                ["/account/1/"] = 90,
                ["/account/2/"] = 110,
            };

            TransactionValidator validator = new TransactionValidator(
                new TestStore(accounts, true),
                new TestValidator(false),
                "http://root/");

            ByteString mutation = CreateMutation("http://root/");

            await Assert.ThrowsAsync<TransactionInvalidException>(
                () => validator.PostTransaction(mutation, new SignatureEvidence[0]));
        }
        public async Task PostTransaction_ValidationException()
        {
            TransactionValidator validator = new TransactionValidator(
                new TestStore(defaultAccounts, false),
                new TestValidator(true),
                "http://root/");

            ByteString mutation = CreateMutation("http://root/");

            TransactionInvalidException exception = await Assert.ThrowsAsync<TransactionInvalidException>(
                () => validator.PostTransaction(mutation, new SignatureEvidence[0]));
            Assert.Equal("Test", exception.Reason);
        }