public void ExecuteJob_OneDbParameter_SingleCommandParameterSet() { // setup string connString = Guid.NewGuid().ToString(); ConnectionSetting connSetting = new ConnectionSetting(Guid.NewGuid().ToString(), connString); ReportJob job = new ReportJob(); job.Command = Guid.NewGuid().ToString(); job.Parameters = Guid.NewGuid().ToString(); IDbConnection dbConn = Substitute.For <IDbConnection>(); _dbConnectionFactory.CreateConnection(connString, true).Returns(dbConn); IDbCommand cmd = Substitute.For <IDbCommand>(); dbConn.CreateCommand().Returns(cmd); IDataParameterCollection parmColl = Substitute.For <IDataParameterCollection>(); cmd.Parameters.Returns(parmColl); SqlParameter parm1 = new SqlParameter(Guid.NewGuid().ToString(), Guid.NewGuid().ToString()); _dbParameterUtility.ConvertXmlToDbParameters(job.Parameters).Returns(new SqlParameter[] { parm1 }); // execute _reportExecutor.ExecuteJob(connSetting, job); // assert parmColl.Received(1).Add(parm1); parmColl.Received(1).Add(Arg.Any <IDbDataParameter>()); }