Example #1
0
 protected PerformanceTest(ITestOutputHelper output)
 {
     _output = output;
     _output.WriteLine($"{GetType()} - initialize");
     _testHelper = new DbTestHelper <T>(output);
     _testHelper.Initialize();
     _testHelper.BulkInsert(FakeData.People.List(1000));
 }
        public static void ClassInit(TestContext context)
        {
            // 関連DBデータを全削除
            DbTestHelper.DeleteAllReseed();

            // マスタテーブルデータを作成する
            DbTestHelper.ExecSqlFromFilePath(@"TestData\MakeMasterTableData.sql");
        }
Example #3
0
 public void SetUp()
 {
     DbTestHelper.ClearTable("Observation");
     DbTestHelper.ClearTable("PointSurvey");
     DbTestHelper.ClearTable("SiteVisit");
     DbTestHelper.ClearTable("Location");
     DbTestHelper.LoadSpecies();
 }
        public void t_SamplingPointMapper_Save_Update()
        {
            Location_ado location = null;

            // backdoor data setup
            DbTestHelper.LoadAdoObjects(delegate(IbaUnitTestEntities iba)
            {
                location                  = Location_ado.CreateLocation_ado(TestHelper.TestGuid1, "locationName", LookupConstants.LocationTypePoint);
                location.CodeName         = "abc";
                location.Latitude         = 89.3M;
                location.Longitude        = 90.10093M;
                location.ParentLocationId = TestHelper.TestParentGuid;
                iba.AddToLocation_ado(location);
            });
            List <Location_ado> extraList = DbTestHelper.LoadExtraneousLocations();

            // Setup object to be saved. Change everything except the Id.
            SamplingPoint site = new SamplingPoint()
            {
                GeoCoordinate = new Business.DataTypes.Coordinate()
                {
                    Latitude = new Business.DataTypes.Degree()
                    {
                        Value = location.Latitude.Value + 1M
                    },
                    Longitude = new Business.DataTypes.Degree()
                    {
                        Value = location.Longitude.Value + 1M
                    }
                },
                Id     = location.LocationId,
                Name   = location.LocationName + "asd",
                SiteId = TestHelper.TestParentGuid
            };

            // Execute the test
            SamplingPointMapper.Update(site);

            // Validate results
            using (IbaUnitTestEntities iba = new IbaUnitTestEntities())
            {
                var siteQuery = from sites in iba.SamplingPoint_ado select sites;
                Assert.IsNotNull(siteQuery, "Query result is null");
                Assert.AreEqual(extraSamplingPoints(extraList).Count() + 1, siteQuery.Count(), "Wrong number of results in query");
                SamplingPoint_ado adoSite = siteQuery.First(x => x.LocationId == TestHelper.TestGuid1);
                validateObjectEquality(site, adoSite);

                // double check the other objects as well, must make sure they remain unchanged.
                foreach (Location_ado adoLocation in extraSamplingPoints(extraList))
                {
                    adoSite = siteQuery.First(x => x.LocationId == adoLocation.LocationId);
                    Assert.IsNotNull(adoSite, "There is no longer an object with id " + adoLocation.LocationId.ToString());
                    Assert.AreEqual(adoLocation.Latitude, adoSite.Latitude, "Extra " + adoSite.LocationId.ToString() + " Latitude mismatch");
                    Assert.AreEqual(adoLocation.Longitude, adoSite.Longitude, "Extra " + adoSite.LocationId.ToString() + " Longitude mismatch");
                    Assert.AreEqual(adoSite.LocationName, adoSite.LocationName, "Extra " + adoSite.LocationId.ToString() + " Locationname mismatch");
                }
            }
        }
Example #5
0
        public void SetUp()
        {
            DbTestHelper.ClearTable("PointSurvey");
            DbTestHelper.ClearTable("Observation");
            DbTestHelper.ClearTable("SiteVisit");
            DbTestHelper.LoadLookupTypes();
            DbTestHelper.LoadSpecies();

            _supplementalObservationTypeId = (new SupplementalObservation()).ObservationTypeId;
        }
Example #6
0
        public void SetUp()
        {
            DbTestHelper.ClearTable("PointSurvey");
            DbTestHelper.ClearTable("Observation");
            DbTestHelper.ClearTable("SiteVisit");
            DbTestHelper.LoadLookupTypes();
            DbTestHelper.LoadSpecies();

            _PointCountLess50TypeId = (new PointCountWithin50()).ObservationTypeId;
        }
