AcceptanceTests.Asserts.Export.SpatialValueAssert.AreEqual C# (CSharp) Méthode

AreEqual() public static méthode

public static AreEqual ( ISOSpatialRow isoSpatialRow, AgGateway.ADAPT.ApplicationDataModel.LoggedData.SpatialRecord adaptSpatialRecord, List meters ) : void
isoSpatialRow AgGateway.ADAPT.ISOv4Plugin.ObjectModel.ISOSpatialRow
adaptSpatialRecord AgGateway.ADAPT.ApplicationDataModel.LoggedData.SpatialRecord
meters List
Résultat void
        public static void AreEqual(ISOSpatialRow isoSpatialRow, SpatialRecord adaptSpatialRecord, List<WorkingData> meters)
        {
            foreach (var meter in meters)
            {
                var adaptValue = adaptSpatialRecord.GetMeterValue(meter);
                if(adaptValue == null)
                    continue;

                var isoValue = isoSpatialRow.SpatialValues.Single(v => v.Id == meter.Id.FindIntIsoId());

                var adaptEnumeratedValue = adaptValue as EnumeratedValue;
                if (adaptEnumeratedValue != null)
                {
                    var representation = RepresentationManager.Instance.Representations.First(x => x.DomainId == adaptEnumeratedValue.Representation.Code);
                    Assert.AreEqual(representation.Ddi.GetValueOrDefault(), Convert.ToInt32(isoValue.Dlv.A, 16));

                    if(representation.Ddi == 141)
                        CompareWorkState(adaptEnumeratedValue, isoValue);
                    if (representation.Ddi == 157)
                        CompareConnectorType(adaptEnumeratedValue, isoValue);
                    if (representation.Ddi == 158)
                        ComparePrescriptionControl(adaptEnumeratedValue, isoValue);
                    if (representation.Ddi == 160)
                        CompareSectionControlState(adaptEnumeratedValue, isoValue);
                    if (representation.Ddi >= 161 && representation.Ddi <= 176)
                        CompareCondensedWorkState(adaptEnumeratedValue, isoValue);
                    if (representation.Ddi == 210)
                        CompareSkyConditions(adaptEnumeratedValue, isoValue);
                    if (representation.Ddi == 230)
                        CompareNetWeightState(adaptEnumeratedValue, isoValue);
                    if (representation.Ddi == 240)
                        CompareActualLoadingSystemStatus(adaptEnumeratedValue, isoValue);
                    if (representation.Ddi >= 290 && representation.Ddi < 305)
                        CompareCondensedWorkState(adaptEnumeratedValue, isoValue);
                    if (representation.Ddi >= 367 && representation.Ddi <= 382)
                        CompareCondensedSectionOverrideState(adaptEnumeratedValue, isoValue);
                }

                var adaptNumericValue = adaptValue as NumericRepresentationValue;
                if (adaptNumericValue != null)
                {
                    var representation = RepresentationManager.Instance.Representations.FirstOrDefault(x => x.DomainId == adaptNumericValue.Representation.Code);
                    if (representation != null)
                        Assert.AreEqual(representation.Ddi, Convert.ToInt32(isoValue.Dlv.A, 16));

                    Assert.AreEqual(adaptNumericValue.Value.Value, isoValue.Value);
                }
            }
        }

Usage Example

Exemple #1
0
        private static void AreEqual(SpatialRecord adaptSpatialRecord, ISOSpatialRow isoSpatialRow, List <WorkingData> meters)
        {
            Assert.AreEqual(adaptSpatialRecord.Timestamp, isoSpatialRow.TimeStart);

            var point = (Point)adaptSpatialRecord.Geometry;

            Assert.AreEqual((int)(point.X / CoordinateMultiplier), isoSpatialRow.EastPosition, CoordinateMultiplier);
            Assert.AreEqual((int)(point.Y / CoordinateMultiplier), isoSpatialRow.NorthPosition, CoordinateMultiplier);
            Assert.AreEqual(point.Z, isoSpatialRow.Elevation);

            SpatialValueAssert.AreEqual(isoSpatialRow, adaptSpatialRecord, meters);
        }