AITEST_EQUAL(TEXT("FStructView should have the same value as TArray"),ValuesF[i].Float,StructViewTest.Get<FTestStructSimple>().Float);
AITEST_EQUAL(TEXT("FStructArrayView GetAt() should have the same value as TArray"),ValuesF[i].Float,ViewF.GetAt<FTestStructSimple>(i).Float);
AITEST_TRUE(TEXT("FStructArrayView GetPtrAt() should be non Null"),ViewF.GetPtrAt<FTestStructSimple>(i)!=nullptr);
AITEST_EQUAL(TEXT("FStructArrayView GetPtrAt() should have the same value as TArray"),ValuesF[i].Float,ViewF.GetPtrAt<FTestStructSimple>(i)->Float);
AITEST_EQUAL(TEXT("FStructArrayView operator[] should have the same value as TArray"),ValuesF[i].Float,ViewF[i].Get<FTestStructSimple>().Float);
AITEST_EQUAL(TEXT("FStructArrayView Element should reflect the change done to it"),ViewF.GetAt<FTestStructSimple>(i).Float,OriginalValues[i]+Increment);
AITEST_EQUAL(TEXT("FStructArrayView Element should point at the same adress in memory as TArray"),(void*)&ValuesF[i],ViewF.GetDataAt(i));
++i;
}
AITEST_EQUAL(TEXT("FStructArrayView should have the same number of elements value as TArray"),i,ValuesF.Num());
AITEST_EQUAL(TEXT("LeftInline() modified FStructArrayView element should be the same as correpsonding element in TArray"),StructViewTest.Get<FTestStructSimple>().Float,ValuesF[i].Float);
AITEST_EQUAL(TEXT("LeftChopInline() modified FStructArrayView element should be the same as correpsonding element in TArray"),StructViewTest.Get<FTestStructSimple>().Float,ValuesF[i].Float);
AITEST_EQUAL(TEXT("RightInline() modified FStructArrayView element should be the same as correpsonding element in TArray"),StructViewTest.Get<FTestStructSimple>().Float,ValuesF[i].Float);
AITEST_EQUAL(TEXT("RightChopInline() modified FStructArrayView element should be the same as correpsonding element in TArray"),StructViewTest.Get<FTestStructSimple>().Float,ValuesF[i].Float);
AITEST_EQUAL(TEXT("MidInline() modified FStructArrayView element should be the same as correpsonding element in TArray"),StructViewTest.Get<FTestStructSimple>().Float,ValuesF[i].Float);
AITEST_EQUAL(TEXT("Slice() modified FStructArrayView element should be the same as correpsonding element in TArray"),StructViewTest.Get<FTestStructSimple>().Float,ValuesF[i].Float);
AITEST_EQUAL(TEXT("FConstStructView should have the same value as TArray"),ValuesF[i].Float,StructViewTest.Get<constFTestStructSimple>().Float);
AITEST_EQUAL(TEXT("FConstStructArrayView GetAt() should have the same value as TArray"),ValuesF[i].Float,ViewConstF.GetAt<constFTestStructSimple>(i).Float);
AITEST_TRUE(TEXT("FConstStructArrayView GetPtrAt() should be non Null"),ViewConstF.GetPtrAt<constFTestStructSimple>(i)!=nullptr);
AITEST_EQUAL(TEXT("FConstStructArrayView GetPtrAt() should have the same value as TArray"),ValuesF[i].Float,ViewConstF.GetPtrAt<constFTestStructSimple>(i)->Float);
AITEST_EQUAL(TEXT("FConstStructArrayView operator[] should have the same value as TArray"),ValuesF[i].Float,ViewConstF[i].Get<constFTestStructSimple>().Float);
AITEST_EQUAL(TEXT("FConstStructArrayView Element should reflect the change done to it"),ViewConstF.GetAt<constFTestStructSimple>(i).Float,OriginalValues[i]+Increment);
AITEST_EQUAL(TEXT("FConstStructArrayView Element should point at the same adress in memory as TArray"),(void*)&ValuesF[i],ViewConstF.GetDataAt(i));
++i;
}
AITEST_EQUAL(TEXT("FConstStructArrayView should have the same number of elements value as TArray"),i,ViewConstF.Num());
AITEST_EQUAL(TEXT("LeftInline() modified FConstStructArrayView element should be the same as correpsonding element in TArray"),StructViewTest.Get<constFTestStructSimple>().Float,ValuesF[i].Float);
AITEST_EQUAL(TEXT("LeftChopInline() modified FConstStructArrayView element should be the same as correpsonding element in TArray"),StructViewTest.Get<constFTestStructSimple>().Float,ValuesF[i].Float);
AITEST_EQUAL(TEXT("RightInline() modified FConstStructArrayView element should be the same as correpsonding element in TArray"),StructViewTest.Get<constFTestStructSimple>().Float,ValuesF[i].Float);
AITEST_EQUAL(TEXT("RightChopInline() modified FConstStructArrayView element should be the same as correpsonding element in TArray"),StructViewTest.Get<constFTestStructSimple>().Float,ValuesF[i].Float);
AITEST_EQUAL(TEXT("MidInline() modified FConstStructArrayView element should be the same as correpsonding element in TArray"),StructViewTest.Get<constFTestStructSimple>().Float,ValuesF[i].Float);
AITEST_EQUAL(TEXT("Slice() modified FConstStructArrayView element should be the same as correpsonding element in TArray"),StructViewTest.Get<constFTestStructSimple>().Float,ValuesF[i].Float);