示例#1
0
        public void Exists()
        {
            Data.ArtDatabankenService.IndividualCategoryList categoryList;
            categoryList = IndividualCategoryManager.GetIndividualCategories();

            Assert.IsTrue(categoryList.Exists(GetIndividualCategory()));
        }
        public void GetNatura2000Taxa()
        {
            Data.ArtDatabankenService.Factor factor;
            SpeciesFactCondition             speciesFactCondition;
            SpeciesFactFieldCondition        speciesFactFieldCondition;

            Data.ArtDatabankenService.TaxonList taxa;

            speciesFactCondition = new SpeciesFactCondition();
            factor = Data.ArtDatabankenService.FactorManager.GetFactor(Data.ArtDatabankenService.FactorId.Natura2000BirdsDirective);
            speciesFactCondition.Factors.Add(factor);
            speciesFactCondition.Factors.Add(Data.ArtDatabankenService.FactorManager.GetFactor(Data.ArtDatabankenService.FactorId.Natura2000HabitatsDirectiveArticle2));
            speciesFactCondition.Factors.Add(Data.ArtDatabankenService.FactorManager.GetFactor(Data.ArtDatabankenService.FactorId.Natura2000HabitatsDirectiveArticle4));
            speciesFactCondition.Factors.Add(Data.ArtDatabankenService.FactorManager.GetFactor(Data.ArtDatabankenService.FactorId.Natura2000HabitatsDirectiveArticle5));
            speciesFactCondition.IndividualCategories.Add(IndividualCategoryManager.GetDefaultIndividualCategory());
            speciesFactFieldCondition             = new SpeciesFactFieldCondition();
            speciesFactFieldCondition.FactorField = factor.FactorDataType.Field1;
            speciesFactFieldCondition.SetValue(true);
            speciesFactCondition.SpeciesFactFieldConditions.Add(speciesFactFieldCondition);

            // The merge is necessary if there are problems in Dyntaxa.
            taxa = new Data.ArtDatabankenService.TaxonList();
            taxa.Merge(Data.ArtDatabankenService.TaxonManager.GetTaxaByQuery(speciesFactCondition, TaxonInformationType.Basic));
            Assert.IsTrue(taxa.IsNotEmpty());
            Assert.AreEqual(308, taxa.Count);
        }
