// SrmFileMetadata_t.cxx #include "dial_ws_srm/SrmFileMetadata.h" #include "../gsoap/dial_ws_srmH.h" #include #include #include using std::string; using std::cout; using std::endl; using dial::SrmFileMetadata; void msg(string txt) { cout << "--- "; cout << txt; cout << " ---" << endl; } typedef SrmFileMetadata::Name Name; typedef SrmFileMetadata::Size Size; typedef SrmFileMetadata::Permissions Permissions; int SrmFileMetadata_t() { msg("Check Size size"); cout << sizeof(long) << endl; assert( sizeof(Size) == sizeof(long) ); msg("Default constructor"); assert( ! SrmFileMetadata().is_valid() ); cout << sizeof(long) << endl; assert( sizeof(Size) == sizeof(long) ); msg("Create gsoap request"); string surl = "srm://srm.bnl.gov/dial/test/testfile1.dat"; string owner = "me"; string group = "us"; string cktype = "MD5"; string cksum = "123456789abcdef"; SrmFileMetadata::GsoapFileMetadata gmd; gmd.SURL = &surl; gmd.size = 1234566789L; gmd.owner = &owner; gmd.group = &group; gmd.permMode = 1234; gmd.checksumType = &cktype; gmd.checksumValue = &cksum; gmd.isPinned = true; gmd.isPermanent = false; gmd.isCached = true; msg("Create metadata object"); SrmFileMetadata md(gmd); cout << md << endl; assert( md.is_valid() ); assert( md.surl() == surl ); assert( md.size() == 1234566789L ); assert( md.owner() == owner ); assert( md.group() == group ); assert( md.checksum_type() == cktype ); assert( md.permissions() == 1234 ); assert( md.checksum() == cksum ); assert( md.is_pinned() ); assert( ! md.is_permanent() ); assert( md.is_cached() ); return 0; } #ifdef CTEST_MAIN int main() { return SrmFileMetadata_t(); } #endif