@Test
void testPubSubMessageWithNonFeeTransferAndNullEntityId() throws Exception {

    // given
    List<AccountAmount> nonFeeTransfers = new ArrayList<>();
    nonFeeTransfers.add(buildAccountAmount(10L, 100L));
    nonFeeTransfers.add(buildAccountAmount(11L, 111L));
    CryptoTransferTransactionBody cryptoTransfer = CryptoTransferTransactionBody.newBuilder()
            .setTransfers(TransferList.newBuilder()
                    .addAccountAmounts(nonFeeTransfers.get(0))
                    .addAccountAmounts(nonFeeTransfers.get(1))
                    .build())
            .build();
    Transaction transaction = buildTransaction(builder -> builder.setCryptoTransfer(cryptoTransfer));
    // when
    pubSubRecordItemListener.onItem(new RecordItem(transaction.toByteArray(), DEFAULT_RECORD_BYTES));
    // then
    var pubSubMessage = assertPubSubMessage(buildPubSubTransaction(transaction), 1);
    assertThat(pubSubMessage.getEntity()).isNull();
    assertThat(pubSubMessage.getNonFeeTransfers()).isEqualTo(nonFeeTransfers);
}