示例#1
0
 public void ToFromBinary_TAGFileBufferQueueKey_WithFileNameProjectAndAsset()
 {
     SimpleBinarizableInstanceTester.TestStruct(new TAGFileBufferQueueKey
     {
         FileName   = "A-TAG-File.tag",
         ProjectUID = Guid.NewGuid(),
         AssetUID   = Guid.NewGuid()
     },
                                                "TAGFileBufferQueueKey with file name, project and asset UIDs not same after round trip serialisation");
 }
示例#2
0
 public void ToFromBinary_SubGridSpatialAffinityKey_WithProjectUIDAndLocation()
 {
     SimpleBinarizableInstanceTester.TestStruct(new SubGridSpatialAffinityKey
     {
         Version    = 123,
         ProjectUID = Guid.NewGuid(),
         SubGridX   = 12345,
         SubGridY   = 56789
     },
                                                "SubGridSpatialAffinityKey with Project UID and location not same after round trip serialisation");
 }
示例#3
0
 public void Test_CellSpatialFilter_IsPositional()
 {
     SimpleBinarizableInstanceTester.TestClassEx <CellSpatialFilter>(new CellSpatialFilter
     {
         PositionX      = 10,
         PositionY      = 11,
         PositionRadius = 123,
         IsPositional   = true
     },
                                                                     "Cell spatial filter (IsPositional) not the same after round trip serialisation");
 }
示例#4
0
        public void Test_Fence()
        {
            var fence = new Fence();

            fence.Points.Add(new FencePoint(0, 0));
            fence.Points.Add(new FencePoint(0, 10));
            fence.Points.Add(new FencePoint(10, 10));
            fence.Points.Add(new FencePoint(10, 0));
            fence.UpdateExtents();

            SimpleBinarizableInstanceTester.TestExtension(fence, "Fence with points not same after round trip serialisation");
        }
示例#5
0
 public void ToFromBinary_SubGridSpatialAffinityKey_WithProjectUIDLocationAndSegmentIdentifier()
 {
     SimpleBinarizableInstanceTester.TestStruct(new SubGridSpatialAffinityKey
     {
         Version               = 123,
         ProjectUID            = Guid.NewGuid(),
         SubGridX              = 12345,
         SubGridY              = 56789,
         SegmentStartDateTicks = 123,
         SegmentEndDateTicks   = 456
     },
                                                "SubGridSpatialAffinityKey with Project UID, location and segment identifier not same after round trip serialisation");
 }
示例#6
0
 public void Test_CellSpatialFilter_IsAlignmentFence()
 {
     SimpleBinarizableInstanceTester.TestClassEx <CellSpatialFilter>(new CellSpatialFilter
     {
         IsAlignmentMask = true,
         StartStation    = 0.0,
         EndStation      = 123.0,
         LeftOffset      = 5,
         RightOffset     = 7.5,
         AlignmentFence  = new Fence(0, 0, 10, 10),
         AlignmentDesignMaskDesignUID = Guid.NewGuid()
     },
                                                                     "Cell spatial filter (IsAlignmentFence) not the same after round trip serialisation");
 }
示例#7
0
        public void Test_SiteModelMetadata()
        {
            var argument = new SiteModelMetadata
            {
                ID = Guid.NewGuid(),
                SiteModelExtent      = BoundingWorldExtent3D.Full(),
                CreationDate         = DateTime.UtcNow,
                LastModifiedDate     = DateTime.UtcNow,
                MachineCount         = 10,
                DesignCount          = 5,
                SurveyedSurfaceCount = 3,
                AlignmentCount       = 1
            };

            var result = SimpleBinarizableInstanceTester.TestClass(argument, "Custom SiteModelMetadata not same after round trip serialisation");

            argument.LastModifiedDate.Should().Be(result.member.LastModifiedDate, "Dates are not equal");
        }
示例#8
0
        public void Test_TAGFileBufferQueueItem()
        {
            var testDate = DateTime.SpecifyKind(new DateTime(2000, 1, 1, 1, 1, 1, 1), DateTimeKind.Utc);
            var filter   = new TAGFileBufferQueueItem
            {
                Content   = new byte[] { 1, 10, 25, 100 },
                InsertUTC = testDate,
                ProjectID = Guid.NewGuid(),
                AssetID   = Guid.NewGuid(),
                IsJohnDoe = true,
                FileName  = "fileName"
            };

            var result = SimpleBinarizableInstanceTester.TestClass(filter, "Custom TAGFileBufferQueueItem not same after round trip serialisation");

            Assert.True(result.member.FileName.Equals("fileName") &&
                        result.member.InsertUTC.Equals(testDate),
                        "Post IEquality<T> comparer based comparison failure");
        }