示例#3
0
        public void GetIndividualCategoryIdError()
        {
            Int32 individualCategoryId;

            individualCategoryId = Int32.MinValue;
            IndividualCategoryManager.GetIndividualCategory(individualCategoryId);
        }
 public static Data.ArtDatabankenService.IndividualCategoryList GetTwoIndividualCategories()
 {
     Data.ArtDatabankenService.IndividualCategoryList categories = new Data.ArtDatabankenService.IndividualCategoryList();
     categories.Add(IndividualCategoryManager.GetIndividualCategory(12));
     categories.Add(IndividualCategoryManager.GetIndividualCategory(8));
     return(categories);
 }
        public void GetRelistedTaxa()
        {
            Data.ArtDatabankenService.Factor factor;
            RedListCategoryEnum       redListCategory;
            SpeciesFactCondition      speciesFactCondition;
            SpeciesFactFieldCondition speciesFactFieldCondition;

            Data.ArtDatabankenService.TaxonList taxa;

            speciesFactCondition = new SpeciesFactCondition();
            factor = Data.ArtDatabankenService.FactorManager.GetFactor(Data.ArtDatabankenService.FactorId.RedlistCategory);
            speciesFactCondition.Factors.Add(factor);
            speciesFactCondition.IndividualCategories.Add(IndividualCategoryManager.GetDefaultIndividualCategory());
            speciesFactCondition.Periods.Add(PeriodManager.GetCurrentPublicPeriod());

            for (redListCategory = RedListCategoryEnum.DD; redListCategory <= RedListCategoryEnum.NT; redListCategory++)
            {
                speciesFactFieldCondition             = new SpeciesFactFieldCondition();
                speciesFactFieldCondition.FactorField = factor.FactorDataType.Field1;
                speciesFactFieldCondition.SetValue((Int32)redListCategory);
                speciesFactCondition.SpeciesFactFieldConditions.Add(speciesFactFieldCondition);
            }

            // The merge is necessary if there are problems in Dyntaxa.
            taxa = new Data.ArtDatabankenService.TaxonList();
            taxa.Merge(Data.ArtDatabankenService.TaxonManager.GetTaxaByQuery(speciesFactCondition, TaxonInformationType.Basic));
            Assert.IsTrue(taxa.IsNotEmpty());
            Assert.AreEqual(4261, taxa.Count);
        }
        public void GetActionPlanTaxa()
        {
            Data.ArtDatabankenService.Factor          factor;
            Data.ArtDatabankenService.FactorFieldEnum factorFieldEnum;
            SpeciesFactCondition      speciesFactCondition;
            SpeciesFactFieldCondition speciesFactFieldCondition;

            Data.ArtDatabankenService.TaxonList taxa;

            speciesFactCondition = new SpeciesFactCondition();
            // factor = FactorManager.GetFactor(FactorId.ActionPlan);
            factor = Data.ArtDatabankenService.FactorManager.GetFactor(2017);
            speciesFactCondition.Factors.Add(factor);
            speciesFactCondition.IndividualCategories.Add(IndividualCategoryManager.GetDefaultIndividualCategory());
            factorFieldEnum = factor.FactorDataType.Field1.FactorFieldEnum;
            foreach (FactorFieldEnumValue enumValue in factorFieldEnum.Values)
            {
                speciesFactFieldCondition             = new SpeciesFactFieldCondition();
                speciesFactFieldCondition.FactorField = factor.FactorDataType.Field1;
                speciesFactFieldCondition.SetValue(enumValue.KeyInt);
                speciesFactCondition.SpeciesFactFieldConditions.Add(speciesFactFieldCondition);
            }

            // The merge is necessary if there are problems in Dyntaxa.
            taxa = new Data.ArtDatabankenService.TaxonList();
            taxa.Merge(Data.ArtDatabankenService.TaxonManager.GetTaxaByQuery(speciesFactCondition, TaxonInformationType.Basic));
            Assert.IsTrue(taxa.IsNotEmpty());
            Assert.AreEqual(1, taxa.Count);
        }
示例#7
0
        public void GetIndividualCategories()
        {
            List <WebIndividualCategory> individualCategories;

            individualCategories = IndividualCategoryManager.GetIndividualCategories(GetContext());
            Assert.IsNotNull(individualCategories);
            Assert.IsTrue(individualCategories.IsNotEmpty());
        }
示例#8
0
        public static Data.ArtDatabankenService.IndividualCategoryList GetSomeIndividualCategories()
        {
            Data.ArtDatabankenService.IndividualCategoryList individualCategories;

            individualCategories = new Data.ArtDatabankenService.IndividualCategoryList();
            individualCategories.AddRange(IndividualCategoryManager.GetIndividualCategories().GetRange(2, 8));
            return(individualCategories);
        }
示例#9
0
 public void DeleteUserSelectedIndividualCategories()
 {
     foreach (UserSelectedIndividualCategoryUsage individualCategoryUsage in Enum.GetValues(typeof(UserSelectedIndividualCategoryUsage)))
     {
         IndividualCategoryManager.AddUserSelectedIndividualCategories(GetContext(), GetSomeIndividualCategoryIds(GetContext()), individualCategoryUsage);
         IndividualCategoryManager.DeleteUserSelectedIndividualCategories(GetContext());
     }
 }