Example #7
0
        /// <summary>
        /// 共通の事前設定項目
        /// </summary>
        /// <param name="timeProviderUtcNow">DIするTimeProviderのUtcNowで返却させる日時</param>
        /// <param name="in_InvalidDbConnectionString">投入するAppSettingsが正常値かどうか</param>
        /// <param name="in_InvalidBlobConnectionString">Blob接続文字列を不正地で設定するかどうか</param>
        /// <param name="in_ServiceException">Serviceで強制的に例外を発生させるかどうか</param>
        /// <param name="in_DeliveringBlobContainerNameInstallbase">AppSettingsに登録するDeliveringBlobのコンテナ名</param>
        /// <param name="in_DeliveringBlobInstallbaseFilePath">AppSettingsに登録するDeliveringBlobのファイルパス</param>
        /// <param name="in_InsertNewDataSqlPath">挿入するデータのSQLファイルパス</param>
        /// <param name="in_InitialBlobFilePath">事前にBlobにアップロードしておくファイルのパス</param>
        /// <param name="configContents">事前アップロードしたBlobファイル内容</param>
        /// <returns></returns>
        private bool CommonPreset(
            DateTime timeProviderUtcNow,
            string in_InvalidDbConnectionString,
            string in_InvalidBlobConnectionString,
            string in_ServiceException,
            string in_DeliveringBlobContainerNameInstallbase,
            string in_DeliveringBlobInstallbaseFilePath,
            string in_InsertNewDataSqlPath,
            string in_InitialBlobFilePath,
            out string configContents)
        {
            Dictionary <string, string> dic = new Dictionary <string, string>();

            if (bool.TryParse(in_InvalidDbConnectionString, out bool isDbSettingsInvalid) && isDbSettingsInvalid)
            {
                // DB接続文字列が不正なAppSettingsとする
                dic.Add("ConnectionStrings:PrimaryDbConnectionString", null);
            }
            if (bool.TryParse(in_InvalidBlobConnectionString, out bool isBlobSettingsInvalid) && isBlobSettingsInvalid)
            {
                // Blob接続文字列が不正なAppSettingsとする
                dic.Add("ConnectionStrings:DeliveringBlobConnectionString", "BlobEndpoint=https://rmscoemujpedeliver01.blob.core.windows.net/;QueueEndpoint=https://rmscoemujpedeliver01.queue.core.windows.net/;FileEndpoint=https://rmscoemujpedeliver01.file.core.windows.net/;TableEndpoint=https://rmscoemujpedeliver01.table.core.windows.net/;SharedAccessSignature=sv=2019-02-02&ss=bfqt&srt=sco&sp=rwdlacup&se=9999-12-31T14:59:59Z&st=2019-12-31T15:00:00Z&spr=https&sig=hogehogehogehogehogehogehogehogehogehogehogehoge");
            }

            // Blobのコンテナ名・ファイルパスの設定
            dic.Add("DeliveringBlobContainerNameInstallbase", in_DeliveringBlobContainerNameInstallbase);
            dic.Add("DeliveringBlobInstallbaseFilePath", in_DeliveringBlobInstallbaseFilePath);

            // DI実施
            DependencyInjection(timeProviderUtcNow, dic, (bool.TryParse(in_ServiceException, out bool isServiceException) && isServiceException));

            // 初期データ挿入
            DbTestHelper.ExecSqlFromFilePath(in_InsertNewDataSqlPath);

            // アップロード予定の場所にあるBlobを削除する
            TryDeleteBlob(_initialBlobContainerName, _initialBlobFilePath);

            // 初期Blobを入れる場合はアップロードする
            configContents = string.Empty;
            bool didUploadInitialBlob = false;

            if (!string.IsNullOrEmpty(in_InitialBlobFilePath) && File.Exists(in_InitialBlobFilePath))
            {
                configContents = File.ReadAllText(in_InitialBlobFilePath);

                // テストでは固定のコンテナ名・ファイルパスで設定する
                TryUploadBlob(_initialBlobContainerName, _initialBlobFilePath, configContents);
                didUploadInitialBlob = true;
            }

            // WebAPIでアップロードする先のコンテナを作成する
            _ = TryCreateContainer(in_DeliveringBlobContainerNameInstallbase);

            return(didUploadInitialBlob);
        }
Example #8
0
 protected DatabaseTest(ITestOutputHelper output)
 {
     _output = output;
     _output.WriteLine($"{GetType()} - initialize");
     _people     = FakeData.People.List(10).ToArray();
     _addresses  = FakeData.Addresses.List(10);
     _testHelper = new DbTestHelper <T>(output);
     _testHelper.Initialize();
     _testHelper.Insert(_people.Take(5), _addresses);
     _testHelper.InsertAsync(_people.Skip(5)).Wait();
 }
        public void SetUp()
        {
            var stubBuilder = new ContainerBuilder();

            stubBuilder.RegisterType <StubWebConfigConfigurationManager>().As <IConfigurationManager>();

            IocHelper.Container = stubBuilder.Build();

            //创建数据库
            DbTestHelper.CreateFakeDataBase();
        }
