public async Task MapsFunctionDtoToSearchDocument() { var mockElasticClient = new MockElasticClient(); var indexer = new ElasticFunctionIndexer <TransferFunction, SearchDocument>("my-index", mockElasticClient.ElasticClient, (tx) => new SearchDocument(tx)); TransactionForFunctionVO <TransferFunction> transactionForFunction = IndexerTestData.CreateSampleTransactionForFunction(); await indexer.IndexAsync(transactionForFunction); Assert.Single(mockElasticClient.BulkRequests); var indexedDoc = mockElasticClient.GetFirstBulkOperation().GetBody() as SearchDocument; //check function message mapping Assert.Equal(transactionForFunction.Transaction.TransactionHash, indexedDoc.TransactionHash); Assert.Equal(transactionForFunction.FunctionMessage.To, indexedDoc.To); Assert.Equal(transactionForFunction.FunctionMessage.Value.ToString(), indexedDoc.Value); }
public async Task MapsFunctionDtoToGenericSearchDocument() { var indexDefinition = new FunctionIndexDefinition <TransferFunction>(); var mockSearchIndexClient = new MockElasticClient(); var indexer = new ElasticFunctionIndexer <TransferFunction>("transfer-functions", mockSearchIndexClient.ElasticClient, indexDefinition); TransactionForFunctionVO <TransferFunction> transactionForFunction = IndexerTestData.CreateSampleTransactionForFunction(); await indexer.IndexAsync(transactionForFunction); Assert.Single(mockSearchIndexClient.BulkRequests); var indexedDoc = mockSearchIndexClient.GetFirstBulkOperation().GetBody() as GenericSearchDocument; //check generic mapping Assert.Equal(transactionForFunction.Transaction.BlockNumber.ToString(), indexedDoc[PresetSearchFieldName.tx_block_number.ToString()]); //check function message mapping Assert.Equal(transactionForFunction.FunctionMessage.To, indexedDoc["to"]); Assert.Equal(transactionForFunction.FunctionMessage.Value.ToString(), indexedDoc["value"]); }
public async Task MapsFunctionDtoToSearchDocument() { var index = new Index(); var mockSearchIndexClient = new SearchIndexClientMock <SearchDocument>(); var indexer = new AzureFunctionIndexer <TransferFunction, SearchDocument>( mockSearchIndexClient.SearchIndexClient, (tx) => new SearchDocument(tx)); TransactionForFunctionVO <TransferFunction> transactionForFunction = IndexerTestData.CreateSampleTransactionForFunction(); await indexer.IndexAsync(transactionForFunction); Assert.Single(mockSearchIndexClient.IndexedBatches); var firstIndexAction = mockSearchIndexClient.IndexedBatches[0].Actions.First(); var document = firstIndexAction.Document; //check function message mapping Assert.Equal(transactionForFunction.Transaction.TransactionHash, document.TransactionHash); Assert.Equal(transactionForFunction.FunctionMessage.To, document.To); Assert.Equal(transactionForFunction.FunctionMessage.Value.ToString(), document.Value); }
public async Task MapsFunctionDtoToGenericSearchDocument() { var indexDefinition = new FunctionIndexDefinition <TransferFunction>(); var index = indexDefinition.ToAzureIndex(); var mockSearchIndexClient = new SearchIndexClientMock <GenericSearchDocument>(); var indexer = new AzureFunctionIndexer <TransferFunction>( mockSearchIndexClient.SearchIndexClient, indexDefinition); TransactionForFunctionVO <TransferFunction> transactionForFunction = IndexerTestData.CreateSampleTransactionForFunction(); await indexer.IndexAsync(transactionForFunction); Assert.Single(mockSearchIndexClient.IndexedBatches); var firstIndexAction = mockSearchIndexClient.IndexedBatches[0].Actions.First(); var document = firstIndexAction.Document; //check generic mapping Assert.Equal(transactionForFunction.Transaction.BlockNumber.ToString(), document[PresetSearchFieldName.tx_block_number.ToString()]); //check function message mapping Assert.Equal(transactionForFunction.FunctionMessage.To, document["to"]); Assert.Equal(transactionForFunction.FunctionMessage.Value.ToString(), document["value"]); }