public void ConvertToCinemas_ThrowsExceptionWhenBadFormat() { IKinoheldJsonWorker worker = new KinoheldJsonWorker(); Assert.Throws <InvalidCastException>( () => worker.ConvertToCinemas(JObject.Parse("{\r\n \"cinemass\": [\r\n {\r\n \"id\": \"2127\",\r\n \"name\": \"Kino Aurich\",\r\n \"street\": \"Emder Straße 5\",\r\n \"city\": {\r\n \"name\": \"Aurich\"\r\n },\r\n \"distance\": 3.2250148700598,\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich\"\r\n }\r\n },\r\n {\r\n \"id\": \"1613\",\r\n \"name\": \"Autokino Aurich-Tannenhausen\",\r\n \"street\": \"Am Stadion 14\",\r\n \"city\": {\r\n \"name\": \"Aurich\"\r\n },\r\n \"distance\": 4.7613563356582,\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/autokino-aurich-tannenhausen?layout=shows\"\r\n }\r\n }\r\n ]\r\n}"))); }
public void ConvertToShows_ThrowsExceptionWhenBadFormat() { IKinoheldJsonWorker worker = new KinoheldJsonWorker(); Assert.Throws <InvalidCastException>(() => worker.ConvertToShows(JObject.Parse( "{\r\n \"showss\": [\r\n {\r\n \"name\": \"Haus der geheimnisvollen Uhren, Das\",\r\n \"beginning\": {\r\n \"formatted\": \"21.09.2018 16:30\"\r\n },\r\n \"flags\": [],\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich/vorstellung/1275006/haus-der-geheimnisvollen-uhren-das\"\r\n },\r\n \"movie\": {\r\n \"genres\": [\r\n {\r\n \"name\": \"Fantasy\"\r\n },\r\n {\r\n \"name\": \"Sci-Fi\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"name\": \"Pettersson und Findus 3 - Findus zieht u\",\r\n \"beginning\": {\r\n \"formatted\": \"21.09.2018 16:30\"\r\n },\r\n \"flags\": [],\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich/vorstellung/1274953/pettersson-und-findus-3-findus-zieht-u\"\r\n },\r\n \"movie\": {\r\n \"genres\": [\r\n {\r\n \"name\": \"Komödie\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"name\": \"Klassentreffen 1.0 - Die unglaubliche Re\",\r\n \"beginning\": {\r\n \"formatted\": \"21.09.2018 16:30\"\r\n },\r\n \"flags\": [],\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich/vorstellung/1274988/klassentreffen-1-0-die-unglaubliche-re\"\r\n },\r\n \"movie\": {\r\n \"genres\": [\r\n {\r\n \"name\": \"Komödie\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"name\": \"Hotel Transsilvanien 3 - Ein Monster Url\",\r\n \"beginning\": {\r\n \"formatted\": \"21.09.2018 16:30\"\r\n },\r\n \"flags\": [\r\n {\r\n \"name\": \"3D\"\r\n }\r\n ],\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich/vorstellung/1275040/hotel-transsilvanien-3-ein-monster-url\"\r\n },\r\n \"movie\": {\r\n \"genres\": [\r\n {\r\n \"name\": \"Animation\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"name\": \"Searching\",\r\n \"beginning\": {\r\n \"formatted\": \"21.09.2018 16:30\"\r\n },\r\n \"flags\": [],\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich/vorstellung/1274973/searching\"\r\n },\r\n \"movie\": {\r\n \"genres\": [\r\n {\r\n \"name\": \"Drama\"\r\n },\r\n {\r\n \"name\": \"Thriller\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"name\": \"Schönste Mädchen der Welt, Das\",\r\n \"beginning\": {\r\n \"formatted\": \"21.09.2018 16:30\"\r\n },\r\n \"flags\": [],\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich/vorstellung/1275023/schoenste-maedchen-der-welt-das\"\r\n },\r\n \"movie\": {\r\n \"genres\": [\r\n {\r\n \"name\": \"Komödie\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"name\": \"Schönste Mädchen der Welt, Das\",\r\n \"beginning\": {\r\n \"formatted\": \"21.09.2018 19:45\"\r\n },\r\n \"flags\": [],\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich/vorstellung/1275024/schoenste-maedchen-der-welt-das\"\r\n },\r\n \"movie\": {\r\n \"genres\": [\r\n {\r\n \"name\": \"Komödie\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"name\": \"Klassentreffen 1.0 - Die unglaubliche Re\",\r\n \"beginning\": {\r\n \"formatted\": \"21.09.2018 19:45\"\r\n },\r\n \"flags\": [],\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich/vorstellung/1274989/klassentreffen-1-0-die-unglaubliche-re\"\r\n },\r\n \"movie\": {\r\n \"genres\": [\r\n {\r\n \"name\": \"Komödie\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"name\": \"Haus der geheimnisvollen Uhren, Das\",\r\n \"beginning\": {\r\n \"formatted\": \"21.09.2018 19:45\"\r\n },\r\n \"flags\": [],\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich/vorstellung/1275007/haus-der-geheimnisvollen-uhren-das\"\r\n },\r\n \"movie\": {\r\n \"genres\": [\r\n {\r\n \"name\": \"Fantasy\"\r\n },\r\n {\r\n \"name\": \"Sci-Fi\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"name\": \"Book Club - Das Beste kommt noch\",\r\n \"beginning\": {\r\n \"formatted\": \"21.09.2018 19:45\"\r\n },\r\n \"flags\": [],\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich/vorstellung/1274962/book-club-das-beste-kommt-noch\"\r\n },\r\n \"movie\": {\r\n \"genres\": [\r\n {\r\n \"name\": \"Komödie\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"name\": \"Nun, The\",\r\n \"beginning\": {\r\n \"formatted\": \"21.09.2018 19:45\"\r\n },\r\n \"flags\": [],\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich/vorstellung/1275049/nun-the\"\r\n },\r\n \"movie\": {\r\n \"genres\": [\r\n {\r\n \"name\": \"Horrorfilm\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"name\": \"Searching\",\r\n \"beginning\": {\r\n \"formatted\": \"21.09.2018 19:45\"\r\n },\r\n \"flags\": [],\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich/vorstellung/1274974/searching\"\r\n },\r\n \"movie\": {\r\n \"genres\": [\r\n {\r\n \"name\": \"Drama\"\r\n },\r\n {\r\n \"name\": \"Thriller\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"name\": \"Klassentreffen 1.0 - Die unglaubliche Re\",\r\n \"beginning\": {\r\n \"formatted\": \"21.09.2018 22:30\"\r\n },\r\n \"flags\": [],\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich/vorstellung/1274990/klassentreffen-1-0-die-unglaubliche-re\"\r\n },\r\n \"movie\": {\r\n \"genres\": [\r\n {\r\n \"name\": \"Komödie\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"name\": \"Predator - Upgrade\",\r\n \"beginning\": {\r\n \"formatted\": \"21.09.2018 22:30\"\r\n },\r\n \"flags\": [\r\n {\r\n \"name\": \"3D\"\r\n }\r\n ],\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich/vorstellung/1275034/predator-upgrade\"\r\n },\r\n \"movie\": {\r\n \"genres\": [\r\n {\r\n \"name\": \"Action\"\r\n },\r\n {\r\n \"name\": \"Sci-Fi\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"name\": \"Equalizer 2, The\",\r\n \"beginning\": {\r\n \"formatted\": \"21.09.2018 22:30\"\r\n },\r\n \"flags\": [],\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich/vorstellung/1275020/equalizer-2-the\"\r\n },\r\n \"movie\": {\r\n \"genres\": [\r\n {\r\n \"name\": \"Action\"\r\n },\r\n {\r\n \"name\": \"Thriller\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"name\": \"Meg, The\",\r\n \"beginning\": {\r\n \"formatted\": \"21.09.2018 22:30\"\r\n },\r\n \"flags\": [\r\n {\r\n \"name\": \"3D\"\r\n }\r\n ],\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich/vorstellung/1274967/meg-the\"\r\n },\r\n \"movie\": {\r\n \"genres\": [\r\n {\r\n \"name\": \"Science Fiction\"\r\n },\r\n {\r\n \"name\": \"Action\"\r\n },\r\n {\r\n \"name\": \"Thriller\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"name\": \"Nun, The\",\r\n \"beginning\": {\r\n \"formatted\": \"21.09.2018 22:30\"\r\n },\r\n \"flags\": [],\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich/vorstellung/1275050/nun-the\"\r\n },\r\n \"movie\": {\r\n \"genres\": [\r\n {\r\n \"name\": \"Horrorfilm\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"name\": \"Searching\",\r\n \"beginning\": {\r\n \"formatted\": \"21.09.2018 22:30\"\r\n },\r\n \"flags\": [],\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich/vorstellung/1274975/searching\"\r\n },\r\n \"movie\": {\r\n \"genres\": [\r\n {\r\n \"name\": \"Drama\"\r\n },\r\n {\r\n \"name\": \"Thriller\"\r\n }\r\n ]\r\n }\r\n }\r\n ]\r\n}"))); }
public void ConvertToCitySearchResult_ThrowsExceptionWhenBadFormat() { IKinoheldJsonWorker worker = new KinoheldJsonWorker(); Assert.Throws <InvalidCastException>(() => worker.ConvertToCitySearchResult(JObject.Parse( "{\r\n \"citiess\": [],\r\n \"postcodes\": []}"))); Assert.Throws <InvalidCastException>(() => worker.ConvertToCitySearchResult(JObject.Parse( "{\r\n \"cities\": [],\r\n \"postcodess\": []}"))); }
public void ConvertToCitySearchResult_ConvertsResultSucessfully2() { IKinoheldJsonWorker worker = new KinoheldJsonWorker(); var cities = worker.ConvertToCitySearchResult( JObject.Parse("{\r\n \"cities\": [\r\n {\r\n \"name\": \"Aurich\",\r\n \"detailUrl\": {\r\n \"relativeUrl\": \"/kino-aurich/\"\r\n }\r\n },\r\n {\r\n \"name\": \"Aurach, Mittelfranken\",\r\n \"detailUrl\": {\r\n \"relativeUrl\": \"/kino-aurach-mittelfranken/\"\r\n }\r\n },\r\n {\r\n \"name\": \"Aurachtal\",\r\n \"detailUrl\": {\r\n \"relativeUrl\": \"/kino-aurachtal/\"\r\n }\r\n },\r\n {\r\n \"name\": \"Aura im Sinngrund\",\r\n \"detailUrl\": {\r\n \"relativeUrl\": \"/kino-aura-im-sinngrund/\"\r\n }\r\n },\r\n {\r\n \"name\": \"Aura an der Saale\",\r\n \"detailUrl\": {\r\n \"relativeUrl\": \"/kino-aura-an-der-saale/\"\r\n }\r\n },\r\n {\r\n \"name\": \"Auringen\",\r\n \"detailUrl\": {\r\n \"relativeUrl\": \"/kino-auringen/\"\r\n }\r\n }\r\n ],\r\n \"postcodes\": []\r\n}")); Assert.NotNull(cities); Assert.AreEqual(6, cities.Cities.Count); Assert.AreEqual(0, cities.PostalCodes.Count); Assert.AreEqual("Aurich", cities.Cities[0].Name); Assert.AreEqual("Auringen", cities.Cities[5].Name); }
public void ConvertToCitySearchResult_ConvertsResultSucessfully() { IKinoheldJsonWorker worker = new KinoheldJsonWorker(); var cities = worker.ConvertToCitySearchResult( JObject.Parse( "{\r\n \"cities\": [],\r\n \"postcodes\": [\r\n {\r\n \"postcode\": \"26603\",\r\n \"city\": {\r\n \"name\": \"Aurich\",\r\n \"detailUrl\": {\r\n \"url\": \"/kino-aurich/\"\r\n }\r\n }\r\n },\r\n {\r\n \"postcode\": \"26605\",\r\n \"city\": {\r\n \"name\": \"Aurich\",\r\n \"detailUrl\": {\r\n \"relativeUrl\": \"/kino-aurich/\"\r\n }\r\n }\r\n },\r\n {\r\n \"postcode\": \"26607\",\r\n \"city\": {\r\n \"name\": \"Aurich\",\r\n \"detailUrl\": {\r\n \"relativeUrl\": \"/kino-aurich/\"\r\n }\r\n }\r\n },\r\n {\r\n \"postcode\": \"26655\",\r\n \"city\": {\r\n \"name\": \"Westerstede\",\r\n \"detailUrl\": {\r\n \"relativeUrl\": \"/kino-westerstede/\"\r\n }\r\n }\r\n },\r\n {\r\n \"postcode\": \"26624\",\r\n \"city\": {\r\n \"name\": \"Südbrookmerland\",\r\n \"detailUrl\": {\r\n \"relativeUrl\": \"/kino-suedbrookmerland/\"\r\n }\r\n }\r\n },\r\n {\r\n \"postcode\": \"26629\",\r\n \"city\": {\r\n \"name\": \"Großefehn\",\r\n \"detailUrl\": {\r\n \"relativeUrl\": \"/kino-grossefehn/\"\r\n }\r\n }\r\n },\r\n {\r\n \"postcode\": \"26639\",\r\n \"city\": {\r\n \"name\": \"Wiesmoor\",\r\n \"detailUrl\": {\r\n \"relativeUrl\": \"/kino-wiesmoor/\"\r\n }\r\n }\r\n },\r\n {\r\n \"postcode\": \"26683\",\r\n \"city\": {\r\n \"name\": \"Saterland\",\r\n \"detailUrl\": {\r\n \"relativeUrl\": \"/kino-saterland/\"\r\n }\r\n }\r\n },\r\n {\r\n \"postcode\": \"26676\",\r\n \"city\": {\r\n \"name\": \"Barßel\",\r\n \"detailUrl\": {\r\n \"relativeUrl\": \"/kino-barssel/\"\r\n }\r\n }\r\n },\r\n {\r\n \"postcode\": \"26632\",\r\n \"city\": {\r\n \"name\": \"Ihlow, Ostfriesland\",\r\n \"detailUrl\": {\r\n \"relativeUrl\": \"/kino-ihlow-ostfriesland/\"\r\n }\r\n }\r\n }\r\n ]\r\n}")); Assert.NotNull(cities); Assert.AreEqual(0, cities.Cities.Count); Assert.AreEqual(10, cities.PostalCodes.Count); Assert.AreEqual(26603, cities.PostalCodes[0].Code); Assert.AreEqual("Aurich", cities.PostalCodes[0].City.Name); Assert.AreEqual(26632, cities.PostalCodes[9].Code); Assert.AreEqual("Ihlow, Ostfriesland", cities.PostalCodes[9].City.Name); }
public void ConvertToCinemas_ConvertsTwoCinemasSuccessfully() { IKinoheldJsonWorker worker = new KinoheldJsonWorker(); var cinemas = worker.ConvertToCinemas(JObject.Parse( "{\r\n \"cinemas\": [\r\n {\r\n \"id\": \"2127\",\r\n \"name\": \"Kino Aurich\",\r\n \"street\": \"Emder Straße 5\",\r\n \"city\": {\r\n \"name\": \"Aurich\"\r\n },\r\n \"distance\": 3.2250148700598,\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/kino-aurich\"\r\n }\r\n },\r\n {\r\n \"id\": \"1613\",\r\n \"name\": \"Autokino Aurich-Tannenhausen\",\r\n \"street\": \"Am Stadion 14\",\r\n \"city\": {\r\n \"name\": \"Aurich\"\r\n },\r\n \"distance\": 4.7613563356582,\r\n \"detailUrl\": {\r\n \"url\": \"https://www.kinoheld.de/kino-aurich/autokino-aurich-tannenhausen?layout=shows\"\r\n }\r\n }\r\n ]\r\n}")); Assert.AreEqual(2, cinemas.Count()); Assert.AreEqual("Kino Aurich", cinemas.First().Name); Assert.AreEqual("Aurich", cinemas.First().City.Name); Assert.AreEqual(2127, cinemas.First().Id); Assert.AreEqual("Emder Straße 5", cinemas.First().Street); Assert.AreEqual("Autokino Aurich-Tannenhausen", cinemas.Last().Name); Assert.AreEqual("Aurich", cinemas.Last().City.Name); Assert.AreEqual(1613, cinemas.Last().Id); Assert.AreEqual("Am Stadion 14", cinemas.Last().Street); }
public void ConvertToCityResult_DoesNotAllowNullJson() { IKinoheldJsonWorker worker = new KinoheldJsonWorker(); Assert.Throws <ArgumentNullException>(() => worker.ConvertToCitySearchResult(null)); }
public void ConvertToShows_DoesNotAllowNullJson() { IKinoheldJsonWorker worker = new KinoheldJsonWorker(); Assert.Throws <ArgumentNullException>(() => worker.ConvertToShows(null)); }