Example #10
0
        public static void ClassInit(TestContext context)
        {
            // 関連DBデータを全削除
            DbTestHelper.DeleteAllReseed();

            // マスタテーブルデータを作成する
            DbTestHelper.ExecSqlFromFilePath(@"TestData\MakeMasterTableData.sql");

            // 配信グループに関連する配信ファイル・端末データを作成する
            DbTestHelper.ExecSqlFromFilePath(@"TestData\MakeDeviceAndDeliveryFileData.sql");
        }
        public void TestInitialize()
        {
            DbTestHelper.ClearTable("Location");
            DbTestHelper.ClearTable("SiteVisit");
            DbTestHelper.ClearTable("PointSurvey");
            DbTestHelper.ClearTable("Observation");

            DbTestHelper.ClearTable("Species");

            setupSpecies();
        }
Example #12
0
        // [DynamicData("aa",DynamicDataSourceType.Method)]
        public async Task Index_Success_CopyedFile()
        {
            // 前提条件
            // ・ファイルがCollectingBlob上に存在する。
            // あと条件
            // ・ファイルがPrimaryBlob上にコピーされる。

            // TestInitialize
            DbTestHelper.DeleteAll();
            var dataOnDb = DbTestHelper.CreateMasterTables();

            dataOnDb = DbTestHelper.CreateDevices(dataOnDb);
            var owner = dataOnDb.Get <DtDevice>().First().EdgeId.ToString();

            // 設定値が空
            var diBuilder = new TestDiProviderBuilder();

            diBuilder.ServiceCollection.AddTransient <ITimeProvider>(x => UnitTestHelper.CreateTimeProvider(new DateTime(2020, 3, 1)));
            var provider = diBuilder.Build();

            // テストデータ作成
            // 準備として、Primary,Collectingのファイルを全部消す。
            var settings = provider.GetService <AppSettings>();

            await DeleteContainerOnBlob(settings.CollectingBlobConnectionString, "collect");
            await DeleteContainerOnBlob(settings.CollectingBlobConnectionString, "unknown");
            await DeleteContainerOnBlob(settings.PrimaryBlobConnectionString, "log");
            await DeleteContainerOnBlob(settings.PrimaryBlobConnectionString, "error");
            await DeleteContainerOnBlob(settings.PrimaryBlobConnectionString, "device");

            await CreateTestFilesOnCollectingBlob(settings, owner);

            // テスト対象
            var target = provider.GetService <IIndexBlobService>();

            target.Index();

            // 結果確認
            //var _account = CloudStorageAccount.Parse(settings.CoreStorageCollectingConnectionString);
            //var client = _account.CreateCloudBlobClient();
            //var container = client.GetContainerReference(settings.CoreStorageCollectingCollectContainerName);
            //var blob1 = container.GetBlockBlobReference(filePath);



            // CollectingBlobにファイルがないことを確認。


            // PrimaryBlobにそのファイルがあることを確認。

            // DBにファイルがあることを確認。
        }
        public static void ClassInit(TestContext context)
        {
            // 関連DBデータを全削除
            DbTestHelper.DeleteAllReseed();

            // Repository生成
            TestDiProviderBuilder builder = new TestDiProviderBuilder();

            builder.ServiceCollection.AddTransient <DtDeliveryResultRepository>();
            ServiceProvider provider = builder.Build();

            _deliveryResultRepository = provider.GetService <DtDeliveryResultRepository>();
        }
        public void t_GetBoundaries_None()
        {
            List <Location_ado> extraList = DbTestHelper.LoadExtraneousLocations();

            Site results = new Site()
            {
                Id = extraList[0].LocationId
            };

            SiteMapper.GetBoundaries(results);
            Assert.IsNotNull(results.Boundaries, "results are null");
            Assert.AreEqual(0, results.Boundaries.Count(), "wrong count");
        }