示例#10
0
        public void GetIndividualCategories()
        {
            Data.ArtDatabankenService.IndividualCategoryList individualCategories;

            individualCategories = IndividualCategoryManager.GetIndividualCategories();
            Assert.IsNotNull(individualCategories);
            Assert.IsTrue(individualCategories.IsNotEmpty());
        }
        public void IndividualCategories()
        {
            UserParameterSelection userParameterSelection = GetUserParameterSelection();

            Assert.AreEqual(userParameterSelection.IndividualCategories.IsNotEmpty(), userParameterSelection.HasIndividualCategories);

            userParameterSelection.IndividualCategories.Merge(IndividualCategoryManager.GetIndividualCategories());
            Assert.IsTrue(userParameterSelection.IndividualCategories.IsNotEmpty());
            Assert.IsTrue(userParameterSelection.IndividualCategories.Count > 15);
            Assert.IsTrue(userParameterSelection.HasIndividualCategories);
        }
示例#12
0
        public void GetIndividualCategory()
        {
            Data.ArtDatabankenService.IndividualCategory individualCategory;

            // Get factor update mode type by Int32 id.
            {
                Int32 individualCategoryId;

                individualCategoryId = 0;
                individualCategory   = IndividualCategoryManager.GetIndividualCategory(individualCategoryId);
                Assert.IsNotNull(individualCategory);
                Assert.AreEqual(individualCategoryId, individualCategory.Id);
            }
        }
示例#13
0
        public static List <Int32> GetSomeIndividualCategoryIds(WebServiceContext context,
                                                                Int32 individualCategoryIdCount)
        {
            List <Int32> individualCategoryIds;

            individualCategoryIds = new List <Int32>();
            foreach (WebIndividualCategory individualCategory in IndividualCategoryManager.GetIndividualCategories(context))
            {
                if (individualCategoryIds.Count >= individualCategoryIdCount)
                {
                    break;
                }
                individualCategoryIds.Add(individualCategory.Id);
            }
            return(individualCategoryIds);
        }
        public void GetProtectedByLawTaxa()
        {
            Data.ArtDatabankenService.Factor factor;
            SpeciesFactCondition             speciesFactCondition;

            Data.ArtDatabankenService.TaxonList taxa;

            speciesFactCondition = new SpeciesFactCondition();
            //factor = FactorManager.GetFactor(FactorId.ProtectedByLaw);
            factor = Data.ArtDatabankenService.FactorManager.GetFactor(2009);
            speciesFactCondition.Factors.Add(factor);
            speciesFactCondition.IndividualCategories.Add(IndividualCategoryManager.GetDefaultIndividualCategory());

            // The merge is necessary if there are problems in Dyntaxa.
            taxa = new Data.ArtDatabankenService.TaxonList();
            taxa.Merge(Data.ArtDatabankenService.TaxonManager.GetTaxaByQuery(speciesFactCondition, TaxonInformationType.Basic));
            Assert.IsTrue(taxa.IsNotEmpty());
            Assert.AreEqual(508, taxa.Count);
        }
        public void GetUserDataSetByParameterSelection()
        {
            UserDataSet            userDataSet = null, userDataSet2;
            UserParameterSelection userParmeterSelection;

            userParmeterSelection = new UserParameterSelection();

            userParmeterSelection.Taxa.Merge(ArtDatabanken.Data.ArtDatabankenService.TaxonManager.GetTaxa(TaxonManagerTest.GetTaxaIds(), TaxonInformationType.Basic));
            Data.ArtDatabankenService.FactorList factors;
            factors = new Data.ArtDatabankenService.FactorList();
            factors.Add(Data.ArtDatabankenService.FactorManager.GetFactor(LANDSCAPE_FACTOR_ID));
            userParmeterSelection.Factors.Merge(factors);

            userDataSet = Data.ArtDatabankenService.SpeciesFactManager.GetUserDataSetByParameterSelection(userParmeterSelection);
            Assert.IsNotNull(userDataSet);
            Assert.IsTrue(userDataSet.SpeciesFacts.IsNotEmpty());
            Assert.IsTrue(userDataSet.SpeciesFacts.Count > 2);

            // Test problem where automatic SpeciesFact is
            // added to the UserDataSet but dependent
            // SpeicesFact is not in the UserDataSet.
            userParmeterSelection = new UserParameterSelection();
            userParmeterSelection.Taxa.Add(TaxonManagerTest.GetOneTaxon());
            userParmeterSelection.Factors.Add(Data.ArtDatabankenService.FactorManager.GetFactor(Data.ArtDatabankenService.FactorId.RedListCategoryAutomatic));
            userDataSet = Data.ArtDatabankenService.SpeciesFactManager.GetUserDataSetByParameterSelection(userParmeterSelection);
            Assert.IsTrue(userDataSet.SpeciesFacts.IsNotEmpty());
            Assert.IsTrue(userDataSet.Factors.Count > 30);

            // Test problem where periodic SpeciesFact are combined
            // with none default IndividualCategory.
            userParmeterSelection = new UserParameterSelection();
            userParmeterSelection.Taxa.Add(TaxonManagerTest.GetOneTaxon());
            userParmeterSelection.Factors.Add(Data.ArtDatabankenService.FactorManager.GetFactor(Data.ArtDatabankenService.FactorId.PopulationSize_Total));
            userDataSet = Data.ArtDatabankenService.SpeciesFactManager.GetUserDataSetByParameterSelection(userParmeterSelection);
            userParmeterSelection.IndividualCategories.Add(IndividualCategoryManager.GetIndividualCategory(INDIVIDUAL_CATEGORY_ID_IMAGO));
            userDataSet2 = Data.ArtDatabankenService.SpeciesFactManager.GetUserDataSetByParameterSelection(userParmeterSelection);
            Assert.AreEqual(userDataSet.SpeciesFacts.Count, userDataSet2.SpeciesFacts.Count);
        }
