Ejemplo n.º 1
0
    public void Test_Collision_Info_Rear()
    {
        Report.TestCaseDescription("Check propagation of detected objects from LIDAR_Rear endpoint to Dashboard endpoint");
        Object_Recognition.SelectProvider(LIDAR_Rear.Instance);

        // Iterate classification enum values
        foreach (Object_Classification_Enum classification in Enum.GetValues(typeof(Object_Classification_Enum)))
        {
            foreach (uint distance in object_distance_test_values)
            {
                Execution.Wait(200);
                Report.TestStep("Propagate detected object", "Object: " + classification.ToString() + ", Distance: " + distance.ToString());
                Object_Recognition.Object.Classification.SymbValue = classification;
                Object_Recognition.Object.Distance = distance;
                // Wait for setter call from Drive_Master to Dashboard
                var wait_result = Passenger_Information.Collision_Info_Rear.Set.WaitForNextCall(100);
                // Check for expected value (further checks omitted in this example)
                if (wait_result.Call.newValue.Distance.ImplValue != Object_Recognition.Object.Distance)
                {
                    Report.TestStepFail("Check distance", "Unexpected value received: " + wait_result.Call.newValue.Distance.ImplValue.ToString());
                }
                else
                {
                    Report.TestStepPass("Check distance", "Expected value received: " + wait_result.Call.newValue.Distance.ImplValue.ToString());
                }
            }
        }
        Object_Recognition.Object.Classification.SymbValue = Object_Classification_Enum.NO_OBJECT;
    }
Ejemplo n.º 2
0
 public override void Main()
 {
     Passenger_Information.SelectSide(ServiceSide.Provider);
     Object_Recognition.SelectSide(ServiceSide.Provider);
     Navigation.SelectSide(ServiceSide.Provider);
     //Test cases to be performed
     Test_Collision_Info_Front();
     Test_Collision_Info_Rear();
     Test_Navigation_Data();
 }
Ejemplo n.º 3
0
    public void OnObjectRear()
    {
        Object_Recognition.SelectProvider(LIDAR_Rear.Instance);
        Collision_Info collision_info = new Collision_Info();

        if (Object_Recognition.Object.Classification.SymbValue == Object_Classification_Enum.VEHICLE)
        {
            collision_info.Message        = "Vehicle: " + Object_Recognition.Object.Distance.ToString() + "m";
            collision_info.Lamp.ImplValue = 1;
        }
        else if (Object_Recognition.Object.Classification.SymbValue == Object_Classification_Enum.OBSTACLE)
        {
            collision_info.Message        = "Obstacle: " + Object_Recognition.Object.Distance.ToString() + "m";
            collision_info.Lamp.ImplValue = 1;
        }
        else if (Object_Recognition.Object.Classification.SymbValue == Object_Classification_Enum.PEDESTRIAN)
        {
            collision_info.Message        = "Pedestrian: " + Object_Recognition.Object.Distance.ToString() + "m";
            collision_info.Lamp.ImplValue = 1;
        }
        collision_info.Warn_Level.ImplValue = 64 - (uint)(Object_Recognition.Object.Distance * 64.0 / 100);
        collision_info.Distance.ImplValue   = Object_Recognition.Object.Distance;
        Passenger_Information.Collision_Info_Rear.Set.CallAsync(collision_info);
    }