public void GeometryPolygonsIntersectionAndDisjointAnother() { var query = @" select value g.c32_geometry from ArubaContext.AllTypes as g where Edm.SpatialDisjoint( GeometryFromText(""POLYGON ((13 22, 12 22, 12 23, 13 22))"", 32768), Edm.SpatialIntersection( g.c32_geometry, GeometryFromText(""MULTILINESTRING ((12 22, 15 22, 15 25, 12 25, 12 22), (13 23, 14 23, 14 24, 13 24, 13 23))"", 32768) ) )" ; var polygon = DbGeometry.PolygonFromText("POLYGON ((13 22, 12 22, 12 23, 13 22))", 32768); var multiString = DbGeometry.MultiLineFromText( "MULTILINESTRING ((12 22, 15 22, 15 25, 12 25, 12 22), (13 23, 14 23, 14 24, 13 24, 13 23))", 32768); // verifying that the results that are returned, when intersected with the given lineStrings are disjoint from the // specified polygon as stated in the query using (var db = new ArubaContext()) using (var reader = QueryTestHelpers.EntityCommandSetup(db, query, "STDisjoint")) { VerifyValueCondition(reader, o => { var g = (DbGeometry)o; return(DbSpatialServices.Default.Disjoint(polygon, DbSpatialServices.Default.Intersection(g, multiString))); }); } }
public ActionResult GetBoundsResult(string bbox) { var boundingbox = DbGeometry.PolygonFromText(bbox, 4326); var boundedStands = _db.zimstands.Where(s => s.geom.Intersects(boundingbox).Equals(true)); var polygonFeature = new List <Feature>(); if (boundedStands != null) { foreach (var results in boundedStands) { if (results.geom != null) { SqlGeometry geomCol = SqlGeometry.Parse(new SqlString(results.geom.AsText())).MakeValid(); var geojsongeom = geomCol.ToGeoJSONGeometry(); var properties = new Dictionary <string, object> { { "standid", results.standid }, { "standtype", results.townshipid } }; var feature = new Feature(geojsongeom, properties); polygonFeature.Add(feature); } } } return(Json(polygonFeature, JsonRequestBehavior.AllowGet)); }
public void GeometryPointsIntersectWithBufferOfPolygon() { var query = @" select value g.c32_geometry from ArubaContext.AllTypes as g where Edm.SpatialIntersects( GeometryFromText(""POLYGON ((11 20, 10 20, 10 21, 11 20))"", 32768), Edm.SpatialBuffer(g.c32_geometry, 5) )" ; var polygon = DbGeometry.PolygonFromText("POLYGON ((11 20, 10 20, 10 21, 11 20))", 32768); // verifying that the results returned intersect the buffer (5) using (var db = new ArubaContext()) using (var reader = QueryTestHelpers.EntityCommandSetup(db, query, "STIntersects")) { VerifyValueCondition(reader, o => { var g = (DbGeometry)o; return(DbSpatialServices.Default.Intersects(polygon, DbSpatialServices.Default.Buffer(g, 5))); }); } }
public static DbGeometry FromWkt(string type, string wkt, int systemid) { type = type.ToUpper(); switch (type) { case "POINT": return(DbGeometry.PointFromText(wkt, systemid)); case "POLYGON": return(DbGeometry.PolygonFromText(wkt, systemid)); case "LINE": return(DbGeometry.LineFromText(wkt, systemid)); case "MULTIPOINT": return(DbGeometry.MultiPointFromText(wkt, systemid)); case "MULTIPOLYGON": return(DbGeometry.MultiPolygonFromText(wkt, systemid)); case "MULTILINE": return(DbGeometry.MultiLineFromText(wkt, systemid)); default: return(null); } }
public ActionResult GetBoundedProperties() { //TODO: Bounds:29.804491996765133 -19.46889855721073,29.829189777374268 -19.46889855721073,29.829189777374268 -19.449900744498997, 29.804491996765133 -19.449900744498997, 29.804491996765133 -19.46889855721073 var boundingbox = DbGeometry.PolygonFromText("POLYGON((29.749603271484375 -19.436323734711568,29.735355377197266 -19.45153962115835,29.762306213378906 -19.48390909855208,29.78427886962891 -19.469181787843308,29.749603271484375 -19.436323734711568))", 4326); var boundedStands = _db.zimstands.Where(s => s.geom.Intersects(boundingbox).Equals(true)); var polygonFeature = new List <Feature>(); if (boundedStands != null) { foreach (var results in boundedStands) { if (results.geom != null) { SqlGeometry geomCol = SqlGeometry.Parse(new SqlString(results.geom.AsText())).MakeValid(); var geojsongeom = geomCol.ToGeoJSONGeometry(); var properties = new Dictionary <string, object> { { "standid", results.standid }, { "standtype", results.townshipid } }; var feature = new Feature(geojsongeom, properties); polygonFeature.Add(feature); } } } return(Json(polygonFeature, JsonRequestBehavior.AllowGet)); }
public void Test_GetDeliveryPointsCrossingOperationalObject() { var coordinates = "POLYGON ((505058.162109375 100281.69677734375, 518986.84887695312 100281.69677734375, 518986.84887695312 114158.546875, 505058.162109375 114158.546875, 505058.162109375 100281.69677734375))"; var unitBoundary = DbGeometry.PolygonFromText("POLYGON ((505058.162109375 100281.69677734375, 518986.84887695312 100281.69677734375, 518986.84887695312 114158.546875, 505058.162109375 114158.546875, 505058.162109375 100281.69677734375))", 27700); var result = testCandidate.GetDeliveryPointsCrossingOperationalObject(coordinates, unitBoundary); Assert.IsNotNull(result); }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { JObject location = JObject.Load(reader); JToken token = location["Geometry"]["WellKnownText"]; string value = token.ToString(); DbGeometry converted = DbGeometry.PolygonFromText(value, 2193); return(converted); }
public ActionResult GetBoundsFinance(string bbox) { var boundingbox = DbGeometry.PolygonFromText(bbox, 4326); var boundedStands = _db.vwAccountsMkobaMatches.Where(s => s.geom.Intersects(boundingbox).Equals(true)); var polygonFeature = new List <Feature>(); if (boundedStands != null) { foreach (var results in boundedStands) { if (results.geom != null) { SqlGeometry geomCol = SqlGeometry.Parse(new SqlString(results.geom.AsText())).MakeValid(); var geojsongeom = geomCol.ToGeoJSONGeometry(); var properties = new Dictionary <string, object> { { "account", results.Account }, { "currentpayment", results.CurrentPayment }, { "totalamntdue", results.TOTAL }, { "dept", results.Dept }, { "conscode", results.Cons_Code }, { "active", results.Active }, { "name", results.Name }, { "township", results.TOWNSHIPID }, { "standid", results.STANDID }, { "meternumber", results.METER_NUMBER }, { "reading", results.READING }, { "condition", results.CONDITION }, { "residents", results.RESIDENTS }, { "watersource", results.WATER_SOURCE }, { "illegalconnection", results.ILLEGAL_CONNECTION_ }, { "burstpipe", results.BURST_PIPES__ }, { "toiletseats", results.TOILET_SEATS_ } }; var feature = new Feature(geojsongeom, properties); polygonFeature.Add(feature); } } } return(Json(polygonFeature, JsonRequestBehavior.AllowGet)); }
private DbGeometry CreateGroupBoundary(List <List <double[]> > coordinates) { string coordinate = string.Empty; foreach (var coord in coordinates) { foreach (var co in coord) { if (string.IsNullOrEmpty(coordinate)) { coordinate += co[0].ToString() + " " + co[1].ToString(); } else { coordinate += ", " + co[0].ToString() + " " + co[1].ToString(); } } } return(DbGeometry.PolygonFromText(string.Format(DeliveryPointGroupConstants.PolygonWellKnownText, coordinate), DeliveryPointGroupConstants.BNGCOORDINATESYSTEM)); }
protected override void OnSetup() { SqlServerTypes.Utilities.LoadNativeAssemblies(AppDomain.CurrentDomain.BaseDirectory); loggingHelperMock = CreateMock <ILoggingHelper>(); unit1Guid = Guid.NewGuid(); unit2Guid = Guid.NewGuid(); unit3Guid = Guid.NewGuid(); user1Id = System.Guid.NewGuid(); user2Id = System.Guid.NewGuid(); var unitBoundary = DbGeometry.PolygonFromText("POLYGON ((505058.162109375 100281.69677734375, 518986.84887695312 100281.69677734375, 518986.84887695312 114158.546875, 505058.162109375 114158.546875, 505058.162109375 100281.69677734375))", 27700); accessLinkLine = DbGeometry.LineFromText("LINESTRING (488938 197021, 488929.9088937093 197036.37310195228)", 27700); var streetNames = new List <StreetName>() { new StreetName() { ID = Guid.NewGuid(), StreetType = "t1", Descriptor = "d1", NationalRoadCode = "Testroad1", DesignatedName = "XYZ1", Geometry = unitBoundary }, new StreetName() { ID = Guid.NewGuid(), StreetType = "t1", Descriptor = "d1", NationalRoadCode = "Testroad2", DesignatedName = "XYZ2", Geometry = unitBoundary }, new StreetName() { ID = Guid.NewGuid(), StreetType = "t1", Descriptor = "d1", NationalRoadCode = "Testroad3", DesignatedName = "XYZ3", Geometry = unitBoundary }, new StreetName() { ID = Guid.NewGuid(), StreetType = "t1", Descriptor = "d1", NationalRoadCode = "Testroad4", DesignatedName = "XYZ4", Geometry = unitBoundary }, new StreetName() { ID = Guid.NewGuid(), StreetType = "t1", Descriptor = "d1", NationalRoadCode = "Testroad5", DesignatedName = "XYZ5", Geometry = unitBoundary }, new StreetName() { ID = Guid.NewGuid(), StreetType = "t1", Descriptor = "d1", NationalRoadCode = "Testroad6", DesignatedName = "XYZ6", Geometry = unitBoundary }, new StreetName() { ID = Guid.NewGuid(), StreetType = "t1", Descriptor = "d1", NationalRoadCode = "Testroad7", DesignatedName = "XYZ7", Geometry = unitBoundary } }; var unitLocation = new List <UnitLocation>() { new UnitLocation() { UnitName = "unit1", ExternalId = "extunit1", ID = unit1Guid, UnitBoundryPolygon = unitBoundary, UserRoleUnits = new List <UserRoleUnit> { new UserRoleUnit { Unit_GUID = unit1Guid, User_GUID = user1Id } } }, new UnitLocation() { UnitName = "unit2", ExternalId = "extunit2", ID = unit2Guid, UnitBoundryPolygon = unitBoundary, UserRoleUnits = new List <UserRoleUnit> { new UserRoleUnit { Unit_GUID = unit2Guid, User_GUID = user1Id } } }, new UnitLocation() { UnitName = "unit3", ExternalId = "extunit2", ID = unit3Guid, UnitBoundryPolygon = unitBoundary, UserRoleUnits = new List <UserRoleUnit> { new UserRoleUnit { Unit_GUID = unit3Guid, User_GUID = user2Id } } } }; var networkLink = new List <NetworkLink>() { new NetworkLink() { LinkGeometry = accessLinkLine } }; var mockAsynEnumerable = new DbAsyncEnumerable <StreetName>(streetNames); var mockStreetNetworkDataService = MockDbSet(streetNames); mockStreetNetworkDataService.As <IQueryable>().Setup(mock => mock.Provider).Returns(mockAsynEnumerable.AsQueryable().Provider); mockStreetNetworkDataService.As <IQueryable>().Setup(mock => mock.Expression).Returns(mockAsynEnumerable.AsQueryable().Expression); mockStreetNetworkDataService.As <IQueryable>().Setup(mock => mock.ElementType).Returns(mockAsynEnumerable.AsQueryable().ElementType); mockStreetNetworkDataService.As <IDbAsyncEnumerable>().Setup(mock => mock.GetAsyncEnumerator()).Returns(((IDbAsyncEnumerable <StreetName>)mockAsynEnumerable).GetAsyncEnumerator()); mockRMDBContext = CreateMock <RMDBContext>(); mockRMDBContext.Setup(x => x.Set <StreetName>()).Returns(mockStreetNetworkDataService.Object); mockRMDBContext.Setup(x => x.StreetNames).Returns(mockStreetNetworkDataService.Object); var mockAsynEnumerable2 = new DbAsyncEnumerable <UnitLocation>(unitLocation); var mockStreetNetworkDataService2 = MockDbSet(unitLocation); mockStreetNetworkDataService2.As <IQueryable>().Setup(mock => mock.Provider).Returns(mockAsynEnumerable2.AsQueryable().Provider); mockStreetNetworkDataService2.As <IQueryable>().Setup(mock => mock.Expression).Returns(mockAsynEnumerable2.AsQueryable().Expression); mockStreetNetworkDataService2.As <IQueryable>().Setup(mock => mock.ElementType).Returns(mockAsynEnumerable2.AsQueryable().ElementType); mockStreetNetworkDataService2.As <IDbAsyncEnumerable>().Setup(mock => mock.GetAsyncEnumerator()).Returns(((IDbAsyncEnumerable <UnitLocation>)mockAsynEnumerable2).GetAsyncEnumerator()); mockRMDBContext.Setup(x => x.Set <UnitLocation>()).Returns(mockStreetNetworkDataService2.Object); mockRMDBContext.Setup(x => x.UnitLocations).Returns(mockStreetNetworkDataService2.Object); var mockAsynEnumerable3 = new DbAsyncEnumerable <NetworkLink>(networkLink); var mockNetworkLink = MockDbSet(networkLink); mockNetworkLink.As <IQueryable>().Setup(mock => mock.Provider).Returns(mockAsynEnumerable3.AsQueryable().Provider); mockNetworkLink.As <IQueryable>().Setup(mock => mock.Expression).Returns(mockAsynEnumerable3.AsQueryable().Expression); mockNetworkLink.As <IQueryable>().Setup(mock => mock.ElementType).Returns(mockAsynEnumerable3.AsQueryable().ElementType); mockNetworkLink.As <IDbAsyncEnumerable>().Setup(mock => mock.GetAsyncEnumerator()).Returns(((IDbAsyncEnumerable <NetworkLink>)mockAsynEnumerable3).GetAsyncEnumerator()); mockRMDBContext.Setup(x => x.Set <NetworkLink>()).Returns(mockNetworkLink.Object); mockRMDBContext.Setup(x => x.NetworkLinks).Returns(mockNetworkLink.Object); mockRMDBContext.Setup(x => x.NetworkLinks.AsNoTracking()).Returns(mockNetworkLink.Object); mockDatabaseFactory = CreateMock <IDatabaseFactory <RMDBContext> >(); mockDatabaseFactory.Setup(x => x.Get()).Returns(mockRMDBContext.Object); var rmTraceManagerMock = new Mock <IRMTraceManager>(); rmTraceManagerMock.Setup(x => x.StartTrace(It.IsAny <string>(), It.IsAny <Guid>())); loggingHelperMock.Setup(x => x.RMTraceManager).Returns(rmTraceManagerMock.Object); testCandidate = new StreetNetworkDataService(mockDatabaseFactory.Object, loggingHelperMock.Object); }
private static Dictionary <MethodInfo, string> GetRenamedMethodFunctions() { var result = new Dictionary <MethodInfo, string>(); result.Add(GetStaticMethod(() => DbGeography.FromText(default(string))), "GeographyFromText"); result.Add(GetStaticMethod(() => DbGeography.FromText(default(string), default(int))), "GeographyFromText"); result.Add(GetStaticMethod(() => DbGeography.PointFromText(default(string), default(int))), "GeographyPointFromText"); result.Add(GetStaticMethod(() => DbGeography.LineFromText(default(string), default(int))), "GeographyLineFromText"); result.Add( GetStaticMethod(() => DbGeography.PolygonFromText(default(string), default(int))), "GeographyPolygonFromText"); result.Add( GetStaticMethod(() => DbGeography.MultiPointFromText(default(string), default(int))), "GeographyMultiPointFromText"); result.Add( GetStaticMethod(() => DbGeography.MultiLineFromText(default(string), default(int))), "GeographyMultiLineFromText"); result.Add( GetStaticMethod(() => DbGeography.MultiPolygonFromText(default(string), default(int))), "GeographyMultiPolygonFromText"); result.Add( GetStaticMethod(() => DbGeography.GeographyCollectionFromText(default(string), default(int))), "GeographyCollectionFromText"); result.Add(GetStaticMethod(() => DbGeography.FromBinary(default(byte[]), default(int))), "GeographyFromBinary"); result.Add(GetStaticMethod(() => DbGeography.FromBinary(default(byte[]))), "GeographyFromBinary"); result.Add( GetStaticMethod(() => DbGeography.PointFromBinary(default(byte[]), default(int))), "GeographyPointFromBinary"); result.Add(GetStaticMethod(() => DbGeography.LineFromBinary(default(byte[]), default(int))), "GeographyLineFromBinary"); result.Add( GetStaticMethod(() => DbGeography.PolygonFromBinary(default(byte[]), default(int))), "GeographyPolygonFromBinary"); result.Add( GetStaticMethod(() => DbGeography.MultiPointFromBinary(default(byte[]), default(int))), "GeographyMultiPointFromBinary"); result.Add( GetStaticMethod(() => DbGeography.MultiLineFromBinary(default(byte[]), default(int))), "GeographyMultiLineFromBinary"); result.Add( GetStaticMethod(() => DbGeography.MultiPolygonFromBinary(default(byte[]), default(int))), "GeographyMultiPolygonFromBinary"); result.Add( GetStaticMethod(() => DbGeography.GeographyCollectionFromBinary(default(byte[]), default(int))), "GeographyCollectionFromBinary"); result.Add(GetStaticMethod(() => DbGeography.FromGml(default(string))), "GeographyFromGml"); result.Add(GetStaticMethod(() => DbGeography.FromGml(default(string), default(int))), "GeographyFromGml"); result.Add(GetInstanceMethod((DbGeography geo) => geo.AsBinary()), "AsBinary"); result.Add(GetInstanceMethod((DbGeography geo) => geo.AsGml()), "AsGml"); result.Add(GetInstanceMethod((DbGeography geo) => geo.AsText()), "AsText"); result.Add(GetInstanceMethod((DbGeography geo) => geo.SpatialEquals(default(DbGeography))), "SpatialEquals"); result.Add(GetInstanceMethod((DbGeography geo) => geo.Disjoint(default(DbGeography))), "SpatialDisjoint"); result.Add(GetInstanceMethod((DbGeography geo) => geo.Intersects(default(DbGeography))), "SpatialIntersects"); result.Add(GetInstanceMethod((DbGeography geo) => geo.Buffer(default(double))), "SpatialBuffer"); result.Add(GetInstanceMethod((DbGeography geo) => geo.Distance(default(DbGeography))), "Distance"); result.Add(GetInstanceMethod((DbGeography geo) => geo.Intersection(default(DbGeography))), "SpatialIntersection"); result.Add(GetInstanceMethod((DbGeography geo) => geo.Union(default(DbGeography))), "SpatialUnion"); result.Add(GetInstanceMethod((DbGeography geo) => geo.Difference(default(DbGeography))), "SpatialDifference"); result.Add( GetInstanceMethod((DbGeography geo) => geo.SymmetricDifference(default(DbGeography))), "SpatialSymmetricDifference"); result.Add(GetInstanceMethod((DbGeography geo) => geo.ElementAt(default(int))), "SpatialElementAt"); result.Add(GetInstanceMethod((DbGeography geo) => geo.PointAt(default(int))), "PointAt"); result.Add(GetStaticMethod(() => DbGeometry.FromText(default(string))), "GeometryFromText"); result.Add(GetStaticMethod(() => DbGeometry.FromText(default(string), default(int))), "GeometryFromText"); result.Add(GetStaticMethod(() => DbGeometry.PointFromText(default(string), default(int))), "GeometryPointFromText"); result.Add(GetStaticMethod(() => DbGeometry.LineFromText(default(string), default(int))), "GeometryLineFromText"); result.Add(GetStaticMethod(() => DbGeometry.PolygonFromText(default(string), default(int))), "GeometryPolygonFromText"); result.Add( GetStaticMethod(() => DbGeometry.MultiPointFromText(default(string), default(int))), "GeometryMultiPointFromText"); result.Add( GetStaticMethod(() => DbGeometry.MultiLineFromText(default(string), default(int))), "GeometryMultiLineFromText"); result.Add( GetStaticMethod(() => DbGeometry.MultiPolygonFromText(default(string), default(int))), "GeometryMultiPolygonFromText"); result.Add( GetStaticMethod(() => DbGeometry.GeometryCollectionFromText(default(string), default(int))), "GeometryCollectionFromText"); result.Add(GetStaticMethod(() => DbGeometry.FromBinary(default(byte[]))), "GeometryFromBinary"); result.Add(GetStaticMethod(() => DbGeometry.FromBinary(default(byte[]), default(int))), "GeometryFromBinary"); result.Add(GetStaticMethod(() => DbGeometry.PointFromBinary(default(byte[]), default(int))), "GeometryPointFromBinary"); result.Add(GetStaticMethod(() => DbGeometry.LineFromBinary(default(byte[]), default(int))), "GeometryLineFromBinary"); result.Add( GetStaticMethod(() => DbGeometry.PolygonFromBinary(default(byte[]), default(int))), "GeometryPolygonFromBinary"); result.Add( GetStaticMethod(() => DbGeometry.MultiPointFromBinary(default(byte[]), default(int))), "GeometryMultiPointFromBinary"); result.Add( GetStaticMethod(() => DbGeometry.MultiLineFromBinary(default(byte[]), default(int))), "GeometryMultiLineFromBinary"); result.Add( GetStaticMethod(() => DbGeometry.MultiPolygonFromBinary(default(byte[]), default(int))), "GeometryMultiPolygonFromBinary"); result.Add( GetStaticMethod(() => DbGeometry.GeometryCollectionFromBinary(default(byte[]), default(int))), "GeometryCollectionFromBinary"); result.Add(GetStaticMethod(() => DbGeometry.FromGml(default(string))), "GeometryFromGml"); result.Add(GetStaticMethod(() => DbGeometry.FromGml(default(string), default(int))), "GeometryFromGml"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.AsBinary()), "AsBinary"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.AsGml()), "AsGml"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.AsText()), "AsText"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.SpatialEquals(default(DbGeometry))), "SpatialEquals"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.Disjoint(default(DbGeometry))), "SpatialDisjoint"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.Intersects(default(DbGeometry))), "SpatialIntersects"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.Touches(default(DbGeometry))), "SpatialTouches"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.Crosses(default(DbGeometry))), "SpatialCrosses"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.Within(default(DbGeometry))), "SpatialWithin"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.Contains(default(DbGeometry))), "SpatialContains"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.Overlaps(default(DbGeometry))), "SpatialOverlaps"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.Relate(default(DbGeometry), default(string))), "SpatialRelate"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.Buffer(default(double))), "SpatialBuffer"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.Distance(default(DbGeometry))), "Distance"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.Intersection(default(DbGeometry))), "SpatialIntersection"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.Union(default(DbGeometry))), "SpatialUnion"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.Difference(default(DbGeometry))), "SpatialDifference"); result.Add( GetInstanceMethod((DbGeometry geo) => geo.SymmetricDifference(default(DbGeometry))), "SpatialSymmetricDifference"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.ElementAt(default(int))), "SpatialElementAt"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.PointAt(default(int))), "PointAt"); result.Add(GetInstanceMethod((DbGeometry geo) => geo.InteriorRingAt(default(int))), "InteriorRingAt"); return(result); }
protected override void OnSetup() { SqlServerTypes.Utilities.LoadNativeAssemblies(AppDomain.CurrentDomain.BaseDirectory); loggingHelperMock = CreateMock <ILoggingHelper>(); unit1Guid = Guid.NewGuid(); unit2Guid = Guid.NewGuid(); unit3Guid = Guid.NewGuid(); user1Id = Guid.NewGuid(); user2Id = Guid.NewGuid(); sectorGuid = Guid.NewGuid(); districtGuid = Guid.NewGuid(); areaGuid = Guid.NewGuid(); postcodeGuid2 = Guid.NewGuid(); postcodeGuid1 = Guid.NewGuid(); var unitBoundary = DbGeometry.PolygonFromText("POLYGON ((505058.162109375 100281.69677734375, 518986.84887695312 100281.69677734375, 518986.84887695312 114158.546875, 505058.162109375 114158.546875, 505058.162109375 100281.69677734375))", 27700); var userRoleUnits = new List <UserRoleUnit>() { new UserRoleUnit { Unit_GUID = unit1Guid, User_GUID = user1Id }, new UserRoleUnit { Unit_GUID = unit2Guid, User_GUID = user1Id }, new UserRoleUnit { Unit_GUID = unit3Guid, User_GUID = user2Id } }; var unitLocation = new List <UnitLocation>() { new UnitLocation() { UnitName = "unit1", UnitAddressUDPRN = 1, ExternalId = "extunit1", ID = unit1Guid, UnitBoundryPolygon = unitBoundary }, new UnitLocation() { UnitName = "unit2", UnitAddressUDPRN = 2, ExternalId = "extunit2", ID = unit2Guid, UnitBoundryPolygon = unitBoundary }, new UnitLocation() { UnitName = "unit3", UnitAddressUDPRN = 3, ExternalId = "extunit3", ID = unit3Guid, UnitBoundryPolygon = unitBoundary } }; var mockDeliveryUnitLocationDbSet = MockDbSet(unitLocation); mockRMDBContext = CreateMock <RMDBContext>(); mockRMDBContext.Setup(x => x.Set <UnitLocation>()).Returns(mockDeliveryUnitLocationDbSet.Object); mockRMDBContext.Setup(x => x.UnitLocations).Returns(mockDeliveryUnitLocationDbSet.Object); mockRMDBContext.Setup(x => x.UnitLocations.AsNoTracking()).Returns(mockDeliveryUnitLocationDbSet.Object); mockDeliveryUnitLocationDbSet.Setup(x => x.Include(It.IsAny <string>())).Returns(mockDeliveryUnitLocationDbSet.Object); var postalAddresses = new List <PostalAddress>() { new PostalAddress() { UDPRN = 1, PostCodeGUID = postcodeGuid1 }, new PostalAddress() { UDPRN = 2, PostCodeGUID = postcodeGuid2 }, new PostalAddress() { UDPRN = 3, PostCodeGUID = postcodeGuid2 } }; var mockPostalAddressesDbSet = MockDbSet(postalAddresses); mockRMDBContext.Setup(x => x.Set <PostalAddress>()).Returns(mockPostalAddressesDbSet.Object); mockRMDBContext.Setup(x => x.PostalAddresses).Returns(mockPostalAddressesDbSet.Object); mockRMDBContext.Setup(x => x.PostalAddresses.AsNoTracking()).Returns(mockPostalAddressesDbSet.Object); var postcodes = new List <Postcode>() { new Postcode() { ID = postcodeGuid1, SectorGUID = sectorGuid }, new Postcode() { ID = postcodeGuid2, SectorGUID = sectorGuid } }; var mockPostCodesDbSet = MockDbSet(postcodes); mockRMDBContext.Setup(x => x.Set <Postcode>()).Returns(mockPostCodesDbSet.Object); mockRMDBContext.Setup(x => x.Postcodes).Returns(mockPostCodesDbSet.Object); mockRMDBContext.Setup(x => x.Postcodes.AsNoTracking()).Returns(mockPostCodesDbSet.Object); var postcodeSectors = new List <PostcodeSector>() { new PostcodeSector() { ID = sectorGuid, DistrictGUID = districtGuid } }; var mockPostcodeSectorDbSet = MockDbSet(postcodeSectors); mockRMDBContext.Setup(x => x.Set <PostcodeSector>()).Returns(mockPostcodeSectorDbSet.Object); mockRMDBContext.Setup(x => x.PostcodeSectors).Returns(mockPostcodeSectorDbSet.Object); mockRMDBContext.Setup(x => x.PostcodeSectors.AsNoTracking()).Returns(mockPostcodeSectorDbSet.Object); var postcodeDistricts = new List <PostcodeDistrict>() { new PostcodeDistrict() { ID = districtGuid, AreaGUID = areaGuid } }; var mockPostcodeDistrictDbSet = MockDbSet(postcodeDistricts); mockRMDBContext.Setup(x => x.Set <PostcodeDistrict>()).Returns(mockPostcodeDistrictDbSet.Object); mockRMDBContext.Setup(x => x.PostcodeDistricts).Returns(mockPostcodeDistrictDbSet.Object); mockRMDBContext.Setup(x => x.PostcodeDistricts.AsNoTracking()).Returns(mockPostcodeDistrictDbSet.Object); var postcodeAreas = new List <PostcodeArea>() { new PostcodeArea() { ID = areaGuid, Area = "Test Area" } }; var mockPostcodeAreasDbSet = MockDbSet(postcodeAreas); mockRMDBContext.Setup(x => x.Set <PostcodeArea>()).Returns(mockPostcodeAreasDbSet.Object); mockRMDBContext.Setup(x => x.PostcodeAreas).Returns(mockPostcodeAreasDbSet.Object); mockRMDBContext.Setup(x => x.PostcodeAreas.AsNoTracking()).Returns(mockPostcodeAreasDbSet.Object); var mockUserRoleUnitDbSet = MockDbSet(userRoleUnits); mockRMDBContext.Setup(x => x.Set <UserRoleUnit>()).Returns(mockUserRoleUnitDbSet.Object); mockRMDBContext.Setup(x => x.UserRoleUnits).Returns(mockUserRoleUnitDbSet.Object); mockRMDBContext.Setup(x => x.UserRoleUnits.AsNoTracking()).Returns(mockUserRoleUnitDbSet.Object); mockDatabaseFactory = CreateMock <IDatabaseFactory <RMDBContext> >(); mockDatabaseFactory.Setup(x => x.Get()).Returns(mockRMDBContext.Object); var rmTraceManagerMock = new Mock <IRMTraceManager>(); rmTraceManagerMock.Setup(x => x.StartTrace(It.IsAny <string>(), It.IsAny <Guid>())); loggingHelperMock.Setup(x => x.RMTraceManager).Returns(rmTraceManagerMock.Object); testCandidate = new UnitLocationDataService(mockDatabaseFactory.Object, loggingHelperMock.Object); }
/// <summary> /// Data and Methods setup required to run test methods /// </summary> protected override void OnSetup() { // Data setup unit1Guid = new Guid("8534AA41-391F-4579-A18D-D7EDF5B5F918"); currentUserUnitType = "Delivery Office"; mockIConfigurationHelper = CreateMock <IConfigurationHelper>(); SqlServerTypes.Utilities.LoadNativeAssemblies(AppDomain.CurrentDomain.BaseDirectory); var unitBoundary = DbGeometry.PolygonFromText("POLYGON ((505058.162109375 100281.69677734375, 518986.84887695312 100281.69677734375, 518986.84887695312 114158.546875, 505058.162109375 114158.546875, 505058.162109375 100281.69677734375))", 27700); accessLinkLine = DbGeometry.LineFromText("LINESTRING (488938 197021, 488929.9088937093 197036.37310195228)", 27700); point = DbGeometry.PointFromText("POINT (488938 197021)", 27700); var streetNamesList = new List <StreetName>() { new StreetName() { ID = new Guid("8134AA41-391F-4579-A18D-D7EDF5B5F918"), StreetType = "t1", Descriptor = "d1", NationalRoadCode = "Testroad1", DesignatedName = "XYZ1", Geometry = unitBoundary }, new StreetName() { ID = new Guid("8234AA41-391F-4579-A18D-D7EDF5B5F918"), StreetType = "t1", Descriptor = "d1", NationalRoadCode = "Testroad2", DesignatedName = "XYZ2", Geometry = unitBoundary }, new StreetName() { ID = new Guid("8334AA41-391F-4579-A18D-D7EDF5B5F918"), StreetType = "t1", Descriptor = "d1", NationalRoadCode = "Testroad3", DesignatedName = "XYZ3", Geometry = unitBoundary }, new StreetName() { ID = new Guid("8434AA41-391F-4579-A18D-D7EDF5B5F918"), StreetType = "t1", Descriptor = "d1", NationalRoadCode = "Testroad4", DesignatedName = "XYZ4", Geometry = unitBoundary }, new StreetName() { ID = new Guid("8534AA41-391F-4579-A18D-D7EDF5B5F918"), StreetType = "t1", Descriptor = "d1", NationalRoadCode = "Testroad5", DesignatedName = "XYZ5", Geometry = unitBoundary }, new StreetName() { ID = new Guid("8634AA41-391F-4579-A18D-D7EDF5B5F918"), StreetType = "t1", Descriptor = "d1", NationalRoadCode = "Testroad6", DesignatedName = "XYZ6", Geometry = unitBoundary }, new StreetName() { ID = new Guid("8734AA41-391F-4579-A18D-D7EDF5B5F918"), StreetType = "t1", Descriptor = "d1", NationalRoadCode = "Testroad7", DesignatedName = "XYZ7", Geometry = unitBoundary } }; var networkLinkList = new List <NetworkLink>() { new NetworkLink() { LinkGeometry = accessLinkLine, StreetNameGUID = new Guid("8134AA41-391F-4579-A18D-D7EDF5B5F918"), NetworkLinkTypeGUID = Guid.Empty, ID = new Guid("8134AA41-391F-4579-A18D-D7EDF5B5F911") } }; List <Location> locationList = new List <Location>() { new Location() { ID = unit1Guid, Shape = unitBoundary } }; referenceDataCategoryList = new List <ReferenceDataCategoryDTO>() { new ReferenceDataCategoryDTO() { CategoryName = ReferenceDataCategoryNames.NetworkLinkType, ReferenceDatas = new List <ReferenceDataDTO>() { new ReferenceDataDTO() { ReferenceDataValue = ReferenceDataValues.NetworkLinkPathLink } }, Id = new Guid("1534AA41-391F-4579-A18D-D7EDF5B5F918") }, new ReferenceDataCategoryDTO() { CategoryName = ReferenceDataCategoryNames.NetworkLinkType, ReferenceDatas = new List <ReferenceDataDTO>() { new ReferenceDataDTO() { ReferenceDataValue = ReferenceDataValues.NetworkLinkRoadLink } }, Id = new Guid("2534AA41-391F-4579-A18D-D7EDF5B5F918") }, new ReferenceDataCategoryDTO() { CategoryName = ReferenceDataCategoryNames.AccessLinkParameters, ReferenceDatas = new List <ReferenceDataDTO>() { new ReferenceDataDTO() { ReferenceDataName = ReferenceDataValues.AccessLinkDiffRoadMaxDistance, ReferenceDataValue = "5" } }, Id = new Guid("3534AA41-391F-4579-A18D-D7EDF5B5F918") } }; mockNetworkDBContext = CreateMock <NetworkDBContext>(); mockILoggingHelper = CreateMock <ILoggingHelper>(); // Setup for StreetName var mockAsynEnumerable = new DbAsyncEnumerable <StreetName>(streetNamesList); var mockStreetName = MockDbSet(streetNamesList); mockStreetName.As <IQueryable>().Setup(mock => mock.Provider).Returns(mockAsynEnumerable.AsQueryable().Provider); mockStreetName.As <IQueryable>().Setup(mock => mock.Expression).Returns(mockAsynEnumerable.AsQueryable().Expression); mockStreetName.As <IQueryable>().Setup(mock => mock.ElementType).Returns(mockAsynEnumerable.AsQueryable().ElementType); mockStreetName.As <IDbAsyncEnumerable>().Setup(mock => mock.GetAsyncEnumerator()).Returns(((IDbAsyncEnumerable <StreetName>)mockAsynEnumerable).GetAsyncEnumerator()); mockNetworkDBContext.Setup(x => x.Set <StreetName>()).Returns(mockStreetName.Object); mockNetworkDBContext.Setup(x => x.StreetNames).Returns(mockStreetName.Object); mockStreetName.Setup(x => x.AsNoTracking()).Returns(mockStreetName.Object); // Setup for Location var mockAsynEnumerable1 = new DbAsyncEnumerable <Location>(locationList); var mockLocation = MockDbSet(locationList); mockLocation.As <IQueryable>().Setup(mock => mock.Provider).Returns(mockAsynEnumerable1.AsQueryable().Provider); mockLocation.As <IQueryable>().Setup(mock => mock.Expression).Returns(mockAsynEnumerable1.AsQueryable().Expression); mockLocation.As <IQueryable>().Setup(mock => mock.ElementType).Returns(mockAsynEnumerable1.AsQueryable().ElementType); mockLocation.As <IDbAsyncEnumerable>().Setup(mock => mock.GetAsyncEnumerator()).Returns(((IDbAsyncEnumerable <Location>)mockAsynEnumerable1).GetAsyncEnumerator()); mockNetworkDBContext.Setup(x => x.Set <Location>()).Returns(mockLocation.Object); mockNetworkDBContext.Setup(x => x.Locations).Returns(mockLocation.Object); mockLocation.Setup(x => x.AsNoTracking()).Returns(mockLocation.Object); // Setup for NetworkLink var mockAsynEnumerable3 = new DbAsyncEnumerable <NetworkLink>(networkLinkList); var mockNetworkLink = MockDbSet(networkLinkList); mockNetworkLink.As <IQueryable>().Setup(mock => mock.Provider).Returns(mockAsynEnumerable3.AsQueryable().Provider); mockNetworkLink.As <IQueryable>().Setup(mock => mock.Expression).Returns(mockAsynEnumerable3.AsQueryable().Expression); mockNetworkLink.As <IQueryable>().Setup(mock => mock.ElementType).Returns(mockAsynEnumerable3.AsQueryable().ElementType); mockNetworkLink.As <IDbAsyncEnumerable>().Setup(mock => mock.GetAsyncEnumerator()).Returns(((IDbAsyncEnumerable <NetworkLink>)mockAsynEnumerable3).GetAsyncEnumerator()); mockNetworkDBContext.Setup(x => x.Set <NetworkLink>()).Returns(mockNetworkLink.Object); mockNetworkDBContext.Setup(x => x.NetworkLinks).Returns(mockNetworkLink.Object); mockNetworkDBContext.Setup(x => x.NetworkLinks.AsNoTracking()).Returns(mockNetworkLink.Object); // Mock trace manager var rmTraceManagerMock = new Mock <IRMTraceManager>(); rmTraceManagerMock.Setup(x => x.StartTrace(It.IsAny <string>(), It.IsAny <Guid>())); mockILoggingHelper.Setup(x => x.RMTraceManager).Returns(rmTraceManagerMock.Object); mockIConfigurationHelper.Setup(x => x.ReadAppSettingsConfigurationValues(It.IsAny <string>())).Returns("5"); mockDatabaseFactory = CreateMock <IDatabaseFactory <NetworkDBContext> >(); mockDatabaseFactory.Setup(x => x.Get()).Returns(mockNetworkDBContext.Object); testCandidate = new StreetNetworkDataService(mockDatabaseFactory.Object, mockILoggingHelper.Object, mockIConfigurationHelper.Object); }
/// <summary> /// Setup for Nunit Tests. /// </summary> protected override void OnSetup() { mockLoggingHelper = CreateMock <ILoggingHelper>(); unit1Guid = Guid.NewGuid(); unit2Guid = Guid.NewGuid(); unit3Guid = Guid.NewGuid(); user1Id = System.Guid.NewGuid(); user2Id = System.Guid.NewGuid(); var unitBoundary = DbGeometry.PolygonFromText("POLYGON((511570.8590967182 106965.35195621933, 511570.8590967182 107474.95297542136, 512474.1409032818 107474.95297542136, 512474.1409032818 106965.35195621933, 511570.8590967182 106965.35195621933))", 27700); var location = new List <Location>() { new Location() { ID = unit1Guid, Shape = unitBoundary } }; var networkLinks = new List <NetworkLink>() { new NetworkLink() { LinkGeometry = unitBoundary, } }; var networkLink = new NetworkLink() { LinkGeometry = unitBoundary, }; var accessLink = new List <AccessLink>() { new AccessLink() { ID = Guid.NewGuid(), NetworkLink = networkLink } }; var deliveryPoint = new List <DeliveryPoint>() { new DeliveryPoint() { NetworkNode = new NetworkNode() { Location = new Location() { Shape = unitBoundary } } } }; var networkNodeDataDTO = new NetworkNodeDataDTO() { ID = Guid.NewGuid(), Location = new LocationDataDTO() { ID = Guid.NewGuid(), Shape = unitBoundary, RowCreateDateTime = DateTime.UtcNow } }; var accessLinkDataDTOs = new AccessLinkDataDTO() { Approved = true, ID = Guid.NewGuid(), WorkloadLengthMeter = 40, LinkDirectionGUID = Guid.NewGuid(), ConnectedNetworkLinkID = Guid.NewGuid(), AccessLinkTypeGUID = Guid.NewGuid() }; var accessLinkStatus = new AccessLinkStatusDataDTO() { ID = Guid.NewGuid(), NetworkLinkID = Guid.NewGuid(), AccessLinkStatusGUID = Guid.NewGuid(), StartDateTime = DateTime.UtcNow, RowCreateDateTime = DateTime.UtcNow }; netWorkLinkDataDto = new NetworkLinkDataDTO() { ID = Guid.NewGuid(), DataProviderGUID = Guid.NewGuid(), NetworkLinkTypeGUID = Guid.NewGuid(), StartNodeID = Guid.NewGuid(), EndNodeID = Guid.NewGuid(), LinkLength = 40, LinkGeometry = unitBoundary, RowCreateDateTime = DateTime.UtcNow, }; var mockAsynEnumerable = new DbAsyncEnumerable <AccessLink>(accessLink); mockFmoDbContext = CreateMock <AccessLinkDBContext>(); mockFmoDbContext.Setup(x => x.SaveChanges()).Returns(1); var mockAccessLinkDataService = MockDbSet(accessLink); mockFmoDbContext.Setup(x => x.Set <AccessLink>()).Returns(mockAccessLinkDataService.Object); mockFmoDbContext.Setup(x => x.AccessLinks).Returns(mockAccessLinkDataService.Object); // mockFmoDbContext.Setup(c => c.AccessLinks.AsNoTracking()).Returns(mockAccessLinkDataService.Object); mockAccessLinkDataService.Setup(x => x.Include(It.IsAny <string>())).Returns(mockAccessLinkDataService.Object); mockAccessLinkDataService.Setup(x => x.AsNoTracking()).Returns(mockAccessLinkDataService.Object); var mockAccessLinkDataService1 = MockDbSet(networkLinks); mockFmoDbContext.Setup(x => x.Set <NetworkLink>()).Returns(mockAccessLinkDataService1.Object); mockFmoDbContext.Setup(x => x.NetworkLinks).Returns(mockAccessLinkDataService1.Object); // mockFmoDbContext.Setup(c => c.NetworkLinks.AsNoTracking()).Returns(mockAccessLinkDataService1.Object); mockAccessLinkDataService1.Setup(x => x.AsNoTracking()).Returns(mockAccessLinkDataService1.Object); var mockAccessLinkDataService4 = MockDbSet(deliveryPoint); mockFmoDbContext.Setup(x => x.Set <DeliveryPoint>()).Returns(mockAccessLinkDataService4.Object); mockFmoDbContext.Setup(x => x.DeliveryPoints).Returns(mockAccessLinkDataService4.Object); mockAccessLinkDataService4.Setup(x => x.AsNoTracking()).Returns(mockAccessLinkDataService4.Object); var mockAsynEnumerable2 = new DbAsyncEnumerable <Location>(location); var mockAccessLinkDataService2 = MockDbSet(location); mockFmoDbContext.Setup(x => x.Set <Location>()).Returns(mockAccessLinkDataService2.Object); mockFmoDbContext.Setup(x => x.Locations).Returns(mockAccessLinkDataService2.Object); mockFmoDbContext.Setup(c => c.Locations.AsNoTracking()).Returns(mockAccessLinkDataService2.Object); mockDatabaseFactory = CreateMock <IDatabaseFactory <AccessLinkDBContext> >(); mockDatabaseFactory.Setup(x => x.Get()).Returns(mockFmoDbContext.Object); var rmTraceManagerMock = new Mock <IRMTraceManager>(); rmTraceManagerMock.Setup(x => x.StartTrace(It.IsAny <string>(), It.IsAny <Guid>())); mockLoggingHelper.Setup(x => x.RMTraceManager).Returns(rmTraceManagerMock.Object); testCandidate = new AccessLinkDataService(mockDatabaseFactory.Object, mockLoggingHelper.Object); }
protected override void OnSetup() { SqlServerTypes.Utilities.LoadNativeAssemblies(AppDomain.CurrentDomain.BaseDirectory); loggingHelperMock = CreateMock <ILoggingHelper>(); unit1Guid = Guid.NewGuid(); unit2Guid = Guid.NewGuid(); unit3Guid = Guid.NewGuid(); user1Id = System.Guid.NewGuid(); user2Id = System.Guid.NewGuid(); var unitBoundary = DbGeometry.PolygonFromText("POLYGON((511570.8590967182 106965.35195621933, 511570.8590967182 107474.95297542136, 512474.1409032818 107474.95297542136, 512474.1409032818 106965.35195621933, 511570.8590967182 106965.35195621933))", 27700); var unitLocation = new List <UnitLocation>() { new UnitLocation() { UnitName = "unit1", ExternalId = "extunit1", ID = unit1Guid, UnitBoundryPolygon = unitBoundary, UserRoleUnits = new List <UserRoleUnit> { new UserRoleUnit { Unit_GUID = unit1Guid, User_GUID = user1Id } } }, new UnitLocation() { UnitName = "unit2", ExternalId = "extunit2", ID = unit2Guid, UnitBoundryPolygon = unitBoundary, UserRoleUnits = new List <UserRoleUnit> { new UserRoleUnit { Unit_GUID = unit2Guid, User_GUID = user1Id } } }, new UnitLocation() { UnitName = "unit3", ExternalId = "extunit2", ID = unit3Guid, UnitBoundryPolygon = unitBoundary, UserRoleUnits = new List <UserRoleUnit> { new UserRoleUnit { Unit_GUID = unit3Guid, User_GUID = user2Id } } } }; var roadName = new List <OSRoadLink>() { new OSRoadLink() { CentreLineGeometry = unitBoundary, RoadName = "Road 001" } }; var referenceDatas = new List <ReferenceData>() { new ReferenceData() { ReferenceDataName = "PAF", DataDescription = "PAF", ReferenceDataCategory_GUID = new Guid("4A6F8F72-AE47-4EC4-8FCB-EFCFEB900ADD"), ID = new Guid("4A6F8F72-AE47-4EC4-8FCB-EFCFEB900ADD"), ReferenceDataValue = "PAF" }, new ReferenceData() { ReferenceDataName = "PAF", DataDescription = "PAF", ReferenceDataCategory_GUID = new Guid("4A6F8F73-AE47-4EC4-8FCB-EFCFEB900ADD"), ID = new Guid("4A6F8F73-AE47-4EC4-8FCB-EFCFEB900ADD"), ReferenceDataValue = "NYB" } }; var networkLinks = new List <NetworkLink>() { new NetworkLink() { LinkGeometry = DbGeometry.LineFromText("LINESTRING (512722.70000000019 104752.6799999997, 512722.70000000019 104738)", 27700), NetworkLinkType_GUID = new Guid("4A6F8F72-AE47-4EC4-8FCB-EFCFEB900ADD") } }; var mockRoadNameDataService = MockDbSet(roadName); mockRMDBContext = CreateMock <RMDBContext>(); mockRMDBContext.Setup(x => x.Set <OSRoadLink>()).Returns(mockRoadNameDataService.Object); mockRMDBContext.Setup(x => x.OSRoadLinks).Returns(mockRoadNameDataService.Object); mockRMDBContext.Setup(c => c.OSRoadLinks.AsNoTracking()).Returns(mockRoadNameDataService.Object); mockRoadNameDataService.Setup(x => x.Include(It.IsAny <string>())).Returns(mockRoadNameDataService.Object); var mockRoadNameDataService2 = MockDbSet(unitLocation); mockRMDBContext.Setup(x => x.Set <UnitLocation>()).Returns(mockRoadNameDataService2.Object); mockRMDBContext.Setup(x => x.UnitLocations).Returns(mockRoadNameDataService2.Object); mockRMDBContext.Setup(c => c.UnitLocations.AsNoTracking()).Returns(mockRoadNameDataService2.Object); mockRoadNameDataService2.Setup(x => x.Include(It.IsAny <string>())).Returns(mockRoadNameDataService2.Object); var mockReferenceData = MockDbSet(referenceDatas); mockRMDBContext.Setup(x => x.Set <ReferenceData>()).Returns(mockReferenceData.Object); mockRMDBContext.Setup(x => x.ReferenceDatas).Returns(mockReferenceData.Object); mockRMDBContext.Setup(c => c.ReferenceDatas.AsNoTracking()).Returns(mockReferenceData.Object); mockReferenceData.Setup(x => x.Include(It.IsAny <string>())).Returns(mockReferenceData.Object); var mockNetworkLink = MockDbSet(networkLinks); mockRMDBContext.Setup(x => x.Set <NetworkLink>()).Returns(mockNetworkLink.Object); mockRMDBContext.Setup(x => x.NetworkLinks).Returns(mockNetworkLink.Object); mockRMDBContext.Setup(c => c.NetworkLinks.AsNoTracking()).Returns(mockNetworkLink.Object); mockNetworkLink.Setup(x => x.Include(It.IsAny <string>())).Returns(mockNetworkLink.Object); mockDatabaseFactory = CreateMock <IDatabaseFactory <RMDBContext> >(); mockDatabaseFactory.Setup(x => x.Get()).Returns(mockRMDBContext.Object); var rmTraceManagerMock = new Mock <IRMTraceManager>(); rmTraceManagerMock.Setup(x => x.StartTrace(It.IsAny <string>(), It.IsAny <Guid>())); loggingHelperMock.Setup(x => x.RMTraceManager).Returns(rmTraceManagerMock.Object); testCandidate = new RoadNameDataService(mockDatabaseFactory.Object, loggingHelperMock.Object); }
private static void extractPolygon(JObject feature, Dictionary <string, Point3D> labeledPoints, ApplicationDbContext context , List <Point3D> badPolygonsPoints, List <POI> poisToSave) { POI poi = new POI(); poi.Type = null; Polygone toReturn = new Polygone(); toReturn.Points = new List <Point3D>(); int level = int.Parse(feature["properties"]["level"].ToString()); //bool isAccessible = Boolean.Parse(feature["properties"]["accessible"].ToString()); toReturn.Level = level; StringBuilder wktsb = new StringBuilder("POLYGON (("); List <Point3D> labeledPointsFound = new List <Point3D>(); foreach (JArray j in feature["geometry"]["coordinates"][0]) { StringBuilder pointWkt = new StringBuilder("POINT ("); string lon = Regex.Match(j.ToString(), "34\\.\\d+").Value; string lat = Regex.Match(j.ToString(), "32\\.\\d+").Value; wktsb.Append(lon + " " + lat + ","); pointWkt.Append(lon + " " + lat + ")"); if (!toReturn.Points.Exists(Point3D => Point3D.Wkt == pointWkt.ToString())) { if (labeledPoints.ContainsKey(pointWkt.ToString())) { labeledPointsFound.Add(labeledPoints[pointWkt.ToString()]); toReturn.Points.Add(labeledPoints[pointWkt.ToString()]); //break; } else { DbGeometry pointG = DbGeometry.PointFromText(pointWkt.ToString(), 4326); Point3D point = new Point3D { Longitude = Decimal.Parse(lon), Latitude = Decimal.Parse(lat), Wkt = pointWkt.ToString(), LocationG = pointG, Level = level }; toReturn.Points.Add(point); } } } wktsb.Remove(wktsb.Length - 1, 1); wktsb.Append("))"); toReturn.Wkt = wktsb.ToString(); try { DbGeometry polygone = DbGeometry.PolygonFromText(wktsb.ToString(), 4326); if (!polygone.IsValid) { polygone = DbGeometry.FromText(SqlGeometry.STGeomFromText(new SqlChars(polygone.AsText()), 4326).MakeValid().STAsText().ToSqlString().ToString(), 4326); } foreach (Point3D point in badPolygonsPoints) { if (polygone.Contains(point.LocationG)) { return; } } toReturn.LocationG = polygone; } catch (Exception ex) { ex = ex; } // polygon with no info if (labeledPointsFound.Count == 0) { return; } // polygon with more than one anchor point - check if it is 2 entrances if (labeledPointsFound.Count > 1) { if (labeledPointsFound[0].Areas.Count != labeledPointsFound[1].Areas.Count) { return; } else { for (int i = 0; i < labeledPointsFound[0].Areas.Count; i++) { if (!labeledPointsFound[0].Areas[i].AreaID.Equals(labeledPointsFound[1].Areas[i].AreaID)) { return; } } } } Point3D labeledPoint = labeledPointsFound[0]; if (labeledPoint != null) { toReturn.Areas = labeledPoint.Areas; if (labeledPoint.Areas != null && labeledPoint.Areas.Count > 0 && !labeledPoint.Areas[0].AreaID.StartsWith("9")) { poi.Type = POI.POIType.STORE; } if (labeledPoint.Name.ToLower().Contains("atm")) { poi.Type = POI.POIType.ATM; } if (labeledPoint.Name.ToLower().Contains("entrance")) { poi.Type = POI.POIType.ENTRANCE; } if (labeledPoint.Name.ToLower().Contains("toilet") | labeledPoint.Name.ToLower().Contains("wc")) { poi.Type = POI.POIType.WC; } if (labeledPoint.Name.ToLower().Contains("zone")) { poi.Type = POI.POIType.ZONE; } } if (poi.Type != null) { switch (poi.Type) { case POI.POIType.STORE: { poi = new Store { Type = poi.Type, Anchor = labeledPoint, Enabled = true , Floor = level, IsAccessible = labeledPoint.IsAccessible, Name = labeledPoint.Name, Name2 = labeledPoint.Name2, Location = toReturn, Entrances = new List <Point3D>() }; foreach (Point3D entrancePoint in labeledPointsFound) { ((Store)poi).Entrances.Add(entrancePoint); } //context.Stores.AddOrUpdate(new Store[] { (Store)poi }); break; } default: { poi = new POI { Type = poi.Type, Anchor = labeledPoint, Enabled = true, Name = labeledPoint.Name, Location = toReturn }; //poisToSave.Add(poi); break; } } poisToSave.Add(poi); } //return poi; }
private void InsertGolfStore(MallBuddyApi.Models.ApplicationDbContext context) { try { var golf = new Store { Name = "GOLF", Type = POI.POIType.STORE, Anchor = new Point3D(), Schedule = new List <Models.existing.OpeningHoursSpan>(), Enabled = true, WebsiteLink = "http://www.dizengof-center.co.il/GOLF.aspx", ImageUrl = "http://www.dizengof-center.co.il/manage-pages/uploaded-files/a_03-07-2011-15-37-5.jpg", Location = new Polygone(), ContactDetails = new ContactDetails { PoiName = "GOLF", Phone1 = "03-5283163", Address = "www.golf.co.il" }, //Category = "Fashion", }; var schedule1 = new List <OpeningHoursSpan>(); var weekday = new OpeningHoursSpan { day = DayOfWeek.Sunday, from = 10, to = 2130 }; var friday = new OpeningHoursSpan { day = DayOfWeek.Friday, from = 0930, to = 1530 }; var saturday = new OpeningHoursSpan { day = DayOfWeek.Saturday, from = 20, to = 2230 }; schedule1.Add(weekday); schedule1.Add(friday); schedule1.Add(saturday); golf.Schedule = schedule1; Polygone poly = new Polygone { Accessible = true, Areas = new List <Area> { new Area { AreaID = "0401" }, new Area { AreaID = "0401A" } }, Wkt = "POLYGON ((34.775053932498516 32.07540339193275,34.77499915806167 32.07548404017222,34.77497984348338 32.07549149508553, 34.774953825764996 32.07549049106811,34.774935077805786 32.07547970303128,34.77491144862596 32.07545506831342,34.77490455271353 32.07544820193738, 34.77489280495869 32.075426482513976, 34.774889877466975 32.07541821355505,34.774886213457535 32.07540786423455,34.77488379926684 32.075401045136886,34.774871958289275 32.07534718017001,34.77487191400818 32.0752896316811,34.77492920795574 32.075324825765655,34.775053932498516 32.07540339193275,34.775053932498516 32.07540339193275))", LocationG = DbGeometry.PolygonFromText("POLYGON ((34.775053932498516 32.07540339193275,34.77499915806167 32.07548404017222,34.77497984348338 32.07549149508553, 34.774953825764996 32.07549049106811,34.774935077805786 32.07547970303128,34.77491144862596 32.07545506831342,34.77490455271353 32.07544820193738, 34.77489280495869 32.075426482513976, 34.774889877466975 32.07541821355505,34.774886213457535 32.07540786423455,34.77488379926684 32.075401045136886,34.774871958289275 32.07534718017001,34.77487191400818 32.0752896316811,34.77492920795574 32.075324825765655,34.775053932498516 32.07540339193275,34.775053932498516 32.07540339193275))", 4326), Points = new List <Point3D>() }; var Point3D1 = new Point3D { Level = 2, Longitude = 34.775053932498516m, Latitude = 32.07540339193275m, Wkt = "POINT(34.775053932498516 32.07540339193275)", LocationG = DbGeometry.PointFromText("POINT(34.775053932498516 32.07540339193275)", 4326) }; var Point3D2 = new Point3D { Level = 2, Longitude = 34.77499915806167m, Latitude = 32.07548404017222m, Wkt = "POINT(34.77499915806167 32.07548404017222)", LocationG = DbGeometry.PointFromText("POINT(34.77499915806167 32.07548404017222)", 4326) }; var Point3D3 = new Point3D { Level = 2, Longitude = 34.77497984348338m, Latitude = 32.07549149508553m, Wkt = "POINT(34.77497984348338 32.07549149508553)", LocationG = DbGeometry.PointFromText("POINT(34.77497984348338 32.07549149508553)", 4326) }; var Point3D4 = new Point3D { Level = 2, Longitude = 34.774953825764996m, Latitude = 32.07549049106811m, Wkt = "POINT(34.774953825764996 32.07549049106811)", LocationG = DbGeometry.PointFromText("POINT(34.774953825764996 32.07549049106811)", 4326) }; poly.Points.Add(Point3D1); poly.Points.Add(Point3D2); poly.Points.Add(Point3D3); poly.Points.Add(Point3D4); golf.Location = poly; context.Stores.AddOrUpdate(golf); //context. SaveChanges(context); } catch (DbEntityValidationException e) { foreach (var eve in e.EntityValidationErrors) { Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State); foreach (var ve in eve.ValidationErrors) { Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); } } throw; } }
protected override void OnSetup() { SqlServerTypes.Utilities.LoadNativeAssemblies(AppDomain.CurrentDomain.BaseDirectory); mockLoggingHelper = CreateMock <ILoggingHelper>(); unit1Guid = Guid.NewGuid(); unit2Guid = Guid.NewGuid(); unit3Guid = Guid.NewGuid(); user1Id = System.Guid.NewGuid(); user2Id = System.Guid.NewGuid(); var unitBoundary = DbGeometry.PolygonFromText("POLYGON((511570.8590967182 106965.35195621933, 511570.8590967182 107474.95297542136, 512474.1409032818 107474.95297542136, 512474.1409032818 106965.35195621933, 511570.8590967182 106965.35195621933))", 27700); var unitLocation = new List <UnitLocation>() { new UnitLocation() { UnitName = "unit1", ExternalId = "extunit1", ID = unit1Guid, UnitBoundryPolygon = unitBoundary, UserRoleUnits = new List <UserRoleUnit> { new UserRoleUnit { Unit_GUID = unit1Guid, User_GUID = user1Id } } }, new UnitLocation() { UnitName = "unit2", ExternalId = "extunit2", ID = unit2Guid, UnitBoundryPolygon = unitBoundary, UserRoleUnits = new List <UserRoleUnit> { new UserRoleUnit { Unit_GUID = unit2Guid, User_GUID = user1Id } } }, new UnitLocation() { UnitName = "unit3", ExternalId = "extunit2", ID = unit3Guid, UnitBoundryPolygon = unitBoundary, UserRoleUnits = new List <UserRoleUnit> { new UserRoleUnit { Unit_GUID = unit3Guid, User_GUID = user2Id } } } }; var accessLink = new List <AccessLink>() { new AccessLink() { AccessLinkLine = unitBoundary, ID = Guid.NewGuid() } }; accessLinkDto = new AccessLinkDTO() { OperationalObjectPoint = DbGeometry.PointFromText("POINT (488938 197021)", 27700), NetworkIntersectionPoint = null, AccessLinkLine = null, ActualLengthMeter = 3, WorkloadLengthMeter = 5, Approved = true, OperationalObject_GUID = Guid.NewGuid() }; var mockAsynEnumerable = new DbAsyncEnumerable <AccessLink>(accessLink); var mockAccessLinkDataService = MockDbSet(accessLink); mockFmoDbContext = CreateMock <RMDBContext>(); mockFmoDbContext.Setup(x => x.Set <AccessLink>()).Returns(mockAccessLinkDataService.Object); mockFmoDbContext.Setup(x => x.AccessLinks).Returns(mockAccessLinkDataService.Object); mockFmoDbContext.Setup(c => c.AccessLinks.AsNoTracking()).Returns(mockAccessLinkDataService.Object); mockAccessLinkDataService.Setup(x => x.Include(It.IsAny <string>())).Returns(mockAccessLinkDataService.Object); var mockAsynEnumerable2 = new DbAsyncEnumerable <UnitLocation>(unitLocation); var mockAccessLinkDataService2 = MockDbSet(unitLocation); mockFmoDbContext.Setup(x => x.Set <UnitLocation>()).Returns(mockAccessLinkDataService2.Object); mockFmoDbContext.Setup(x => x.UnitLocations).Returns(mockAccessLinkDataService2.Object); mockFmoDbContext.Setup(c => c.UnitLocations.AsNoTracking()).Returns(mockAccessLinkDataService2.Object); mockAccessLinkDataService2.Setup(x => x.Include(It.IsAny <string>())).Returns(mockAccessLinkDataService2.Object); mockDatabaseFactory = CreateMock <IDatabaseFactory <RMDBContext> >(); mockDatabaseFactory.Setup(x => x.Get()).Returns(mockFmoDbContext.Object); var rmTraceManagerMock = new Mock <IRMTraceManager>(); rmTraceManagerMock.Setup(x => x.StartTrace(It.IsAny <string>(), It.IsAny <Guid>())); mockLoggingHelper.Setup(x => x.RMTraceManager).Returns(rmTraceManagerMock.Object); testCandidate = new AccessLinkDataService(mockDatabaseFactory.Object, mockLoggingHelper.Object); }
public HttpResponseMessage UploadMapShape() { HttpResponseMessage result = null; int bcount = 0; try { var httpRequest = HttpContext.Current.Request; PROJECT_IMPACT importInfo = null; if (httpRequest.Form.Count > 0) { var imageInfo = httpRequest.Form["ImageInfo"]; if (imageInfo != null) { importInfo = (new System.Web.Script.Serialization.JavaScriptSerializer()).Deserialize <PROJECT_IMPACT>(imageInfo); } } List <Geometry> geometries = new List <Geometry>(0); if (httpRequest.Files.Count > 0) { string sessionID = Guid.NewGuid().ToString(); var docfiles = new List <string>(); foreach (string file in httpRequest.Files) { var postedFile = httpRequest.Files[file]; string targetFolder = $@"{HttpContext.Current.Server.MapPath("~")}UploadShape\{sessionID}"; if (!System.IO.Directory.Exists(targetFolder)) { System.IO.Directory.CreateDirectory(targetFolder); } /*save file from client*/ var zipFilePath = $@"{targetFolder}\{postedFile.FileName}"; postedFile.SaveAs(zipFilePath); docfiles.Add(zipFilePath); /*extract zip file*/ var extractFilePath = $"{targetFolder}"; System.IO.Compression.ZipFile.ExtractToDirectory(zipFilePath, extractFilePath, System.Text.Encoding.UTF8); /*process unzip file*/ var zipDirs = System.IO.Directory.GetDirectories(targetFolder); zipDirs.ToList().ForEach(zipDir => { var dirs = System.IO.Directory.GetDirectories(zipDir); dirs.ToList().ForEach(dir => { var loop = true; /*search shape file*/ while (loop) { loop = false; var files = System.IO.Directory.GetFiles(dir, "*.shp", System.IO.SearchOption.AllDirectories); /*if dbf file not found then search shp*/ if (files.Count() == 0) { files = System.IO.Directory.GetFiles(dir, "*.dbf", System.IO.SearchOption.AllDirectories); } files.ToList().ForEach(f => { var fileInfo = new System.IO.FileInfo(f); try { Shapefile indexMapFile = Shapefile.OpenFile(f); indexMapFile.Reproject(KnownCoordinateSystems.Geographic.Asia.Indian1975); TDM.Models.Util.LatLngUTMConverter latLngUTMConverter = new TDM.Models.Util.LatLngUTMConverter("WGS 84"); //var rr = latLngUTMConverter.convertLatLngToUtm(15.000095111201411, 100.64638250268084); string utmShape = ""; foreach (IFeature feature in indexMapFile.Features) { if (feature != null && feature.Geometry != null) { utmShape = feature.Geometry.Coordinates .Select(coordinate => latLngUTMConverter.convertLatLngToUtm(coordinate.Y, coordinate.X)) .Select(utm => $"{utm.Easting} {utm.Northing}") .Aggregate((current, next) => current + ", " + next); geometries.Add(new Geometry() { //Shape = feature.Geometry.ToString(), Shape = $"{feature.Geometry.OgcGeometryType.ToString().ToUpper()} (({utmShape}))", AREA = Convert.ToDecimal(feature.DataRow["AREA"]), ORIGIN_X = feature.DataRow["ORIGIN_X"].ToString(), ORIGIN_Y = feature.DataRow["ORIGIN_Y"].ToString() }); } } } catch (Exception ex) { string k = ""; } }); } }); }); } /*save data*/ importInfo.ID = 0; importInfo.Area = geometries.Sum(g => g.AREA); PROJECT_IMPACT saveProject = tdmEntities.PROJECT_IMPACT.Add(importInfo); tdmEntities.SaveChanges(); foreach (var geometry in geometries) { if (!geometry.Shape.Contains("MULTIPO")) { tdmEntities.PROJECT_IMPACT_GEOMETRY.Add(new PROJECT_IMPACT_GEOMETRY() { ProjectImpactID = importInfo.ID, OriginX = geometry.ORIGIN_X, OriginY = geometry.ORIGIN_Y, Area = geometry.AREA, Shape = (geometry.Shape.Contains("MULTIPO")) ? DbGeometry.MultiPolygonFromText(geometry.Shape, 4326) : DbGeometry.PolygonFromText(geometry.Shape, 4326), UpdateDate = DateTime.Now, CreateDate = DateTime.Now }); } } tdmEntities.SaveChanges(); result = Request.CreateResponse(HttpStatusCode.Created, "Success"); } else { result = Request.CreateResponse(HttpStatusCode.BadRequest); } } catch (Exception exc) { result = Request.CreateResponse(HttpStatusCode.InternalServerError, exc.Message); } return(result); }
/// <summary> /// Setup for Nunit Tests /// </summary> protected override void OnSetup() { SqlServerTypes.Utilities.LoadNativeAssemblies(AppDomain.CurrentDomain.BaseDirectory); mockUnitLocationDataService = CreateMock <IUnitLocationDataService>(); mockPostCodeSectorDataService = CreateMock <IPostcodeSectorDataService>(); mockPostCodeDataService = CreateMock <IPostcodeDataService>(); mockScenarioDataService = CreateMock <IScenarioDataService>(); loggingHelperMock = CreateMock <ILoggingHelper>(); mockUnitLocationDataService = CreateMock <IUnitLocationDataService>(); mockUnitManagerIntegrationService = CreateMock <IUnitManagerIntegrationService>(); mockPostalAddressDataService = CreateMock <IPostalAddressDataService>(); userID = System.Guid.Parse("A867065B-B91E-E711-9F8C-28D244AEF9ED"); deliveryUnitID = System.Guid.Parse("B51AA229-C984-4CA6-9C12-510187B81050"); var unitBoundary = DbGeometry.PolygonFromText("POLYGON ((505058.162109375 100281.69677734375, 518986.84887695312 100281.69677734375, 518986.84887695312 114158.546875, 505058.162109375 114158.546875, 505058.162109375 100281.69677734375))", 27700); actualDeliveryUnitListForUserResult = new List <UnitLocationDTO>() { new UnitLocationDTO() { ID = Guid.NewGuid(), UnitName = "UnitOne", UnitBoundryPolygon = unitBoundary } }; List <UnitLocationDataDTO> unitLocationDataDTOList = new List <UnitLocationDataDTO>() { new UnitLocationDataDTO() { LocationId = Guid.NewGuid(), Name = "UnitOne", Area = "Polygon", Shape = unitBoundary } }; CommonLibrary.EntityFramework.DTO.ReferenceDataCategoryDTO referenceDataCategoryDTO = new CommonLibrary.EntityFramework.DTO.ReferenceDataCategoryDTO() { CategoryName = "PostalAddressType", ReferenceDatas = new List <CommonLibrary.EntityFramework.DTO.ReferenceDataDTO>() { new CommonLibrary.EntityFramework.DTO.ReferenceDataDTO() { ReferenceDataValue = PostCodeTypeCategory.PostcodeSector.GetDescription() }, new CommonLibrary.EntityFramework.DTO.ReferenceDataDTO() { ReferenceDataValue = PostCodeTypeCategory.PostcodeDistrict.GetDescription() } } }; PostcodeSectorDataDTO postcodeSectorDataDTO = new PostcodeSectorDataDTO() { }; List <PostcodeDataDTO> postcodeDataDTOList = new List <PostcodeDataDTO>() { new PostcodeDataDTO() { PostcodeUnit = "Unit1", ID = new Guid("B51AA229-C984-4CA6-9C12-510187B81050") } }; List <ScenarioDataDTO> scenarioDataDTOList = new List <ScenarioDataDTO>() { new ScenarioDataDTO() { } }; List <PostalAddressDataDTO> postalAddressDataServiceList = new List <PostalAddressDataDTO>() { new PostalAddressDataDTO() { AddressType_GUID = new Guid("A867065B-B91E-E711-9F8C-28D244AEF9EC"), BuildingName = "bldg1", BuildingNumber = 1, SubBuildingName = "subbldg" } }; List <DeliveryRouteDTO> deliveryRouteDTOList = new List <DeliveryRouteDTO>() { }; // setup methods mockUnitManagerIntegrationService.Setup(x => x.GetReferenceDataGuId(It.IsAny <string>(), It.IsAny <string>())).ReturnsAsync(new Guid("A867065B-B91E-E711-9F8C-28D244AEF9EC")); mockUnitLocationDataService.Setup(x => x.GetUnitsByUser(It.IsAny <Guid>(), It.IsAny <Guid>())).ReturnsAsync(unitLocationDataDTOList); mockUnitManagerIntegrationService.Setup(x => x.GetReferenceDataSimpleLists(It.IsAny <string>())).ReturnsAsync(referenceDataCategoryDTO); mockPostCodeSectorDataService.Setup(x => x.GetPostcodeSectorByUdprn(It.IsAny <int>())).ReturnsAsync(postcodeSectorDataDTO); mockPostCodeDataService.Setup(x => x.GetPostcodeUnitForBasicSearch(It.IsAny <SearchInputDataDto>())).ReturnsAsync(postcodeDataDTOList); mockPostCodeDataService.Setup(x => x.GetPostcodeUnitCount(It.IsAny <SearchInputDataDto>())).ReturnsAsync(5); mockPostCodeDataService.Setup(x => x.GetPostcodeUnitForAdvanceSearch(It.IsAny <SearchInputDataDto>())).ReturnsAsync(postcodeDataDTOList); mockPostCodeDataService.Setup(x => x.GetPostcodeID(It.IsAny <string>())).ReturnsAsync(postcodeDataDTOList[0]); mockScenarioDataService.Setup(x => x.GetScenariosByOperationStateAndDeliveryUnit(It.IsAny <Guid>(), It.IsAny <Guid>())).ReturnsAsync(scenarioDataDTOList); mockUnitLocationDataService.Setup(x => x.GetPostcodes(It.IsAny <List <Guid> >(), It.IsAny <Guid>())).ReturnsAsync(postcodeDataDTOList); mockPostCodeDataService.Setup(x => x.GetApproxLocation(It.IsAny <string>(), It.IsAny <Guid>())).ReturnsAsync(unitBoundary); mockPostalAddressDataService.Setup(x => x.GetPostalAddressDetails(It.IsAny <string>(), It.IsAny <Guid>())).ReturnsAsync(postalAddressDataServiceList); mockUnitManagerIntegrationService.Setup(x => x.GetRouteData(It.IsAny <string>(), It.IsAny <string>())).ReturnsAsync(deliveryRouteDTOList); mockPostalAddressDataService.Setup(x => x.GetPostalAddressSearchDetails(It.IsAny <string>(), It.IsAny <Guid>(), It.IsAny <List <Guid> >())).ReturnsAsync(new List <string>() { "123" }); var rmTraceManagerMock = new Mock <IRMTraceManager>(); rmTraceManagerMock.Setup(x => x.StartTrace(It.IsAny <string>(), It.IsAny <Guid>())); loggingHelperMock.Setup(x => x.RMTraceManager).Returns(rmTraceManagerMock.Object); testCandidate = new UnitLocationBusinessService(mockUnitLocationDataService.Object, mockPostCodeSectorDataService.Object, mockPostCodeDataService.Object, mockScenarioDataService.Object, mockPostalAddressDataService.Object, loggingHelperMock.Object, mockUnitManagerIntegrationService.Object); }
private static IEnumerable <MethodInfo> GetSupportedMethods() { yield return(GetStaticMethod(() => DbGeography.FromText(default(string)))); yield return(GetStaticMethod(() => DbGeography.FromText(default(string), default(int)))); yield return(GetStaticMethod(() => DbGeography.PointFromText(default(string), default(int)))); yield return(GetStaticMethod(() => DbGeography.LineFromText(default(string), default(int)))); yield return(GetStaticMethod(() => DbGeography.PolygonFromText(default(string), default(int)))); yield return(GetStaticMethod(() => DbGeography.MultiPointFromText(default(string), default(int)))); yield return(GetStaticMethod(() => DbGeography.MultiLineFromText(default(string), default(int)))); yield return(GetStaticMethod(() => DbGeography.MultiPolygonFromText(default(string), default(int)))); yield return(GetStaticMethod(() => DbGeography.GeographyCollectionFromText(default(string), default(int)))); yield return(GetStaticMethod(() => DbGeography.FromBinary(default(byte[]), default(int)))); yield return(GetStaticMethod(() => DbGeography.FromBinary(default(byte[])))); yield return(GetStaticMethod(() => DbGeography.PointFromBinary(default(byte[]), default(int)))); yield return(GetStaticMethod(() => DbGeography.LineFromBinary(default(byte[]), default(int)))); yield return(GetStaticMethod(() => DbGeography.PolygonFromBinary(default(byte[]), default(int)))); yield return(GetStaticMethod(() => DbGeography.MultiPointFromBinary(default(byte[]), default(int)))); yield return(GetStaticMethod(() => DbGeography.MultiLineFromBinary(default(byte[]), default(int)))); yield return(GetStaticMethod(() => DbGeography.MultiPolygonFromBinary(default(byte[]), default(int)))); yield return(GetStaticMethod(() => DbGeography.GeographyCollectionFromBinary(default(byte[]), default(int)))); yield return(GetStaticMethod(() => DbGeography.FromGml(default(string)))); yield return(GetStaticMethod(() => DbGeography.FromGml(default(string), default(int)))); yield return(GetInstanceMethod((DbGeography geo) => geo.AsBinary())); yield return(GetInstanceMethod((DbGeography geo) => geo.AsGml())); yield return(GetInstanceMethod((DbGeography geo) => geo.AsText())); yield return(GetInstanceMethod((DbGeography geo) => geo.SpatialEquals(default(DbGeography)))); yield return(GetInstanceMethod((DbGeography geo) => geo.Disjoint(default(DbGeography)))); yield return(GetInstanceMethod((DbGeography geo) => geo.Intersects(default(DbGeography)))); yield return(GetInstanceMethod((DbGeography geo) => geo.Buffer(default(double)))); yield return(GetInstanceMethod((DbGeography geo) => geo.Distance(default(DbGeography)))); yield return(GetInstanceMethod((DbGeography geo) => geo.Intersection(default(DbGeography)))); yield return(GetInstanceMethod((DbGeography geo) => geo.Union(default(DbGeography)))); yield return(GetInstanceMethod((DbGeography geo) => geo.Difference(default(DbGeography)))); yield return(GetInstanceMethod((DbGeography geo) => geo.SymmetricDifference(default(DbGeography)))); yield return(GetInstanceMethod((DbGeography geo) => geo.ElementAt(default(int)))); yield return(GetInstanceMethod((DbGeography geo) => geo.PointAt(default(int)))); yield return(GetStaticMethod(() => DbGeometry.FromText(default(string)))); yield return(GetStaticMethod(() => DbGeometry.FromText(default(string), default(int)))); yield return(GetStaticMethod(() => DbGeometry.PointFromText(default(string), default(int)))); yield return(GetStaticMethod(() => DbGeometry.LineFromText(default(string), default(int)))); yield return(GetStaticMethod(() => DbGeometry.PolygonFromText(default(string), default(int)))); yield return(GetStaticMethod(() => DbGeometry.MultiPointFromText(default(string), default(int)))); yield return(GetStaticMethod(() => DbGeometry.MultiLineFromText(default(string), default(int)))); yield return(GetStaticMethod(() => DbGeometry.MultiPolygonFromText(default(string), default(int)))); yield return(GetStaticMethod(() => DbGeometry.GeometryCollectionFromText(default(string), default(int)))); yield return(GetStaticMethod(() => DbGeometry.FromBinary(default(byte[])))); yield return(GetStaticMethod(() => DbGeometry.FromBinary(default(byte[]), default(int)))); yield return(GetStaticMethod(() => DbGeometry.PointFromBinary(default(byte[]), default(int)))); yield return(GetStaticMethod(() => DbGeometry.LineFromBinary(default(byte[]), default(int)))); yield return(GetStaticMethod(() => DbGeometry.PolygonFromBinary(default(byte[]), default(int)))); yield return(GetStaticMethod(() => DbGeometry.MultiPointFromBinary(default(byte[]), default(int)))); yield return(GetStaticMethod(() => DbGeometry.MultiLineFromBinary(default(byte[]), default(int)))); yield return(GetStaticMethod(() => DbGeometry.MultiPolygonFromBinary(default(byte[]), default(int)))); yield return(GetStaticMethod(() => DbGeometry.GeometryCollectionFromBinary(default(byte[]), default(int)))); yield return(GetStaticMethod(() => DbGeometry.FromGml(default(string)))); yield return(GetStaticMethod(() => DbGeometry.FromGml(default(string), default(int)))); yield return(GetInstanceMethod((DbGeometry geo) => geo.AsBinary())); yield return(GetInstanceMethod((DbGeometry geo) => geo.AsGml())); yield return(GetInstanceMethod((DbGeometry geo) => geo.AsText())); yield return(GetInstanceMethod((DbGeometry geo) => geo.SpatialEquals(default(DbGeometry)))); yield return(GetInstanceMethod((DbGeometry geo) => geo.Disjoint(default(DbGeometry)))); yield return(GetInstanceMethod((DbGeometry geo) => geo.Intersects(default(DbGeometry)))); yield return(GetInstanceMethod((DbGeometry geo) => geo.Touches(default(DbGeometry)))); yield return(GetInstanceMethod((DbGeometry geo) => geo.Crosses(default(DbGeometry)))); yield return(GetInstanceMethod((DbGeometry geo) => geo.Within(default(DbGeometry)))); yield return(GetInstanceMethod((DbGeometry geo) => geo.Contains(default(DbGeometry)))); yield return(GetInstanceMethod((DbGeometry geo) => geo.Overlaps(default(DbGeometry)))); yield return(GetInstanceMethod((DbGeometry geo) => geo.Relate(default(DbGeometry), default(string)))); yield return(GetInstanceMethod((DbGeometry geo) => geo.Buffer(default(double)))); yield return(GetInstanceMethod((DbGeometry geo) => geo.Distance(default(DbGeometry)))); yield return(GetInstanceMethod((DbGeometry geo) => geo.Intersection(default(DbGeometry)))); yield return(GetInstanceMethod((DbGeometry geo) => geo.Union(default(DbGeometry)))); yield return(GetInstanceMethod((DbGeometry geo) => geo.Difference(default(DbGeometry)))); yield return(GetInstanceMethod((DbGeometry geo) => geo.SymmetricDifference(default(DbGeometry)))); yield return(GetInstanceMethod((DbGeometry geo) => geo.ElementAt(default(int)))); yield return(GetInstanceMethod((DbGeometry geo) => geo.PointAt(default(int)))); yield return(GetInstanceMethod((DbGeometry geo) => geo.InteriorRingAt(default(int)))); }
/// <summary> /// Setup for Nunit Tests. /// </summary> protected override void OnSetup() { unit1Guid = Guid.NewGuid(); unit2Guid = Guid.NewGuid(); unit3Guid = Guid.NewGuid(); user1Id = System.Guid.NewGuid(); user2Id = System.Guid.NewGuid(); var unitBoundary = DbGeometry.PolygonFromText("POLYGON((511570.8590967182 106965.35195621933, 511570.8590967182 107474.95297542136, 512474.1409032818 107474.95297542136, 512474.1409032818 106965.35195621933, 511570.8590967182 106965.35195621933))", 27700); var location = new List <Location>() { new Location() { ID = unit1Guid, Shape = unitBoundary } }; var roadName = new List <OSRoadLink>() { new OSRoadLink() { CentreLineGeometry = unitBoundary, RoadName = "Road 001" } }; refDataCategotyDTO = new List <ReferenceDataCategoryDTO>() { new ReferenceDataCategoryDTO() { CategoryName = ReferenceDataCategoryNames.AccessLinkType, ReferenceDatas = new List <ReferenceDataDTO>() { new ReferenceDataDTO() { ReferenceDataName = null, ReferenceDataValue = ReferenceDataValues.AccessLinkTypeDefault, ID = Guid.Parse("4DBA7B39-D23E-493A-9B8F-B94D181A082F") }, new ReferenceDataDTO() { ReferenceDataName = null, ReferenceDataValue = ReferenceDataValues.UserDefined, ID = Guid.Parse("DA8F1A91-2E2B-4EEF-9A81-9B18A917CBF1") } } }, new ReferenceDataCategoryDTO() { CategoryName = ReferenceDataCategoryNames.AccessLinkDirection, ReferenceDatas = new List <ReferenceDataDTO>() { new ReferenceDataDTO() { ReferenceDataName = null, ReferenceDataValue = ReferenceDataValues.AccessLinkDirectionBoth, ID = Guid.Parse("5DBA7B39-D23E-493A-9B8F-B94D181A082F") } } }, new ReferenceDataCategoryDTO() { CategoryName = ReferenceDataCategoryNames.AccessLinkStatus, ReferenceDatas = new List <ReferenceDataDTO>() { new ReferenceDataDTO() { ReferenceDataName = null, ReferenceDataValue = ReferenceDataValues.AccessLinkStatusLive, ID = Guid.Parse("6DBA7B39-D23E-493A-9B8F-B94D181A082F") }, new ReferenceDataDTO() { ReferenceDataName = null, ReferenceDataValue = ReferenceDataValues.AccessLinkStatusDraftPendingApproval, ID = Guid.Parse("7DBA7B39-D23E-493A-9B8F-B94D181A082F") }, new ReferenceDataDTO() { ReferenceDataName = null, ReferenceDataValue = ReferenceDataValues.AccessLinkStatusDraftPendingReview, ID = Guid.Parse("7B90B2F9-F62F-E711-8735-28D244AEF9ED") } } }, new ReferenceDataCategoryDTO() { CategoryName = ReferenceDataCategoryNames.OperationalObjectType, ReferenceDatas = new List <ReferenceDataDTO>() { new ReferenceDataDTO() { ReferenceDataName = ReferenceDataValues.OperationalObjectTypeDP, ReferenceDataValue = ReferenceDataValues.OperationalObjectTypeDP, ID = Guid.Parse("415c9129-0615-457e-98b7-3a60436320c5") } } }, new ReferenceDataCategoryDTO() { CategoryName = ReferenceDataCategoryNames.AccessLinkParameters, ReferenceDatas = new List <ReferenceDataDTO>() { new ReferenceDataDTO() { ReferenceDataName = ReferenceDataValues.AccessLinkSameRoadMaxDistance, ReferenceDataValue = "25", ID = Guid.Parse("9DBA7B39-D23E-493A-9B8F-B94D181A082F") }, new ReferenceDataDTO() { ReferenceDataName = ReferenceDataValues.AccessLinkDiffRoadMaxDistance, ReferenceDataValue = "1", ID = Guid.Parse("3DBA7B39-D23E-493A-9B8F-B94D181A081F") }, } }, new ReferenceDataCategoryDTO() { CategoryName = ReferenceDataCategoryNames.NetworkLinkType, ReferenceDatas = new List <ReferenceDataDTO>() { new ReferenceDataDTO() { ReferenceDataName = ReferenceDataValues.AccessLinkDiffRoadMaxDistance, ReferenceDataValue = "Road Link", ID = Guid.Parse("09ce57b1-af13-4f8e-b4af-1de35b4a68a8") } } }, new ReferenceDataCategoryDTO() { CategoryName = ReferenceDataCategoryNames.AccessLinkParameters, ReferenceDatas = new List <ReferenceDataDTO>() { new ReferenceDataDTO() { ReferenceDataName = "Local Road", ReferenceDataValue = "1", ID = Guid.Parse("4DBA7B35-D23E-493A-9B8F-B94D181A082F") } } }, new ReferenceDataCategoryDTO() { CategoryName = ReferenceDataCategoryNames.DeliveryPointUseIndicator, ReferenceDatas = new List <ReferenceDataDTO>() { new ReferenceDataDTO() { ReferenceDataName = "DeliveryPointUseIndicator", ReferenceDataValue = "Residential", ID = Guid.Parse("178edcad-9431-e711-83ec-28d244aef9ed") } } }, }; var networkLinks = new List <NetworkLink>() { new NetworkLink() { ID = Guid.Parse("09ce57b1-af13-4f8e-b4af-1de35b4a68a8"), TOID = "osgb4000000023358315", LinkGeometry = DbGeometry.LineFromText("LINESTRING (511570.8590967182 106965.35195621933, 511570.8590967182 107474.95297542136, 512474.1409032818 107474.95297542136, 512474.1409032818 106965.35195621933, 511570.8590967182 106965.35195621933)", 27700), NetworkLinkTypeGUID = new Guid("09ce57b1-af13-4f8e-b4af-1de35b4a68a8") } }; // Setup for OSRoadLink. mockNetworkDBContext = CreateMock <NetworkDBContext>(); var mockRoadNameDataService = MockDbSet(roadName); mockNetworkDBContext.Setup(x => x.Set <OSRoadLink>()).Returns(mockRoadNameDataService.Object); mockNetworkDBContext.Setup(x => x.OSRoadLinks).Returns(mockRoadNameDataService.Object); mockNetworkDBContext.Setup(c => c.OSRoadLinks.AsNoTracking()).Returns(mockRoadNameDataService.Object); mockRoadNameDataService.Setup(x => x.Include(It.IsAny <string>())).Returns(mockRoadNameDataService.Object); // Setup for Location. var mockRoadNameDataService2 = MockDbSet(location); mockNetworkDBContext.Setup(x => x.Set <Location>()).Returns(mockRoadNameDataService2.Object); mockNetworkDBContext.Setup(x => x.Locations).Returns(mockRoadNameDataService2.Object); mockNetworkDBContext.Setup(c => c.Locations.AsNoTracking()).Returns(mockRoadNameDataService2.Object); mockRoadNameDataService2.Setup(x => x.Include(It.IsAny <string>())).Returns(mockRoadNameDataService2.Object); // Setup for NetworkLink. var mockNetworkLink = MockDbSet(networkLinks); mockNetworkDBContext.Setup(x => x.Set <NetworkLink>()).Returns(mockNetworkLink.Object); mockNetworkDBContext.Setup(x => x.NetworkLinks).Returns(mockNetworkLink.Object); mockNetworkDBContext.Setup(c => c.NetworkLinks.AsNoTracking()).Returns(mockNetworkLink.Object); mockNetworkLink.Setup(x => x.Include(It.IsAny <string>())).Returns(mockNetworkLink.Object); mockDatabaseFactory = CreateMock <IDatabaseFactory <NetworkDBContext> >(); mockDatabaseFactory.Setup(x => x.Get()).Returns(mockNetworkDBContext.Object); // Setup for IRMTraceManager. mockILoggingHelper = CreateMock <ILoggingHelper>(); var rmTraceManagerMock = new Mock <IRMTraceManager>(); rmTraceManagerMock.Setup(x => x.StartTrace(It.IsAny <string>(), It.IsAny <Guid>())); mockILoggingHelper.Setup(x => x.RMTraceManager).Returns(rmTraceManagerMock.Object); testCandidate = new RoadNameDataService(mockDatabaseFactory.Object, mockILoggingHelper.Object); }