From e6a3a3dfdad189a7aa70985698da16a3c5e11a83 Mon Sep 17 00:00:00 2001 From: Kimura Youichi Date: Sat, 26 Nov 2016 12:32:43 +0900 Subject: [PATCH] =?utf8?q?=E5=B0=8F=E6=95=B0=E7=82=B9=E3=81=AB=E3=83=94?= =?utf8?q?=E3=83=AA=E3=82=AA=E3=83=89=E4=BB=A5=E5=A4=96=E3=81=AE=E8=A8=98?= =?utf8?q?=E5=8F=B7=E3=82=92=E7=94=A8=E3=81=84=E3=82=8B=E3=82=AB=E3=83=AB?= =?utf8?q?=E3=83=81=E3=83=A3=E3=81=A7=20double.Parse=20=E3=81=AB=E5=A4=B1?= =?utf8?q?=E6=95=97=E3=81=99=E3=82=8B=E4=B8=8D=E5=85=B7=E5=90=88=E3=82=92?= =?utf8?q?=E4=BF=AE=E6=AD=A3=20(thx=20@Xiatian!)?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit https://osdn.net/ticket/browse.php?group_id=6526&tid=35878 Fixes: 74df0fc9 ("動作しなくなっていたFoursquareのサムネイル表示を再実装") --- .../Thumbnail/Services/FoursquareCheckinTest.cs | 34 ++++++++++++++++++++++ OpenTween/Resources/ChangeLog.txt | 1 + OpenTween/Thumbnail/Services/FoursquareCheckin.cs | 5 ++-- 3 files changed, 38 insertions(+), 2 deletions(-) diff --git a/OpenTween.Tests/Thumbnail/Services/FoursquareCheckinTest.cs b/OpenTween.Tests/Thumbnail/Services/FoursquareCheckinTest.cs index d10db266..fe97164c 100644 --- a/OpenTween.Tests/Thumbnail/Services/FoursquareCheckinTest.cs +++ b/OpenTween.Tests/Thumbnail/Services/FoursquareCheckinTest.cs @@ -21,6 +21,7 @@ using System; using System.Collections.Generic; +using System.Globalization; using System.Linq; using System.Net; using System.Net.Http; @@ -236,6 +237,39 @@ namespace OpenTween.Thumbnail.Services } [Fact] + public void ParseInLocation_CultureTest() + { + var json = @"{ + ""meta"": { ""code"": 200 }, + ""response"": { + ""checkin"": { + ""id"": ""xxxxxxxxx"", + ""type"": ""checkin"", + ""venue"": { + ""id"": ""4b73dedcf964a5206bbe2de3"", + ""name"": ""高松駅 (Takamatsu Sta.)"", + ""location"": { + ""lat"": 34.35067978344854, + ""lng"": 134.04693603515625 + } + } + } + } +}"; + var origCulture = Thread.CurrentThread.CurrentCulture; + Thread.CurrentThread.CurrentCulture = new CultureInfo("ru-RU"); + + var jsonBytes = Encoding.UTF8.GetBytes(json); + var location = FoursquareCheckin.ParseIntoLocation(jsonBytes); + + Thread.CurrentThread.CurrentCulture = origCulture; + + Assert.NotNull(location); + Assert.Equal(34.35067978344854, location.Latitude); + Assert.Equal(134.04693603515625, location.Longitude); + } + + [Fact] public void ParseInLocation_PlanetTest() { var json = @"{ diff --git a/OpenTween/Resources/ChangeLog.txt b/OpenTween/Resources/ChangeLog.txt index b60729ab..2d740c03 100644 --- a/OpenTween/Resources/ChangeLog.txt +++ b/OpenTween/Resources/ChangeLog.txt @@ -1,6 +1,7 @@ 更新履歴 ==== Ver 1.3.7-dev(2016/xx/xx) + * FIX: OSの設定で小数点にピリオド以外の記号を用いている環境で、Foursquareのサムネイル表示時にエラーが発生する不具合を修正 (thx @Xiatian!) ==== Ver 1.3.6(2016/11/22) * NEW: 画像アップロード時のタイムアウト時間が変更できるようになりました diff --git a/OpenTween/Thumbnail/Services/FoursquareCheckin.cs b/OpenTween/Thumbnail/Services/FoursquareCheckin.cs index 9b7caff8..9ed5b589 100644 --- a/OpenTween/Thumbnail/Services/FoursquareCheckin.cs +++ b/OpenTween/Thumbnail/Services/FoursquareCheckin.cs @@ -21,6 +21,7 @@ using System; using System.Collections.Generic; +using System.Globalization; using System.Net.Http; using System.Runtime.Serialization.Json; using System.Text.RegularExpressions; @@ -195,8 +196,8 @@ namespace OpenTween.Thumbnail.Services return new GlobalLocation { - Latitude = double.Parse(locationElm.Element("lat").Value), - Longitude = double.Parse(locationElm.Element("lng").Value), + Latitude = double.Parse(locationElm.Element("lat").Value, CultureInfo.InvariantCulture), + Longitude = double.Parse(locationElm.Element("lng").Value, CultureInfo.InvariantCulture), }; } } -- 2.11.0