/* * All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or * its licensors. * * For complete copyright and license terms please see the LICENSE at the root of this * distribution (the "License"). All use of this software is governed by the License, * or, if provided, by the license below or the license accompanying this file. Do not * remove or modify any license notices. This file is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * */ #include "LmbrCentral_precompiled.h" #include "LmbrCentralReflectionTest.h" #include "Shape/EditorPolygonPrismShapeComponent.h" namespace LmbrCentral { // Serialized legacy EditorPolygonPrismShapeComponent v1. const char kEditorPolygonPrismComponentVersion1[] = R"DELIMITER( )DELIMITER"; class LoadEditorPolygonPrismShapeComponentFromVersion1 : public LoadEditorComponentTest { protected: const char* GetSourceDataBuffer() const override { return kEditorPolygonPrismComponentVersion1; } }; TEST_F(LoadEditorPolygonPrismShapeComponentFromVersion1, Application_IsRunning) { ASSERT_NE(GetApplication(), nullptr); } TEST_F(LoadEditorPolygonPrismShapeComponentFromVersion1, Components_Load) { EXPECT_NE(m_object.get(), nullptr); } TEST_F(LoadEditorPolygonPrismShapeComponentFromVersion1, EditorComponent_Found) { EXPECT_EQ(m_entity->GetComponents().size(), 2); EXPECT_NE(m_entity->FindComponent(m_object->GetId()), nullptr); } TEST_F(LoadEditorPolygonPrismShapeComponentFromVersion1, Height_MatchesSourceData) { AZ::ConstPolygonPrismPtr polygonPrism; PolygonPrismShapeComponentRequestBus::EventResult(polygonPrism, m_entity->GetId(), &PolygonPrismShapeComponentRequestBus::Events::GetPolygonPrism); EXPECT_FLOAT_EQ(polygonPrism->GetHeight(), 1.57f); } TEST_F(LoadEditorPolygonPrismShapeComponentFromVersion1, Vertices_MatchesSourceData) { AZ::ConstPolygonPrismPtr polygonPrism; PolygonPrismShapeComponentRequestBus::EventResult(polygonPrism, m_entity->GetId(), &PolygonPrismShapeComponentRequestBus::Events::GetPolygonPrism); AZStd::vector sourceVertices = { AZ::Vector2(-0.57f, -0.57f), AZ::Vector2(0.57f, -0.57f), AZ::Vector2(0.57f, 0.57f), AZ::Vector2(-0.57f, 0.57f) }; EXPECT_EQ(polygonPrism->m_vertexContainer.GetVertices(), sourceVertices); } }