在 iOS 上,NSDateFormatter 有一个“功能”,如果用户启用了 12 小时时间,它会重写您的格式字符串。
我可以很容易地解决这个问题(将格式化程序的语言环境设置为en_US_POSIX
);那不是困难。
我的困难是我想创建一个检测 12 小时重写行为的测试用例。我想进行设置,以便当我的格式化程序(它应该只发出 24 小时日期字符串)吐出 12 小时日期字符串时,至少有一个测试用例失败。
我为 SDK current(当前为 6.1)设置了一个 iOS 测试包,目标为 5.0。当我在这个目标下运行测试时,我所有的时间仍然是 24 小时。
我至少有一份关于在野外发生这种情况的报告,所以我现在需要的是在测试用例中可靠地重现它。