- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一些单元测试在夏令时切换后今天开始失败。
我们正在使用 iCalendar python module加载和保存 ics 文件。
以下脚本是我们测试的简化版本。截至今天早上,该脚本在“夏季”运行良好,在“冬季”运行失败。可以通过手动将时钟调回来重现故障。这是脚本的输出:
[root@ana icalendar]# date 10250855
Sat Oct 25 08:55:00 CEST 2008
[root@ana icalendar]# python dst.py
DTSTART should represent datetime.datetime(2015, 4, 4, 8, 0, tzinfo=tzfile('/usr/share/zoneinfo/Europe/Brussels')) Brussels time
DTSTART should represent datetime.datetime(2015, 4, 4, 6, 0, tzinfo=<icalendar.prop.UTC object at 0x956b5cc>) UTC
DTSTART represents datetime.datetime(2015, 4, 4, 6, 0, tzinfo=<icalendar.prop.UTC object at 0x956b5cc>) Brussels time
[root@ana icalendar]# date 10260855
Sun Oct 26 08:55:00 CET 2008
[root@ana icalendar]# python dst.py
DTSTART should represent datetime.datetime(2015, 4, 4, 8, 0, tzinfo=tzfile('/usr/share/zoneinfo/Europe/Brussels')) Brussels time
DTSTART should represent datetime.datetime(2015, 4, 4, 6, 0, tzinfo=<icalendar.prop.UTC object at 0x96615cc>) UTC
DTSTART represents datetime.datetime(2015, 4, 4, 7, 0, tzinfo=<icalendar.prop.UTC object at 0x96615cc>) Brussels time
Traceback (most recent call last):
File "dst.py", line 58, in <module>
start.dt, startUTCExpected)
AssertionError: calendar's datetime.datetime(2015, 4, 4, 7, 0, tzinfo=<icalendar.prop.UTC object at 0x96615cc>) != expected datetime.datetime(2015, 4, 4, 6, 0, tzinfo=<icalendar.prop.UTC object at 0x96615cc>)
这里是 whole script .
所以,问题: - 为什么我的当前时间(以及我所在的 DST 的哪一部分)会影响时间戳的加载/保存/解析?我希望它不会。 - 如果它是一个错误,你将如何对这种错误进行单元测试?显然,我不希望我的单元测试重置计算机上的时钟。
最佳答案
不看你的代码(我的大脑现在无法理解引用的测试运行脚本)我注意到你试图获得一个与你所在的时区不同的时间。(将 DST 视为另一个时区,而不是当前时区的 +-1 小时)。这可能(取决于你如何做)导致工作时间的增加或减少。(就像你坐飞机的时候,你一次出发,然后在出发前到达你的位置,都是本地时间)
关于python - 夏令时更改会影响保存和加载 icalendar 文件的结果吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/237731/
我必须在 icalendar 文件中使用多个重复规则和异常(exception)规则,正如我在规范( RFC 2445 )中读到的那样,可以指定重复规则和异常(exception)规则的多个实例来定义
我有带有 RRULE 的 iCalendar 文件用于出现。如何根据 iCal 文件中的给定开始日期和 RRULE 获取事件发生的日期列表。 在 Java 中,我想编写一个方法,它应该采用开始日期和
我正在通读 RFC 5545 并试图确定如何正确地找到一组事件。假设我有一个 WEEKLY rrule = 2(每隔一周)。我还为周二、周三、周四指定了 BYDAY 规则部分。假设我的开始日期是 20
iCalendar 和 CalDav 之间有什么区别? 最佳答案 CalDAV 是 WebDAV 的协议(protocol)扩展,可用于操作 iCalendar 格式的数据。所以 CalDAV 就像日
我想根据 RFC 将多个事件分组到单个 ICS 文件(iCalendar 流)中。这是可以做到的,但我不知道如何做到。谁能帮助我或给我一个例子? 这是 rfc 所说的: However, multip
我对 iCalendar 规范 RFC 5545 中的属性 RECURRENCE-ID 和此属性中的 RANGE 参数有点困惑。 假设一个日历组件包含一个称为“ session ”的重复事件,该事件应
在 iCalendar spec我发现以下关于DTSTAMP : This property is different than the "CREATED" and "LAST-MODIFIED" p
我想通过邮件以附件形式发送预订信息以添加到 MS Outlook 中。哪种格式更好?特别是对于 MS Outlook 2003? 最佳答案 iCalendar基于vCalendar Outlook 2
有人能给我一个生成 icalendar 的 VTIMEZONE 部分的例子吗?使用 python 的文件 icalendar图书馆? 我相信这可以通过使用 icalendar.cal.Timezone
我正在使用优秀的 DDay.iCal从 Google 日历读取 iCal 文件。 每个 iCal 文件都有一个 X-WR-CALNAME 的非标准属性。 如何将它添加到 DDay.iCal.iCale
我认为我有一个包含 2 个测试事件的几乎最小的日历: BEGIN:VCALENDAR VERSION:2.0 BEGIN:VEVENT UID:Q1 DTSTAMP:20170504 SUMMARY:
我在为跨越多天的全天事件获取正确语法时遇到问题。这是我的 ICAL 事件: BEGIN:VCALENDAR VERSION:2.0 PRODID:-//http://XXX//Event METHOD
我需要从组织者的日历中检索与会者列表。为此,我需要确定另一个用户日历中的同一事件。 Exchange 正在链接相关事件,但该属性可能不会通过 Microsoft Graph API 公开,并且事件 i
您好,是否可以在 Vcalendar 中指定一个“昵称”作为 ATTENDEE。这样一来,电子邮件地址就不会出现在电子邮件的“必填”字段中,而是会显示一个更友好的名称吗?感谢您的帮助 米克 最佳答案
我使用以下代码在文件中生成日期: echo "DTSTART;TZID=" . date_default_timezone_get() . ":" . strftime('%Y%m%d', strto
问题 一些重复发生的事件并没有真正在某个时候结束(比如俱乐部 session ?),取决于其他条件(比如假期)。但是,每年都需要手动添加这些异常(exception)情况,因为日期可能不同。 研究 我
我试图了解 iCal feed 和 iCalendar 客户端如何处理过去和 future 的大量事件。有没有什么方法可以让 iCalendar 客户端将日期范围传达给 iCalendar 提要,以便
我有这个 iCal 文件: BEGIN:VCALENDARMETHOD:REQUESTPRODID:TestVERSION:2.0BEGIN:VTIMEZONETZID:TestZoneBEGIN:S
我通过 SMTP 正确发送 iCalendar session 请求(使用下面的代码),但是当我尝试附加文件时,该文件不会显示为 iCalendar 的一部分。在 Outlook 中打开 .ics 后
如何使用 RFC5545 中指定的 RRULE 使事件一天发生多次? 假设我希望每隔一周的周一和周五上午 11 点和晚上 18 点举办一次事件。是否可以像下面这样格式化 RRULE: RRULE:
我是一名优秀的程序员,十分优秀!