示例#16
0
        private static List <ArtDatabanken.Data.WebService.WebSpeciesFact> GetSpeciesFacts(WebServiceContext context, int FactorId)
        {
            List <ArtDatabanken.Data.WebService.WebSpeciesFact> webSpeciesFacts;
            WebUserParameterSelection webUserParameterSelection = new WebUserParameterSelection();

            webUserParameterSelection.FactorIds = new List <Int32>();
            webUserParameterSelection.FactorIds.Add(FactorId);

            webUserParameterSelection.IndividualCategoryIds = new List <Int32>();
            try {
                IndividualCategory individualcategory = IndividualCategoryManager.GetDefaultIndividualCategory();
                webUserParameterSelection.IndividualCategoryIds.Add(individualcategory.Id);
            }
            catch (Exception ex)
            {
                LogResult(context,
                          "Failed calling ArtDatabankenService. WebServiceAddress: " + WebServiceClient.WebServiceAddress);
                LogResult(context, "Exception: " + ex.Message);
            }

            // Get data from web service.
            webSpeciesFacts = WebServiceClient.GetSpeciesFactsByUserParameterSelection(webUserParameterSelection);
            return(webSpeciesFacts);
        }
示例#17
0
        //
        // You can use the following additional attributes as you write your tests:
        //
        // Use ClassInitialize to run code before running the first test in the class
        // [ClassInitialize()]
        // public static void MyClassInitialize(TestContext testContext) { }
        //
        // Use ClassCleanup to run code after all tests in a class have run
        // [ClassCleanup()]
        // public static void MyClassCleanup() { }
        //
        // Use TestInitialize to run code before running each test
        // [TestInitialize()]
        // public void MyTestInitialize() { }
        //
        // Use TestCleanup to run code after each test has run
        // [TestCleanup()]
        // public void MyTestCleanup() { }
        //
        #endregion

        private Data.ArtDatabankenService.IndividualCategory GetIndividualCategory()
        {
            return(IndividualCategoryManager.GetIndividualCategories()[0]);
        }
示例#18
0
 public static WebIndividualCategory GetIndividualCategory(WebServiceContext context)
 {
     return(IndividualCategoryManager.GetIndividualCategories(context)[0]);
 }
示例#19
0
 public static Data.ArtDatabankenService.IndividualCategory GetOneIndividualCategory()
 {
     return(IndividualCategoryManager.GetIndividualCategories()[0]);
 }