public void EditDatasetVersion_DeleteADataTupleAfterUpdate_ReturnUpdatedVersion()
        {
            Dataset        dataset;
            DatasetVersion latest;

            using (DatasetManager datasetManager = new DatasetManager())
            {
                //Arrange
                dataset = datasetManager.GetDataset(datasetId);
                latest  = datasetManager.GetDatasetLatestVersion(datasetId);

                //update the dataset
                dataset = dsHelper.UpdateAnyTupleForDataset(dataset, dataset.DataStructure as StructuredDataStructure, datasetManager);
                datasetManager.CheckInDataset(datasetId, "for testing  update all datatuple", username, ViewCreationBehavior.None);
            }

            using (DatasetManager datasetManager = new DatasetManager())
            {
                try
                {
                    latest = datasetManager.GetDatasetLatestVersion(datasetId);

                    int before = datasetManager.GetDataTuplesCount(latest.Id);
                    var tuple  = datasetManager.GetDataTuples(latest.Id).LastOrDefault();

                    //Act
                    if (datasetManager.IsDatasetCheckedOutFor(datasetId, "David") || datasetManager.CheckOutDataset(datasetId, "David"))
                    {
                        DatasetVersion workingCopy = datasetManager.GetDatasetWorkingCopy(datasetId);


                        List <AbstractTuple> deleteTuples = new List <AbstractTuple>();
                        deleteTuples.Add(tuple);

                        workingCopy = datasetManager.EditDatasetVersion(workingCopy, null, null, deleteTuples.Select(d => d.Id).ToList());

                        datasetManager.CheckInDataset(datasetId, "delete one datatuple for testing", username, ViewCreationBehavior.None);
                    }

                    latest = datasetManager.GetDatasetLatestVersion(datasetId);

                    int after = datasetManager.GetDataTuplesCount(latest.Id);


                    //Assert
                    Assert.That(before, Is.GreaterThan(after));
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }
        public void EditDatasetVersion_DeleteADataTuple_ReturnUpdatedVersion()
        {
            DatasetManager datasetManager = new DatasetManager();

            try
            {
                //Arrange
                DatasetVersion latest = datasetManager.GetDatasetLatestVersion(datasetId);

                int before = datasetManager.GetDataTuplesCount(latest.Id);
                var tuple  = datasetManager.GetDataTuples(latest.Id).LastOrDefault();

                //Act
                if (datasetManager.IsDatasetCheckedOutFor(datasetId, "David") || datasetManager.CheckOutDataset(datasetId, "David"))
                {
                    DatasetVersion workingCopy = datasetManager.GetDatasetWorkingCopy(datasetId);


                    List <DataTuple> deleteTuples = new List <DataTuple>();
                    deleteTuples.Add(tuple as DataTuple);

                    workingCopy = datasetManager.EditDatasetVersion(workingCopy, null, null, deleteTuples.Select(d => d.Id).ToList());

                    datasetManager.CheckInDataset(datasetId, "delete one datatuple for testing", username, ViewCreationBehavior.None);
                }

                latest = datasetManager.GetDatasetLatestVersion(datasetId);

                int after = datasetManager.GetDataTuplesCount(latest.Id);


                //Assert
                Assert.That(before, Is.GreaterThan(after));
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                datasetManager.Dispose();
            }
        }
Esempio n. 3
0
        public void GetDataTuples_CallOlderVersionAfterTwoUpdates_ReturnIQueryable()
        {
            List <long> datatupleIds;

            try
            {
                //Arrange
                using (var datasetManager = new DatasetManager())
                {
                    var dataset        = datasetManager.GetDataset(datasetId);
                    var datasetVersion = datasetManager.GetDatasetLatestVersion(datasetId);

                    Assert.IsNotNull(dataset);
                    Assert.IsNotNull(datasetVersion);

                    //get latest datatupleid before create a new dataset and data
                    using (var uow = this.GetUnitOfWork())
                    {
                        datatupleIds = uow.GetReadOnlyRepository <DataTuple>().Get().Where(dt => dt.DatasetVersion.Id.Equals(datasetVersion.Id)).Select(dt => dt.Id).ToList();
                    }

                    dataset = dsHelper.UpdateOneTupleForDataset(dataset, (StructuredDataStructure)dataset.DataStructure, datatupleIds[0], 1000, datasetManager);
                    datasetManager.CheckInDataset(dataset.Id, "for testing  datatuples with versions", username, ViewCreationBehavior.None);

                    dataset = dsHelper.UpdateOneTupleForDataset(dataset, (StructuredDataStructure)dataset.DataStructure, datatupleIds[1], 2000, datasetManager);
                    datasetManager.CheckInDataset(dataset.Id, "for testing  datatuples with versions", username, ViewCreationBehavior.None);
                }


                //Act
                using (var datasetManager = new DatasetManager())
                {
                    List <DatasetVersion> datasetversions = datasetManager.GetDatasetVersions(datasetId).OrderBy(d => d.Timestamp).ToList();
                    Assert.That(datasetversions.Count, Is.EqualTo(3));

                    foreach (var dsv in datasetversions)
                    {
                        int c = datasetManager.GetDataTuplesCount(dsv.Id);

                        var result = datasetManager.GetDataTuples(dsv.Id); // get datatuples from the one before the latest
                        int cm     = result.Count();
                        Assert.That(c, Is.EqualTo(10));
                        Assert.That(c, Is.EqualTo(result.Count()));
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Esempio n. 4
0
        public void GetDataTuples_WhenCalledForLatestVersionComplete_ReturnIQueryable()
        {
            //Arrange
            DatasetManager datasetManager = new DatasetManager();

            try
            {
                //Act
                DatasetVersion datasetversion = datasetManager.GetDatasetLatestVersion(datasetId);
                var            result         = datasetManager.GetDataTuples(datasetversion.Id);
                int            c = datasetManager.GetDataTuplesCount(datasetversion.Id);
                //Assert
                Assert.That(result.Count(), Is.EqualTo(numberOfTuples));
                Assert.That(c, Is.EqualTo(result.Count()));
            }
            finally
            {
                datasetManager.Dispose();
            }
        }