1*9560d06aSjeremylt /// @file 2*9560d06aSjeremylt /// Test creation, copying, and destroying of a vector 3*9560d06aSjeremylt /// \test Test creation, copying, and destroying of a vector 4*9560d06aSjeremylt #include <ceed.h> 5*9560d06aSjeremylt 6*9560d06aSjeremylt int main(int argc, char **argv) { 7*9560d06aSjeremylt Ceed ceed; 8*9560d06aSjeremylt CeedVector x, x_2; 9*9560d06aSjeremylt CeedInt n; 10*9560d06aSjeremylt 11*9560d06aSjeremylt CeedInit(argv[1], &ceed); 12*9560d06aSjeremylt 13*9560d06aSjeremylt n = 10; 14*9560d06aSjeremylt CeedVectorCreate(ceed, n, &x); 15*9560d06aSjeremylt CeedVectorCreate(ceed, n+1, &x_2); 16*9560d06aSjeremylt 17*9560d06aSjeremylt CeedVectorReferenceCopy(x, &x_2); // This destroys the previous x_2 18*9560d06aSjeremylt CeedVectorDestroy(&x); 19*9560d06aSjeremylt 20*9560d06aSjeremylt CeedInt len; 21*9560d06aSjeremylt CeedVectorGetLength(x_2, &len); // Second reference still valid 22*9560d06aSjeremylt if (len != n) 23*9560d06aSjeremylt // LCOV_EXCL_START 24*9560d06aSjeremylt printf("Error copying CeedVector reference."); 25*9560d06aSjeremylt // LCOV_EXCL_STOP 26*9560d06aSjeremylt 27*9560d06aSjeremylt CeedVectorDestroy(&x_2); 28*9560d06aSjeremylt CeedDestroy(&ceed); 29*9560d06aSjeremylt return 0; 30*9560d06aSjeremylt } 31