diff options
| -rw-r--r-- | slicer/test/conversions.cpp | 12 | ||||
| -rw-r--r-- | slicer/test/preprocessor.cpp | 2 | ||||
| -rw-r--r-- | slicer/test/types.ice | 13 | 
3 files changed, 26 insertions, 1 deletions
diff --git a/slicer/test/conversions.cpp b/slicer/test/conversions.cpp index fe0537c..1ea6239 100644 --- a/slicer/test/conversions.cpp +++ b/slicer/test/conversions.cpp @@ -77,5 +77,17 @@ namespace Slicer {  				SHORT(tm.tm_year + 1900), SHORT(tm.tm_mon + 1), SHORT(tm.tm_mday),  				SHORT(tm.tm_hour), SHORT(tm.tm_min), SHORT(tm.tm_sec)});  	} + +	::DB::Timespan +	timedurationToTimespan(const boost::posix_time::time_duration & td) +	{ +		return ::DB::Timespan({ SHORT(td.hours() / 24), SHORT(td.hours() % 24), SHORT(td.minutes()), SHORT(td.seconds()) }); +	} + +	boost::posix_time::time_duration +	timespanToTimeduration(const ::DB::Timespan & ts) +	{ +		return boost::posix_time::time_duration((ts.days * 24) + ts.hours, ts.minutes, ts.seconds); +	}  } diff --git a/slicer/test/preprocessor.cpp b/slicer/test/preprocessor.cpp index 9c1218b..bef901e 100644 --- a/slicer/test/preprocessor.cpp +++ b/slicer/test/preprocessor.cpp @@ -13,7 +13,7 @@  namespace fs = boost::filesystem; -const unsigned int COMPONENTS_IN_TEST_ICE = 30; +const unsigned int COMPONENTS_IN_TEST_ICE = 32;  BOOST_FIXTURE_TEST_SUITE ( preprocessor, FileStructure ); diff --git a/slicer/test/types.ice b/slicer/test/types.ice index 8f44fa0..73da2a0 100644 --- a/slicer/test/types.ice +++ b/slicer/test/types.ice @@ -134,3 +134,16 @@ module TestModule2 {  	};  }; +module DB { +	[	"slicer:conversion:boost.posix_time.time_duration:timedurationToTimespan:timespanToTimeduration" ] +	struct Timespan { +		int days; +		short hours; +		short minutes; +		short seconds; +	}; +	class SpecificTypes extends TestModule::DateTimeContainer { +		Timespan ts; +	}; +}; +  | 