示例#9
0
        public void Test_OverrideParameters_Custom()
        {
            var overrides = new OverrideParameters
            {
                OverrideMachineCCV                 = true,
                OverridingMachineCCV               = 72,
                CMVRange                           = new CMVRangePercentageRecord(91, 108),
                OverrideMachineMDP                 = true,
                OverridingMachineMDP               = 24,
                MDPRange                           = new MDPRangePercentageRecord(87, 123),
                OverridingTargetPassCountRange     = new PassCountRangeRecord(3, 7),
                OverrideTargetPassCount            = true,
                OverridingTemperatureWarningLevels = new TemperatureWarningLevelsRecord(250, 692),
                OverrideTemperatureWarningLevels   = true,
                TargetMachineSpeed                 = new MachineSpeedExtendedRecord(12, 163),
            };

            SimpleBinarizableInstanceTester.TestClass(overrides, "Custom override parameters not same after round trip serialisation");
        }
示例#10
0
        public void Test_SubGridsRequestArgument()
        {
            var argument = new SubGridsRequestArgument()
            {
                TRexNodeID                        = Guid.NewGuid(),
                ProjectID                         = Guid.NewGuid(),
                Filters                           = new FilterSet(new CombinedFilter()),
                ReferenceDesign                   = new DesignOffset(Guid.NewGuid(), 1.5),
                RequestID                         = Guid.NewGuid(),
                GridDataType                      = GridDataType.CCV,
                ProdDataMaskBytes                 = new byte[] { 1, 5, 3, 7 },
                SurveyedSurfaceOnlyMaskBytes      = new byte[] { 0, 4, 1, 2 },
                OriginatingIgniteNodeId           = Guid.NewGuid(),
                IncludeSurveyedSurfaceInformation = true,
                AreaControlSet                    = new AreaControlSet(true, 12345, 6789, 3344, 5566, 44)
            };

            SimpleBinarizableInstanceTester.TestClass(argument, "Custom SubGridsRequestArgument not same after round trip serialisation");
        }
示例#11
0
        public void Test_SiteModelAttributesChangedEvent_WithNullMask()
        {
            var argument = new SiteModelAttributesChangedEvent
            {
                SiteModelID                 = Guid.NewGuid(),
                ExistenceMapModified        = true,
                CsibModified                = true,
                DesignsModified             = true,
                SurveyedSurfacesModified    = true,
                MachinesModified            = true,
                MachineTargetValuesModified = true,
                MachineDesignsModified      = true,
                ProofingRunsModified        = true,
                AlignmentsModified          = true,
                ExistenceMapChangeMask      = null
            };

            SimpleBinarizableInstanceTester.TestClass(argument, "Custom SiteModelAttributesChangedEvent not same after round trip serialisation");
        }
示例#12
0
        public void ToFromBinary_FilterSet_FencePoints2()
        {
            var fence = new Fence();

            fence.Points.Add(new FencePoint(1, 50));
            fence.Points.Add(new FencePoint(2, 51));
            fence.UpdateExtents();

            FilterSet filterSet = new FilterSet();

            filterSet.Filters = new ICombinedFilter[1];
            var cf =
                new CombinedFilter
                    (new CellPassAttributeFilter()
            {
            },
                    new CellSpatialFilter()
            {
                PositionX      = 34,
                PositionY      = 56,
                PositionRadius = 4,
                IsSquare       = false,
                CoordsAreGrid  = true
            }
                    );

            cf.SpatialFilter.Fence = fence;

            filterSet.Filters[0] = cf;

            var result = SimpleBinarizableInstanceTester.TestClassEx(filterSet,
                                                                     "FilterSet with one empty filter not same after round trip serialisation");

            filterSet.Filters.Length.Should().Be(1, "spatialFenceFilter count is wrong");
            filterSet.Filters[0].SpatialFilter.Fence.Points.Count
            .Should().Be(2, "spatialFenceYCoords count is wrong");
            filterSet.Filters[0].SpatialFilter.Fence[0].Y
            .Should().Be(result.member.Filters[0].SpatialFilter.Fence[0].Y,
                         "spatialFenceYCoords are not equal");
        }
示例#13
0
        public void Test_LiftParameters_Custom()
        {
            var liftParameters = new LiftParameters()
            {
                OverrideMachineThickness    = true,
                LiftDetectionType           = LiftDetectionType.Tagfile,
                LiftThicknessType           = LiftThicknessType.Uncompacted,
                TargetLiftThickness         = 0.2,
                MDPSummarizeTopLayerOnly    = false,
                MDPSummaryTypes             = MDPSummaryTypes.Thickness,
                CCVSummarizeTopLayerOnly    = false,
                CCVSummaryTypes             = CCVSummaryTypes.WorkInProgress,
                IncludeSuperseded           = true,
                FirstPassThickness          = 1.0f,
                DeadBandUpperBoundary       = 0.8,
                DeadBandLowerBoundary       = 0.3,
                BelowToleranceLiftThickness = 0.05,
                AboveToleranceLiftThickness = 0.95,
                OverridingLiftThickness     = 0.5
            };

            SimpleBinarizableInstanceTester.TestClass(liftParameters, "Custom lift parameters not same after round trip serialisation");
        }