Example #15
0
        public void t_Site_Save_Update()
        {
            Location_ado location = null;

            // backdoor data setup
            DbTestHelper.LoadAdoObjects(delegate(IbaUnitTestEntities iba)
            {
                location = Location_ado.CreateLocation_ado(TestHelper.TestGuid1,
                                                           "locationName", LookupConstants.LocationTypeSite);
                location.CodeName         = "abc";
                location.Latitude         = 89.3M;
                location.Longitude        = 90.10093M;
                location.ParentLocationId = null;
                iba.AddToLocation_ado(location);
            });
            List <Location_ado> extraList = DbTestHelper.LoadExtraneousLocations();

            // Setup object to be saved. Change everything except the Id.
            Site site = new Site()
            {
                CodeName      = location.CodeName + "a",
                GeoCoordinate = new Business.DataTypes.Coordinate()
                {
                    Latitude = new Business.DataTypes.Degree()
                    {
                        Value = location.Latitude.Value + 1M
                    },
                    Longitude = new Business.DataTypes.Degree()
                    {
                        Value = location.Longitude.Value + 1M
                    }
                },
                Id   = location.LocationId,
                Name = location.LocationName + "asd"
            };

            // Execute the test
            SiteMapper.Update(site);

            // Validate results
            using (IbaUnitTestEntities iba = new IbaUnitTestEntities())
            {
                var siteQuery = from sites in iba.Site_ado select sites;
                Assert.IsNotNull(siteQuery, "Query result is null");
                Assert.AreEqual(extraSites(extraList).Count() + 1, siteQuery.Count(), "Wrong number of results in query");
                Site_ado adoSite = siteQuery.First(x => x.LocationId == TestHelper.TestGuid1);
                validateObjectEquality(site, adoSite);

                validateExtraLocations(extraList, siteQuery);
            }
        }
        public void t_SamplingPointMapper_Delete()
        {
            Location_ado location = null;

            // backdoor data setup
            DbTestHelper.LoadAdoObjects(delegate(IbaUnitTestEntities iba)
            {
                location = Location_ado.CreateLocation_ado(TestHelper.TestParentGuid,
                                                           "locationName", LookupConstants.LocationTypeSite);
                location.CodeName         = "abc";
                location.Latitude         = 89.3M;
                location.Longitude        = 90.10093M;
                location.ParentLocationId = null;
                iba.AddToLocation_ado(location);
            });
            Location_ado pointAdo = null;

            DbTestHelper.LoadAdoObjects((IbaUnitTestEntities iba) =>
            {
                pointAdo = Location_ado.CreateLocation_ado(TestHelper.TestGuid1,
                                                           "pointName", LookupConstants.LocationTypePoint);
                location.ParentLocationId = TestHelper.TestParentGuid;
                iba.AddToLocation_ado(pointAdo);
            });
            List <Location_ado> extraList = DbTestHelper.LoadExtraneousLocations();


            SamplingPoint point = new SamplingPoint()
            {
                Id     = TestHelper.TestGuid1,
                SiteId = TestHelper.TestParentGuid
            };

            // Exercise the system under test
            SamplingPointMapper.Delete(point);

            // Validate that the one record was deleted but none others were
            using (IbaUnitTestEntities iba = new IbaUnitTestEntities())
            {
                var pointQuery = from points in iba.Location_ado select points;
                Assert.IsNotNull(pointQuery, "Query result is null");
                Assert.AreEqual(0, pointQuery.Count(x => x.LocationId == point.Id), "Point wasn't deleted");

                // Check to see if extra points and locations are still in the database
                foreach (Location_ado extra in extraList)
                {
                    Assert.AreEqual(1, pointQuery.Count(x => x.LocationId == extra.LocationId), "Location " + extra.LocationId.ToString() + " is no longer in the database.");
                }
                Assert.AreEqual(1, pointQuery.Count(x => x.LocationId == location.LocationId), "Parent was deleted");
            }
        }
        public void t_Conditions_Save_Update()
        {
            SiteCondition_ado conditionAdo = null;

            // backdoor data setup
            DbTestHelper.LoadAdoObjects(delegate(IbaUnitTestEntities iba)
            {
                conditionAdo = SiteCondition_ado.CreateSiteCondition_ado(TestHelper.TestGuid1, 32, "F", 2, 3,
                                                                         TestHelper.TestParentGuid);
            });
            List <SiteCondition_ado> extraList = DbTestHelper.LoadExtraneousConditions();

            // Setup object to be saved. Change everything except the Id.
            SiteCondition conditions = new SiteCondition()
            {
                Id          = TestHelper.TestGuid1,
                SiteVisitId = TestHelper.TestGuid1,
                Sky         = 2,
                Temperature = new Business.DataTypes.Temperature()
                {
                    Value = 45, Units = "F"
                },
                Wind = 2
            };

            // Execute the test
            ConditionsMapper.Update(conditions);

            // Validate results
            using (IbaUnitTestEntities iba = new IbaUnitTestEntities())
            {
                var ConditionsQuery = from Conditionss in iba.SiteCondition_ado select Conditionss;
                Assert.IsNotNull(ConditionsQuery, "Query result is null");
                Assert.AreEqual(extraList.Count() + 1, ConditionsQuery.Count(), "Wrong number of results in query");
                SiteCondition_ado adoConditions = ConditionsQuery.First(x => x.ConditionId == TestHelper.TestGuid1);
                validateObjectEquality(conditions, adoConditions);

                // double check the other objects as well, must make sure they remain unchanged.
                foreach (SiteCondition_ado cond in extraList)
                {
                    SiteCondition_ado posttest = ConditionsQuery.First(x => x.ConditionId == cond.ConditionId);
                    Assert.IsNotNull(posttest, cond.ConditionId.ToString() + " is missing from results");
                    Assert.AreEqual(cond.Scale, posttest.Scale, cond.ConditionId.ToString() + " different scale");
                    Assert.AreEqual(cond.SiteVisitId, posttest.SiteVisitId, cond.ConditionId.ToString() + " different SiteVisitId");
                    Assert.AreEqual(cond.Sky, posttest.Sky, cond.ConditionId.ToString() + " different sky");
                    Assert.AreEqual(cond.Temperature, posttest.Temperature, cond.ConditionId.ToString() + " different temperature");
                    Assert.AreEqual(cond.Wind, posttest.Wind, cond.ConditionId.ToString() + " different wind");
                }
            }
        }
