public void SetUp()
        {
            _serviceMgr      = new Mock <IServicesMgr>();
            _agentHelper     = new Mock <IAgentHelper>();
            _query           = new Mock <IQuery>();
            _artifactQueries = new Mock <IArtifactQueries>();
            _utilityQuery    = new Mock <Helpers.Utility.IQuery>();
            _errorQueries    = new Mock <IErrorQueries>();

            _reproduceManagerJob = new ReproduceManagerJob(1, _agentHelper.Object, _query.Object, DateTime.Now, new List <int>(), _artifactQueries.Object, _utilityQuery.Object, _errorQueries.Object);

            _query.Setup(x => x.ResetUnfishedJobsAsync(It.IsAny <IDBContext>(), 1, It.IsAny <string>())).Returns(SuccessTask).Verifiable();
            _query.Setup(x => x.CreateSavedSearchHoldingTableAsync(It.IsAny <IDBContext>(), It.IsAny <string>(), false)).Returns(SuccessTask).Verifiable();
            _query.Setup(x => x.CreateRedactionsHoldingTableAsync(It.IsAny <IDBContext>(), It.IsAny <string>(), false)).Returns(SuccessTask).Verifiable();

            var dataTable = new DataTable();

            dataTable.Columns.Add("WorkspaceArtifactID", typeof(int));
            dataTable.Columns.Add("ID", typeof(int));
            dataTable.Columns.Add("ReproduceJobArtifactID", typeof(int));
            dataTable.Columns.Add("ResourceGroupID", typeof(int));
            dataTable.Rows.Add(1, 2, 3, 4);

            _query.Setup(x => x.RetrieveNextInJobManagerQueueAsync(It.IsAny <IDBContext>(), 1, It.IsAny <string>(), Constant.Tables.ReproduceManagerQueue, "ReproduceJobArtifactID")).Returns(Task.FromResult(dataTable)).Verifiable();
            _agentHelper.Setup(x => x.GetDBContext(It.IsAny <int>())).Returns(new Mock <IDBContext>().Object);
            _agentHelper.Setup(x => x.GetServicesManager()).Returns(_serviceMgr.Object);
            _artifactQueries.Setup(x => x.AddDocumentsToHoldingTableAsync(It.IsAny <IServicesMgr>(), It.IsAny <IDBContext>(), _utilityQuery.Object, It.IsAny <ExecutionIdentity>(), 1, It.IsAny <int>(), It.IsAny <string>(), It.IsAny <List <SqlBulkCopyColumnMapping> >())).Returns(Task.FromResult(true));
        }
        public void TestHoldingTableNames()
        {
            var savedSearchHoldingTable = _reproduceManagerJob.SavedSearchHoldingTable;

            Assert.AreSame(savedSearchHoldingTable, _reproduceManagerJob.SavedSearchHoldingTable);

            var reproduceManagerJob2 = new ReproduceManagerJob(1, _agentHelper.Object, _query.Object, DateTime.Now, new List <int>(), _artifactQueries.Object, _utilityQuery.Object, _errorQueries.Object);

            Assert.AreNotSame(savedSearchHoldingTable, reproduceManagerJob2.SavedSearchHoldingTable);

            var redactionsHoldingTable = _reproduceManagerJob.RedactionsHoldingTable;

            Assert.AreSame(redactionsHoldingTable, _reproduceManagerJob.RedactionsHoldingTable);
            Assert.AreNotSame(redactionsHoldingTable, reproduceManagerJob2.RedactionsHoldingTable);
        }