Пример #1
0
 public static Card GetCardToApprove(DBContext context, CollectionProject collectionProject)
 {
     // if (context.Cards.Count(c => c.TranscriptionState == CardTranscriptionState.TranscriptionAwaitingApproval && c.CollectionProject == collectionProject && c.Transcriptions.Count > 0) > 0)
     return(context.Cards.Where(c =>
                                c.TranscriptionState == CardTranscriptionState.TranscriptionAwaitingApproval &&
                                c.CollectionProject == collectionProject && c.Transcriptions.Count > 0).First());
     //else
     //  return null;
 }
 public static ProjectStatistics GetProjectStatistics(DBContext context, CollectionProject project)
 {
     return(new ProjectStatistics
     {
         TranscriptionsTotal = context.Transcriptions.Count(c => c.Card.CollectionProject == project),
         UsersContributing = context.Transcriptions.Where(c => c.Card.CollectionProject == project)
                             .Select(c => c.CreatedById).Distinct().Count()
     });
 }
Пример #3
0
        public CollectionSpecimen CreateSpecimen()
        {
            CollectionSpecimen cs = null;

            try
            {
                cs = SERIALIZER.CreateISerializableObject <CollectionSpecimen>();
                SERIALIZER.ConnectOneToMany(_parent, cs);
                cs.CollectionEventID = _parent.CollectionEventID;
                con.Save(cs);
            }
            catch (Exception)
            {
                throw new DataFunctionsException("New Specimen couldn't be created.");
            }

            try
            {
                if (UserProfiles.Instance.Current != null)
                {
                    try
                    {
                        CollectionAgent agent = SERIALIZER.CreateISerializableObject <CollectionAgent>();
                        SERIALIZER.ConnectOneToMany(cs, agent);
                        agent.CollectionSpecimenID = cs.CollectionSpecimenID;
                        agent.CollectorsName       = UserProfiles.Instance.Current.CombinedNameCache;
                        if (UserProfiles.Instance.Current.AgentURI != null)
                        {
                            agent.CollectorsAgentURI = UserProfiles.Instance.Current.AgentURI;
                        }
                        con.Save(agent);
                    }
                    catch (Exception)
                    {
                        throw new DataFunctionsException("Associated Agent of new Specimen couldn't be created.");
                    }

                    try
                    {
                        CollectionProject csProject = SERIALIZER.CreateISerializableObject <CollectionProject>();
                        csProject.CollectionSpecimenID = cs.CollectionSpecimenID;
                        csProject.ProjectID            = (int)UserProfiles.Instance.Current.ProjectID;
                        con.Save(csProject);
                    }
                    catch (Exception)
                    {
                        throw new DataFunctionsException("Associated Project of new Specimen couldn't be created.");
                    }
                }
            }
            catch (ConnectionCorruptedException)
            {
            }
            this._currentSpecimen = this._csIterator.Last();
            return(cs);
        }
Пример #4
0
        public void CubicArrayTest()
        {
            // arrange
            var instance01 = new CollectionProject();
            var expected   = 42;
            // act
            var actual = instance01.CubicArray();

            // assert
            Assert.AreEqual(expected, actual);
        }
Пример #5
0
        public void StackTest()
        {
            // arrange
            var instance01 = new CollectionProject();
            var expected   = 8733475;

            // act
            var actual = instance01.StackTest();

            // assert
            Assert.AreEqual(expected, actual);
        }
Пример #6
0
        public void QueueTest()
        {
            // arrange
            var instance01 = new CollectionProject();
            var expected   = 3025;

            // act
            var actual = instance01.QueueTest();

            // assert
            Assert.AreEqual(expected, actual);
        }
Пример #7
0
        public void ListTest()
        {
            // arrange
            var instance01 = new CollectionProject();
            var expected   = 166375;

            // act
            var actual = instance01.List();

            // assert
            Assert.AreEqual(expected, actual);
        }
Пример #8
0
        public void DictionaryTest()
        {
            // arrange
            var instance01    = new CollectionProject();
            var expected      = new Dictionary <string, string>();
            var expectedCount = 10;


            // act
            var actual      = instance01.DictionaryTest();
            var actualCount = actual.Count;

            // assert
            Assert.AreEqual(expectedCount, actualCount);
            Assert.IsInstanceOfType(actual, expected.GetType());
        }
Пример #9
0
 public static Card GetCardToTranscribe(DBContext context, CollectionProject collectionProject)
 {
     return(context.Cards
            .Where(c => c.TranscriptionState == CardTranscriptionState.NeedsTranscription &&
                   c.CollectionProject == collectionProject).OrderBy(x => Guid.NewGuid()).First());
 }