Example #18
0
        /// <summary>
        /// DBデータが期待値と等しいかチェックする
        /// </summary>
        /// <param name="expected_DtDevice_TableDataPath">期待する端末データのDBテーブル内容</param>
        private void CheckDbDataEquals(string expected_DtDevice_TableDataPath)
        {
            // テーブルデータの実際の値・期待値を取得(EdgeId以外)
            DataTable deviceActualTable = DbTestHelper.SelectTable(
                @"SELECT 
                    SID, EQUIPMENT_MODEL_SID, INSTALL_TYPE_SID, CONNECT_STATUS_SID, EQUIPMENT_UID, REMOTE_CONNECT_UID, RMS_SOFT_VERSION, CONNECT_START_DATETIME, CONNECT_UPDATE_DATETIME, CREATE_DATETIME, UPDATE_DATETIME 
                FROM core.DT_DEVICE");
            DataTable deviceExpectedTable = DbTestHelper.SelectCsv(expected_DtDevice_TableDataPath,
                                                                   @"SELECT 
                    SID, EQUIPMENT_MODEL_SID, INSTALL_TYPE_SID, CONNECT_STATUS_SID, EQUIPMENT_UID, REMOTE_CONNECT_UID, RMS_SOFT_VERSION, CONNECT_START_DATETIME, CONNECT_UPDATE_DATETIME, CREATE_DATETIME, UPDATE_DATETIME
                FROM core.DT_DEVICE");

            // テーブルデータの比較
            CheckDataTableEquals(deviceExpectedTable, deviceActualTable);
        }
Example #19
0
        public void Update403ErrorIfStatusIsNotStarted()
        {
            // DbSetup
            DbTestHelper.DeleteAll();
            var list = DbTestHelper.CreateMasterTables();

            list = DbTestHelper.CreateDeliveries(list);
            list = DbTestHelper.CreateDevices(list);

            // Target Create
            var builder = new TestDiProviderBuilder();

            builder.ServiceCollection.AddTransient <DeliveryGroupsController>();
            var controller = builder.Build().GetService <DeliveryGroupsController>();

            // 配信グループデータを作成し、SIDを読み込む(作成・読み込み結果は別テストで判定するためここでは省略)
            var statusStarted = new DeliveryGroupAddRequestDto()
            {
                DeliveryFileSid = list.GetDtDeliveryFileSid(),
                // これがNotStartではないのが本テストのポイント。
                // HACK: この
                // DeliveryGroupStatusSid = list.GetMtDeliveryGroupStatusSid( "started" ),
                Name          = "UnitTest",
                StartDatetime = new DateTime(2099, 12, 31),
                // DownloadDelayTime
                DeliveryDestinations = new DeliveryResultAddRequestDto[] { }
            };
            var createResponse =
                controller.PostDeliveryGroup(statusStarted, UnitTestHelper.CreateLogger())
                as OkObjectResult;
            var createResponseValue = createResponse.Value as DeliveryGroupResponseDto;

            // 更新処理
            var updateActual = new DeliveryGroupUpdateRequestDto()
            {
                Name          = "updateExpectedName",
                StartDatetime = new DateTime(2050, 6, 1),
                // DownloadDelayTime
                RowVersion = createResponseValue.RowVersion
            };
            var actual = controller.PutDeliveryGroup(updateActual, createResponseValue.Sid, UnitTestHelper.CreateLogger());

            // 403が返るかチェック
            Assert.IsInstanceOfType(actual, typeof(StatusCodeResult));
            var statucCodeResult = actual as StatusCodeResult;

            Assert.AreEqual(StatusCodes.Status403Forbidden, statucCodeResult.StatusCode);
        }
Example #20
0
        public void t_SiteVisit_SelectAllForSite()
        {
            // Backdoor setup
            List <SiteVisit_ado> list = DbTestHelper.LoadExtraneousSiteVisits();

            // Exercise the test
            List <SiteVisit> resultList = SiteVisitMapper.SelectAllForSite(list[0].LocationId);

            // Validate results
            Assert.AreEqual(resultList.Count(), 1, "Wrong number of objects in the result list");
            foreach (SiteVisit_ado ado in list.FindAll(x => x.LocationId.Equals(list[0].LocationId)))
            {
                // just check to make sure the object is there; leave specific value check for the Select_ByGuid test
                Assert.IsTrue(resultList.Exists(x => x.Id.Equals(ado.EventId)), "SiteVisitAdo " + ado.EventId.ToString() + " is not in the results");
            }
        }
Example #21
0
        public void t_PointSurvey_SelectAllForSiteVisit()
        {
            // Backdoor setup -- both have same SameVisitId
            List <PointSurvey_ado> list = DbTestHelper.LoadExtraneousPointSurveys();

            // Exercise the test
            List <FiftyMeterPointSurvey> resultList = PointSurveyMapper.SelectAllForSiteVisit(list[0].SiteVisitId.Value);

            // Validate results
            Assert.AreEqual(resultList.Count(), list.Count(), "Wrong number of objects in the result list");
            foreach (PointSurvey_ado ado in list)
            {
                // just check to make sure the object is there; leave specific value check for the Select_ByGuid test
                Assert.IsTrue(resultList.Exists(x => x.Id.Equals(ado.EventId)), "PointSurvey_ado " + ado.EventId.ToString() + " is not in the results");
            }
        }
        public void t_Species_Select_All()
        {
            // Backdoor setup
            List <Species_ado> list = DbTestHelper.LoadExtraneousSpecies();

            // Exercise the test
            List <Species> speciesList = SpeciesMapper.SelectAll();

            // Validate results
            Assert.AreEqual(list.Count(), speciesList.Count, "Wrong number of objects in the result list");
            foreach (Species_ado ado in list)
            {
                // just check to make sure the object is there; leave specific value check for the Select_ByGuid test
                Assert.IsTrue(speciesList.Exists(x => x.Id.Equals(ado.SpeciesId)), "Species_ado " + ado.SpeciesId.ToString() + " is not in the results");
            }
        }
        public void t_Conditions_Select_ByGuid()
        {
            SiteCondition_ado conditionAdo = SiteCondition_ado.CreateSiteCondition_ado(TestHelper.TestGuid1, 32,
                                                                                       "F", 2, 3, TestHelper.TestParentGuid);

            // backdoor data setup
            DbTestHelper.LoadAdoObjects(delegate(IbaUnitTestEntities iba)
            {
                iba.AddToSiteCondition_ado(conditionAdo);
            });
            DbTestHelper.LoadExtraneousConditions();

            // Exercise the test
            SiteCondition Conditions = ConditionsMapper.Select(conditionAdo.ConditionId);

            validateResults(conditionAdo, Conditions);
        }
        public void t_GetBoundaries_Positive()
        {
            List <Location_ado> extraList = DbTestHelper.LoadExtraneousLocations();

            SiteBoundary boundary1 = new SiteBoundary()
            {
                SiteId = extraList[0].LocationId, Latitude = 1.02m, Longitude = 3.456m, VertexSequence = 1
            };
            SiteBoundary boundary2 = new SiteBoundary()
            {
                SiteId = extraList[0].LocationId, Latitude = -7.8m, Longitude = 90.12m, VertexSequence = 2
            };
            SiteBoundary boundary3 = new SiteBoundary()
            {
                SiteId = extraList[0].LocationId, Latitude = 34.5m, Longitude = -64.47m, VertexSequence = 3
            };

            DbTestHelper.LoadAdoObjects(delegate(IbaUnitTestEntities iba)
            {
                iba.AddToSiteBoundaries(boundary2);
                iba.AddToSiteBoundaries(boundary1);
                iba.AddToSiteBoundaries(boundary3);
            });

            Site results = new Site()
            {
                Id = extraList[0].LocationId
            };

            SiteMapper.GetBoundaries(results);
            Assert.IsNotNull(results.Boundaries, "results are null");
            Assert.AreEqual(3, results.Boundaries.Count(), "wrong count");

            Coordinate coord = results.Boundaries.Dequeue();

            Assert.AreEqual(boundary1.Latitude, coord.Latitude.Value, "lat 1");
            Assert.AreEqual(boundary1.Longitude, coord.Longitude.Value, "long 1");

            coord = results.Boundaries.Dequeue();
            Assert.AreEqual(boundary2.Latitude, coord.Latitude.Value, "lat 2");
            Assert.AreEqual(boundary2.Longitude, coord.Longitude.Value, "long 2");

            coord = results.Boundaries.Dequeue();
            Assert.AreEqual(boundary3.Latitude, coord.Latitude.Value, "lat 3");
            Assert.AreEqual(boundary3.Longitude, coord.Longitude.Value, "long 3");
        }
        public void t_SamplingPointMapper_Select_All()
        {
            // Backdoor setup
            List <Location_ado> list        = DbTestHelper.LoadExtraneousLocations();
            List <Location_ado> siteAdoList = extraSamplingPoints(list);

            // Exercise the test
            List <SamplingPoint> siteList = SamplingPointMapper.SelectAll();

            // Validate results
            Assert.AreEqual(siteAdoList.Count(), siteList.Count, "Wrong number of objects in the result list");
            foreach (Location_ado ado in siteAdoList)
            {
                // just check to make sure the object is there; leave specific value check for the Select_ByGuid test
                Assert.IsTrue(siteList.Exists(x => x.Id.Equals(ado.LocationId)), "Location " + ado.LocationId.ToString() + " is not in the results");
            }
        }
Example #26
0
        public void t_PointCountLess50_Save_Update()
        {
            //loadSiteVisit(TestHelper.TestGuid1);
            Observation_ado setupObject = null;

            // backdoor data setup
            DbTestHelper.LoadAdoObjects(delegate(IbaUnitTestEntities iba)
            {
                setupObject = new Observation_ado()
                {
                    Comments          = "asdfasdf asdf adsfa dsfads fasdf adsfasd fadsf awefr34fr34r34 ",
                    SpeciesId         = new Guid(TestHelper.SPECIES_1_ID),
                    EventId           = TestHelper.TestGuid1,
                    ObservationTypeId = _PointCountLess50TypeId
                };
                iba.AddToObservation_ado(setupObject);
            });
            List <Observation_ado> extraList = DbTestHelper.LoadExtraneousObservations(TestHelper.TestGuid3);

            // Setup object to be saved. Change everything except the Id.
            PointCountWithin50 testObject = new PointCountWithin50()
            {
                Comments    = "hurdy gurdy",
                SpeciesCode = TestHelper.SPECIES_2_CODE,
                EventId     = setupObject.EventId,
                Id          = setupObject.ObservationId
            };

            // Execute the test
            ObservationMapper.Update(testObject);

            // Validate results
            using (IbaUnitTestEntities iba = new IbaUnitTestEntities())
            {
                var PointCountLess50Query = from PointCountLess50s in iba.Observation_ado select PointCountLess50s;
                Assert.IsNotNull(PointCountLess50Query, "Query result is null");
                Assert.AreEqual(extraList.Count() + 1, PointCountLess50Query.Count(), "Wrong number of results in query");

                Observation_ado adoPointCountLess50 = PointCountLess50Query.First(x => x.ObservationId == setupObject.ObservationId);
                validateObjectEquality(testObject, adoPointCountLess50, iba);

                validateExtraObservations(extraList, PointCountLess50Query);
            }
        }
Example #27
0
        public void t_SiteVisit_Save_Update()
        {
            SiteVisit_ado setupObject = null;

            // backdoor data setup
            DbTestHelper.LoadAdoObjects(delegate(IbaUnitTestEntities iba)
            {
                setupObject = SiteVisit_ado.CreateSiteVisit_ado(TestHelper.TestGuid1, true, TestHelper.TestGuid2,
                                                                DateTime.Now, DateTime.Now.AddHours(2), TestHelper.TestGuid3);
                setupObject.ObserverId = TestHelper.TestGuid4;
                setupObject.RecorderId = TestHelper.TestGuid3;
                setupObject.Comments   = "asdf asdfasdf";
                iba.AddToSiteVisit_ado1(setupObject);
            });
            List <SiteVisit_ado> extraList = DbTestHelper.LoadExtraneousSiteVisits();

            // Setup object to be saved. Change everything except the Id.
            SiteVisit toSave = new SiteVisit()
            {
                Id                  = setupObject.EventId,
                EndTimeStamp        = setupObject.EndTime.AddHours(1),
                IsDataEntryComplete = false,
                LocationId          = TestHelper.TestGuid4,
                ObserverId          = TestHelper.TestGuid3,
                RecorderId          = TestHelper.TestGuid2,
                StartTimeStamp      = setupObject.StartTime.AddHours(0.5),
                Comments            = "asdf asdfa sdf asdfasdfasdf"
            };

            // Execute the test
            SiteVisitMapper.Update(toSave);

            // Validate results
            using (IbaUnitTestEntities iba = new IbaUnitTestEntities())
            {
                var SiteVisitQuery = from SiteVisits in iba.SiteVisit_ado1 select SiteVisits;
                Assert.IsNotNull(SiteVisitQuery, "Query result is null");
                Assert.AreEqual(extraList.Count() + 1, SiteVisitQuery.Count(), "Wrong number of results in query");
                SiteVisit_ado adoSiteVisit = SiteVisitQuery.First(x => x.EventId == TestHelper.TestGuid1);
                validateObjectEquality(toSave, adoSiteVisit);

                validateExtraSiteVisitAdos(extraList, SiteVisitQuery);
            }
        }
Example #28
0
        public void t_PointCountLess50_Select_All()
        {
            // Backdoor setup
            Guid pointSurveyId = TestHelper.TestGuid3;

            DbTestHelper.LoadSinglePointSurvey(pointSurveyId, TestHelper.TestGuid2, TestHelper.TestGuid1, DateTime.Now, DateTime.Now.AddHours(1));
            List <Observation_ado> list = DbTestHelper.LoadExtraneousObservations(pointSurveyId); List <Observation_ado> PointCountLess50AdoList = extraPointCountLess50s(list);

            // Exercise the test
            List <PointCountWithin50> PointCountLess50List = ObservationMapper.SelectAll <PointCountWithin50>();

            // Validate results
            Assert.AreEqual(PointCountLess50AdoList.Count(), PointCountLess50List.Count, "Wrong number of objects in the result list");
            foreach (Observation_ado ado in PointCountLess50AdoList)
            {
                // just check to make sure the object is there; leave specific value check for the Select_ByGuid test
                Assert.IsTrue(PointCountLess50List.Exists(x => x.Id.Equals(ado.ObservationId)), "Observation " + ado.ObservationId.ToString() + " is not in the results");
            }
        }
        public void t_Species_Select()
        {
            Species_ado setupObject = null;

            // backdoor data setup
            DbTestHelper.LoadAdoObjects(delegate(IbaUnitTestEntities iba)
            {
                setupObject                = Species_ado.CreateSpecies_ado(TestHelper.TestGuid1, "a1", 1, true);
                setupObject.CommonName     = "asdf@adfasd";
                setupObject.ScientificName = "(651) 646-8007";
                iba.AddToSpecies_ado(setupObject);
            });
            List <Species_ado> extraList = DbTestHelper.LoadExtraneousSpecies();

            // Exercise the test
            Species testObject = SpeciesMapper.Select(setupObject.SpeciesId);

            validateObjectEquality(testObject, setupObject);
        }
        private void setupOakwood()
        {
            Location_ado site  = Location_ado.CreateLocation_ado(TestHelper.TestGuid1, OAKWOOD, LookupConstants.LocationTypeSite);
            Location_ado point = Location_ado.CreateLocation_ado(TestHelper.TestGuid2, "Point", LookupConstants.LocationTypePoint);

            point.ParentLocationId = site.LocationId;
            SiteVisit_ado   visit  = DbTestHelper.LoadSingleSiteVisit(TestHelper.TestGuid1, site.LocationId, DateTime.Now.AddHours(-7));
            PointSurvey_ado survey = PointSurvey_ado.CreatePointSurvey_ado(TestHelper.TestGuid2, point.LocationId, DateTime.Now.AddHours(-7), DateTime.Now.AddHours(-6));

            survey.SiteVisitId = visit.EventId;
            DbTestHelper.LoadAdoObjects((IbaUnitTestEntities iba) =>
            {
                iba.AddToPointSurvey_ado1(survey);
                iba.AddToLocation_ado(site);
                iba.AddToLocation_ado(point);
                iba.SaveChanges();
            });

            List <Observation_ado> obsList = new List <Observation_ado>();

            addABunchOfObservations(obsList, 35, List[0].SpeciesId, survey.EventId);
            addABunchOfObservations(obsList, 26, List[1].SpeciesId, survey.EventId);
            addABunchOfObservations(obsList, 21, List[2].SpeciesId, survey.EventId);
            addABunchOfObservations(obsList, 16, List[3].SpeciesId, survey.EventId);
            addABunchOfObservations(obsList, 11, List[4].SpeciesId, survey.EventId);
            addABunchOfObservations(obsList, 6, List[5].SpeciesId, survey.EventId);
            addABunchOfObservations(obsList, 5, List[6].SpeciesId, survey.EventId);
            addABunchOfObservations(obsList, 3, List[7].SpeciesId, survey.EventId);
            addABunchOfObservations(obsList, 3, List[8].SpeciesId, survey.EventId);
            addABunchOfObservations(obsList, 3, List[9].SpeciesId, survey.EventId);
            addABunchOfObservations(obsList, 3, List[10].SpeciesId, survey.EventId);
            addABunchOfObservations(obsList, 3, List[11].SpeciesId, survey.EventId);
            addABunchOfObservations(obsList, 2, List[12].SpeciesId, survey.EventId);
            addABunchOfObservations(obsList, 2, List[13].SpeciesId, survey.EventId);
            addABunchOfObservations(obsList, 2, List[14].SpeciesId, survey.EventId);
            addABunchOfObservations(obsList, 1, List[15].SpeciesId, survey.EventId);
            addABunchOfObservations(obsList, 1, List[16].SpeciesId, survey.EventId);
            addABunchOfObservations(obsList, 1, List[17].SpeciesId, survey.EventId);
            addABunchOfObservations(obsList, 1, List[18].SpeciesId, survey.EventId);
            addABunchOfObservations(obsList, 25, List[19].SpeciesId, survey.EventId);
            loadObservations(obsList);
        }