示例#14
0
 public void Test_CellSpatialFilter_Simple()
 {
     SimpleBinarizableInstanceTester.TestClassEx <CellSpatialFilter>();
 }
示例#15
0
 public void Test_SegmentRetirementQueueItem_Simple()
 {
     SimpleBinarizableInstanceTester.TestClass <SegmentRetirementQueueItem>("Empty SegmentRetirementQueueItem not same after round trip serialisation");
 }
示例#16
0
 public void Test_FromTo_BoundingWorldExtent3D_Simple()
 {
     SimpleBinarizableInstanceTester.TestExtension <BoundingWorldExtent3D>();
 }
示例#17
0
 public void Test_FromTo_BoundingWorldExtent3D_Full3DExtent()
 {
     SimpleBinarizableInstanceTester.TestExtension <BoundingWorldExtent3D>(new BoundingWorldExtent3D(0, 1, 100, 101, 200, 201),
                                                                           "Bounding world 3D with full 3D extent not same after round trip serialization");
 }
示例#18
0
 public void Test_RoleBasedServerNodeFilter_Simple()
 {
     SimpleBinarizableInstanceTester.TestClass <SegmentRetirementQueueQueryFilter>("Empty SegmentRetirementQueueQueryFilter not same after round trip serialisation");
 }
示例#19
0
 public void ToFromBinary_SubGridSpatialAffinityKey_Simple()
 {
     SimpleBinarizableInstanceTester.TestStruct <SubGridSpatialAffinityKey>("Empty SubGridSpatialAffinityKey not same after round trip serialisation");
 }
示例#20
0
 public void ToFromBinary_CombinedFilter_Simple()
 {
     SimpleBinarizableInstanceTester.TestClassEx <CombinedFilter>("Empty CombinedFilter not same after round trip serialisation");
 }
示例#21
0
        public void Test_RoleBasedClientNodeFilter()
        {
            var filter = new RoleBasedClientNodeFilter("Role");

            SimpleBinarizableInstanceTester.TestClass(filter, "Custom RoleBasedClientNodeFilter not same after round trip serialisation");
        }
示例#22
0
        public void Test_PSNodeRoleBasedNodeFilter()
        {
            var filter = new PSNodeRoleBasedNodeFilter();

            SimpleBinarizableInstanceTester.TestClass(filter, "Custom PSNodeRoleBasedNodeFilter not same after round trip serialisation");
        }
示例#23
0
 public void Test_SiteModelMetadata_Simple()
 {
     SimpleBinarizableInstanceTester.TestClass <SiteModelMetadata>("Empty SiteModelMetadata not same after round trip serialisation");
 }
示例#24
0
 public void Test_CellPassAttributeFilter_Simple()
 {
     SimpleBinarizableInstanceTester.TestClassEx <CellPassAttributeFilter>();
 }
示例#25
0
 public void Test_RoleBasedServerNodeFilter_Simple()
 {
     SimpleBinarizableInstanceTester.TestClass <RoleBasedServerNodeFilter>("Empty RoleBasedServerNodeFilter not same after round trip serialisation");
 }
示例#26
0
 public void Test_AreaControlSet_Simple()
 {
     SimpleBinarizableInstanceTester.TestClassEx <AreaControlSet>("Empty AreaControlSet not same after round trip serialisation");
 }
示例#27
0
 public void Test_OverrideParameters_Simple()
 {
     SimpleBinarizableInstanceTester.TestClass <OverrideParameters>("Empty override parameters not same after round trip serialisation");
 }
示例#28
0
        public void Test_LiftParameters_Defaults()
        {
            var liftParameters = new LiftParameters();

            SimpleBinarizableInstanceTester.TestClass(liftParameters, "Default lift parameters not same after round trip serialisation");
        }
示例#29
0
        public void Test_OverrideParameters_Defaults()
        {
            var overrides = new OverrideParameters();

            SimpleBinarizableInstanceTester.TestClass(overrides, "Default override parameters not same after round trip serialisation");
        }
示例#30
0
 public void Test_SiteModelAttributesChangedEvent_Simple()
 {
     SimpleBinarizableInstanceTester.TestClass <SiteModelAttributesChangedEvent>("Empty SiteModelAttributesChangedEvent not same after round trip serialisation");
 }