public void TestInvokeChaincodeWithStringArgs()
        {
            string        txId = "txId", chaincodeName = "CHAINCODE_ID", channel = "CHAINCODE_CHANNEL";
            ChaincodeStub stub             = new ChaincodeStub(channel, txId, handler.Object, new List <ByteString>(), null);
            Response      expectedResponse = new Response(Status.SUCCESS, "MESSAGE", "PAYLOAD".ToBytes());

            handler.Setup(a => a.InvokeChaincodeAsync(channel, txId, chaincodeName, new List <byte[]>(), token)).ReturnsAsync(expectedResponse);
            Assert.AreEqual(stub.InvokeChaincodeWithStringArgs(chaincodeName), expectedResponse);

            handler.Setup(a => a.InvokeChaincodeAsync(channel, txId, chaincodeName, new List <byte[]>(), token)).ReturnsAsync(expectedResponse);
            Assert.AreEqual(stub.InvokeChaincodeWithStringArgs(chaincodeName, new List <string>()), expectedResponse);

            handler.Setup(a => a.InvokeChaincodeAsync(It.Is <string>(b => b == channel), It.Is <string>(b => b == txId), It.Is <string>(b => b == chaincodeName + "/" + channel), It.IsAny <List <byte[]> >(), token)).ReturnsAsync(expectedResponse);
            Assert.AreEqual(stub.InvokeChaincodeWithStringArgs(chaincodeName, new List <string>(), channel), expectedResponse);
        }