[TestMethod]
public void DateTimeConvertTest() {
var ruTimeZone = TimeZoneInfo.FindSystemTimeZoneById( "Russian Standard Time" );
var euTimeZone = TimeZoneInfo.FindSystemTimeZoneById( "Central Europe Standard Time" );
DateTime ruDate, euDate;
euDate = new DateTime( 2013, 02, 13, 9, 0, 0 );
ruDate = TimeZoneInfo.ConvertTime( euDate, euTimeZone, ruTimeZone );
Assert.AreEqual( new TimeSpan( 3, 0, 0 ), ruDate - euDate );
euDate = new DateTime( 2017, 02, 13, 9, 0, 0 );
ruDate = TimeZoneInfo.ConvertTime( euDate, euTimeZone, ruTimeZone );
Assert.AreEqual( new TimeSpan( 2, 0, 0 ), ruDate - euDate );
euDate = new DateTime( 2013, 06, 13, 9, 0, 0 );
ruDate = TimeZoneInfo.ConvertTime( euDate, euTimeZone, ruTimeZone );
Assert.AreEqual( new TimeSpan( 2, 0, 0 ), ruDate - euDate );
euDate = new DateTime( 2017, 06, 13, 9, 0, 0 );
ruDate = TimeZoneInfo.ConvertTime( euDate, euTimeZone, ruTimeZone );
Assert.AreEqual( new TimeSpan( 1, 0, 0 ), ruDate - euDate );
}