sharee.bike-App/TestShareeLib/Repository/CopriCallsMemory001.cs
2021-11-08 23:11:56 +01:00

403 lines
20 KiB
C#

using TINK.Repository;
namespace TestShareeLib.Repository
{
/// <summary>
/// Holds some COPRI responses for testing purposes.
/// </summary>
/// <remarks> Holds some demo Meinkonrad and LastenradBayern bikes
/// </remarks>
public class CopriCallsMemory001 : CopriCallMemoryBase, ICopriServer
{
public CopriCallsMemory001(string sessionCookie = null) : base(
bikesAvailableResponse: BikesAvailableResponse,
bikesOccupiedResponse: BikesOccupiedResponse,
authResponse: AuthResponse,
authOutResponse: AuthOutResponse,
sessionCookie: sessionCookie)
{ }
private static string AuthResponse => @"{
""shareejson"": {
""clearing_cache"": ""0"",
""privacy_html"": ""site/privacy.html"",
""user_id"": ""javaminister@gmail.com"",
""impress_html"": ""site/impress.html"",
""tariff_info_html"": ""site/tariff_info_1.html"",
""lang"": ""DE"",
""last_used_operator"": {
""operator_name"": ""sharee.bike | TeilRad GmbH"",
""operator_hours"": ""Bürozeiten: Montag, Mittwoch, Freitag 9-12 Uhr"",
""operator_phone"": ""+49 761 45370097"",
""operator_email"": ""hotline@sharee.bike"",
""operator_color"": ""#009699""
},
""response"": ""authorization"",
""agb_checked"": ""0"",
""agb_html"": ""site/agb.html"",
""response_text"": ""Herzlich willkommen im Fahrradmietsystem"",
""bike_info_html"": ""site/bike_info.html"",
""debuglevel"": ""1"",
""uri_primary"": ""https://shareeapp-primary.copri.eu"",
""response_state"": ""OK, nothing todo"",
""new_authcoo"": ""1"",
""user_tour"": [],
""authcookie"": ""6103_112e96b36ba33de245943c5ffaf369cd_oiF2kahH"",
""copri_version"": ""4.1.8.21"",
""apiserver"": ""https://shareeapp-fr01.copri.eu"",
""user_group"": []
}
}";
private static string AuthOutResponse = @"{
""shareejson"": {
""copri_version"": ""4.1.8.21"",
""authcookie"": ""1"",
""user_tour"": [],
""user_group"": null,
""apiserver"": ""https://shareeapp-fr01.copri.eu"",
""debuglevel"": ""1"",
""uri_primary"": ""https://shareeapp-primary.copri.eu"",
""bike_info_html"": ""site/bike_info.html"",
""response_state"": ""OK, logout"",
""new_authcoo"": ""0"",
""lang"": ""DE"",
""last_used_operator"": {
""operator_hours"": ""Bürozeiten: Montag, Mittwoch, Freitag 9-12 Uhr"",
""operator_name"": ""sharee.bike | TeilRad GmbH"",
""operator_email"": ""hotline@sharee.bike"",
""operator_phone"": ""+49 761 45370097"",
""operator_color"": ""#009699""
},
""tariff_info_html"": ""site/tariff_info_1.html"",
""impress_html"": ""site/impress.html"",
""response_text"": ""Auf Wiedersehen."",
""agb_html"": ""site/agb.html"",
""response"": ""authout"",
""agb_checked"": ""0"",
""privacy_html"": ""site/privacy.html"",
""clearing_cache"": ""0"",
""user_id"": ""javaminister@gmail.com""
}
}";
private static string BikesOccupiedResponse => @"{
""shareejson"": {
""authcookie"": ""6103_112e96b36ba33de245943c5ffaf369cd_oiF2kahH"",
""copri_version"": ""4.1.8.21"",
""user_tour"": [],
""user_group"": [
""FR300103"",
""FR300101""
],
""bikes_occupied"": {
""157056"": {
""K_seed"": ""[-20, -104, -112, -49, 3, -74, -43, -115, -53, 34, -48, -29, -64, -90, -26, -74]"",
""uri_operator"": ""https://shareeapp-fr01.copri.eu"",
""bike"": ""FR1544"",
""unit_price"": ""3.00"",
""description"": ""Contributor-Paul"",
""station"": ""FR103"",
""request_time"": ""2021-11-06 18:57:20.034438+01"",
""Ilockit_ID"": ""ISHAREIT-2200544"",
""total_price"": ""25.50"",
""bike_group"": [
""FR300103""
],
""K_u"": ""[43, -16, 72, -5, 23, -117, 43, 57, 124, -106, -115, 97, -93, -30, -34, -7, -21, 119, 109, 92, 0, 0, 0, 0]"",
""computed_hours"": ""8.50"",
""end_time"": ""2021-11-08 21:14:35"",
""state"": ""occupied"",
""tariff_description"": {
""eur_per_hour"": ""3.00"",
""number"": ""5494"",
""max_eur_per_day"": ""10.00"",
""name"": ""Tester Basic"",
""free_hours"": ""0.50"",
""track_info"": ""Ich stimme der Speicherung (Tracking) meiner Fahrstrecke zwecks wissenschaftlicher Auswertung und Berechnung der CO2-Einsparung zu!"",
""operator_agb"": ""Mit der Mietrad Anmietung wird folgender Betreiber <a href='https://shareeapp-fr01.copri.eu/site/agb.html'>AGB</a> zugestimmt (als Demo sharee AGB).""
},
""lock_state"": ""locked"",
""system"": ""Ilockit"",
""gps"": {
""latitude"": ""47.9994661873206"",
""longitude"": ""7.7904340904206""
},
""real_hours"": ""50.2833333333333"",
""Ilockit_GUID"": ""00000000-0000-0000-0000-dc969f648732"",
""start_time"": ""2021-11-06 18:57:25.445447+01""
},
""157072"": {
""bike"": ""FR1004"",
""K_seed"": ""[-31, -81, -41, 95, 112, -113, -78, -22, 84, -112, -73, 31, -125, -49, 125, 10]"",
""uri_operator"": ""https://shareeapp-fr01.copri.eu"",
""bike_group"": [
""FR300103""
],
""total_price"": ""0.00"",
""description"": ""Contributor-Recumbent"",
""station"": ""FR103"",
""request_time"": ""2021-11-08 21:10:24.829395+01"",
""Ilockit_ID"": ""ISHAREIT-2302373"",
""unit_price"": ""3.00"",
""end_time"": ""2021-11-08 21:10:00+01"",
""state"": ""requested"",
""tariff_description"": {
""operator_agb"": ""Mit der Mietrad Anmietung wird folgender Betreiber <a href='https://shareeapp-fr01.copri.eu/site/agb.html'>AGB</a> zugestimmt (als Demo sharee AGB)."",
""free_hours"": ""0.50"",
""name"": ""Tester Basic"",
""max_eur_per_day"": ""10.00"",
""eur_per_hour"": ""3.00"",
""number"": ""5494""
},
""computed_hours"": ""0"",
""K_u"": ""[126, -125, 125, 83, 104, -121, -80, 40, 77, -35, 81, 27, 89, -124, -37, 57, 118, -113, 71, -37, 0, 0, 0, 0]"",
""start_time"": ""2021-11-08 21:10:24.829395+01"",
""gps"": {
""latitude"": ""47.9980777"",
""longitude"": ""7.7848769""
},
""lock_state"": ""locked"",
""system"": ""Ilockit"",
""real_hours"": ""0"",
""Ilockit_GUID"": ""00000000-0000-0000-0000-fe3962c08bcc""
}
},
""apiserver"": ""https://shareeapp-fr01.copri.eu"",
""uri_primary"": ""https://shareeapp-primary.copri.eu"",
""debuglevel"": ""1"",
""bike_info_html"": ""site/bike_info.html"",
""new_authcoo"": ""0"",
""response_state"": ""OK, nothing todo"",
""last_used_operator"": {
""operator_color"": ""#008dd2"",
""operator_phone"": ""+49 089 / 111111111"",
""operator_email"": ""hotline@lastenraddemo.bayern"",
""operator_hours"": ""Bürozeiten: Montag, Mittwoch, Freitag 9-12 Uhr"",
""operator_name"": ""Lastenrad Bayern"",
""operator_logo"": """"
},
""lang"": ""DE"",
""impress_html"": ""site/impress.html"",
""tariff_info_html"": ""site/tariff_info_1.html"",
""agb_html"": ""site/agb.html"",
""response"": ""user_bikes_occupied"",
""agb_checked"": ""1"",
""privacy_html"": ""site/privacy.html"",
""clearing_cache"": ""0"",
""user_id"": ""ohauff@posteo.de""
}
}";
private static string BikesAvailableResponse => @"{
""shareejson"": {
""agb_checked"": ""1"",
""response"": ""bikes_available"",
""agb_html"": ""site/agb.html"",
""impress_html"": ""site/impress.html"",
""tariff_info_html"": ""site/tariff_info_1.html"",
""lang"": ""DE"",
""last_used_operator"": {
""operator_color"": ""#008dd2"",
""operator_email"": ""hotline@lastenraddemo.bayern"",
""operator_phone"": ""+49 089 / 111111111"",
""operator_name"": ""Lastenrad Bayern"",
""operator_hours"": ""Bürozeiten: Montag, Mittwoch, Freitag 9-12 Uhr"",
""operator_logo"": """"
},
""user_id"": ""ohauff@posteo.de"",
""clearing_cache"": ""0"",
""privacy_html"": ""site/privacy.html"",
""bikes"": {
""FR1543"": {
""system"": ""Ilockit"",
""gps"": {
""longitude"": ""7.8255321"",
""latitude"": ""47.9767121""
},
""lock_state"": ""locked"",
""Ilockit_GUID"": ""00000000-0000-0000-0000-cc141a6f68bb"",
""state"": ""available"",
""tariff_description"": {
""free_hours"": ""0.50"",
""name"": ""Tester Basic"",
""eur_per_hour"": ""3.00"",
""number"": ""5494"",
""1543"": {
""operator_agb"": ""Mit der Mietrad Anmietung wird folgender Betreiber <a href='https://shareeapp-fr01.copri.eu/site/agb.html'>AGB</a> zugestimmt (als Demo sharee AGB).""
},
""max_eur_per_day"": ""10.00""
},
""bike_group"": [
""FR300103""
],
""station"": ""FR101"",
""description"": ""Contributor-bike Dominik"",
""Ilockit_ID"": ""ISHAREIT-2200543"",
""authed"": ""1"",
""bike"": ""FR1543"",
""uri_operator"": ""https://shareeapp-fr01.copri.eu""
},
""FR1003"": {
""bike"": ""FR1003"",
""authed"": ""1"",
""uri_operator"": ""https://shareeapp-fr01.copri.eu"",
""bike_group"": [
""FR300101""
],
""Ilockit_ID"": ""ISHAREIT-2200545"",
""station"": ""FR101"",
""description"": ""Stadtrad"",
""tariff_description"": {
""max_eur_per_day"": ""10.00"",
""number"": ""5491"",
""eur_per_hour"": ""2.00"",
""1003"": {
""operator_agb"": ""Mit der Mietrad Anmietung wird folgender Betreiber <a href='https://shareeapp-fr01.copri.eu/site/agb.html'>AGB</a> zugestimmt (als Demo sharee AGB).""
},
""free_hours"": ""0.50"",
""name"": ""Vauban Basic""
},
""state"": ""available"",
""Ilockit_GUID"": ""00000000-0000-0000-0000-e38bf9d32234"",
""system"": ""Ilockit"",
""gps"": {
""longitude"": ""7.8255772"",
""latitude"": ""47.9765188""
},
""lock_state"": ""locked""
},
""FR1540"": {
""bike_group"": [
""FR300103""
],
""Ilockit_ID"": ""ISHAREIT-2200540"",
""description"": ""Contributor-bike Dieter"",
""station"": ""FR101"",
""bike"": ""FR1540"",
""authed"": ""1"",
""uri_operator"": ""https://shareeapp-fr01.copri.eu"",
""Ilockit_GUID"": ""00000000-0000-0000-0000-fc3c002a2add"",
""system"": ""Ilockit"",
""gps"": {
""longitude"": ""7.8256267"",
""latitude"": ""47.976803""
},
""lock_state"": ""locked"",
""tariff_description"": {
""1540"": {
""operator_agb"": ""Mit der Mietrad Anmietung wird folgender Betreiber <a href='https://shareeapp-fr01.copri.eu/site/agb.html'>AGB</a> zugestimmt (als Demo sharee AGB).""
},
""free_hours"": ""0.50"",
""name"": ""Tester Basic"",
""max_eur_per_day"": ""10.00"",
""eur_per_hour"": ""3.00"",
""number"": ""5494""
},
""state"": ""available""
},
""FR1002"": {
""bike_group"": [
""FR300101""
],
""description"": ""Lasten-Dreirad"",
""station"": ""FR101"",
""Ilockit_ID"": ""ISHAREIT-2200539"",
""authed"": ""1"",
""bike"": ""FR1002"",
""uri_operator"": ""https://shareeapp-fr01.copri.eu"",
""gps"": {
""latitude"": ""47.976552"",
""longitude"": ""7.8255068""
},
""system"": ""Ilockit"",
""lock_state"": ""locked"",
""Ilockit_GUID"": ""00000000-0000-0000-0000-f0b4a692e169"",
""state"": ""available"",
""tariff_description"": {
""max_eur_per_day"": ""10.00"",
""1002"": {
""operator_agb"": ""Mit der Mietrad Anmietung wird folgender Betreiber <a href='https://shareeapp-fr01.copri.eu/site/agb.html'>AGB</a> zugestimmt (als Demo sharee AGB).""
},
""eur_per_hour"": ""2.00"",
""number"": ""5491"",
""free_hours"": ""0.50"",
""name"": ""Vauban Basic""
}
},
""FR1538"": {
""uri_operator"": ""https://shareeapp-fr01.copri.eu"",
""authed"": ""1"",
""bike"": ""FR1538"",
""station"": ""FR105"",
""description"": ""Contributor-bike Rainer"",
""Ilockit_ID"": ""ISHAREIT-2200538"",
""bike_group"": [
""FR300103""
],
""state"": ""available"",
""tariff_description"": {
""max_eur_per_day"": ""10.00"",
""eur_per_hour"": ""3.00"",
""number"": ""5494"",
""1538"": {
""operator_agb"": ""Mit der Mietrad Anmietung wird folgender Betreiber <a href='https://shareeapp-fr01.copri.eu/site/agb.html'>AGB</a> zugestimmt (als Demo sharee AGB).""
},
""free_hours"": ""0.50"",
""name"": ""Tester Basic""
},
""gps"": {
""latitude"": ""47.9275957"",
""longitude"": ""7.973976""
},
""lock_state"": ""locked"",
""system"": ""Ilockit"",
""Ilockit_GUID"": ""00000000-0000-0000-0000-db0319a2555b""
},
""FR1001"": {
""bike_group"": [
""FR300101""
],
""station"": ""FR101"",
""description"": ""Lastenrad"",
""Ilockit_ID"": ""ISHAREIT-2200536"",
""authed"": ""1"",
""bike"": ""FR1001"",
""uri_operator"": ""https://shareeapp-fr01.copri.eu"",
""lock_state"": ""locked"",
""gps"": {
""latitude"": ""47.9765091"",
""longitude"": ""7.8255631""
},
""system"": ""Ilockit"",
""Ilockit_GUID"": ""00000000-0000-0000-0000-caa87760e53e"",
""state"": ""available"",
""tariff_description"": {
""free_hours"": ""0.50"",
""name"": ""Vauban Basic"",
""eur_per_hour"": ""2.00"",
""number"": ""5491"",
""max_eur_per_day"": ""10.00"",
""1001"": {
""operator_agb"": ""Mit der Mietrad Anmietung wird folgender Betreiber <a href='https://shareeapp-fr01.copri.eu/site/agb.html'>AGB</a> zugestimmt (als Demo sharee AGB).""
}
}
}
},
""user_group"": [
""FR300103"",
""FR300101""
],
""apiserver"": ""https://shareeapp-fr01.copri.eu"",
""user_tour"": [],
""authcookie"": ""6103_112e96b36ba33de245943c5ffaf369cd_oiF2kahH"",
""copri_version"": ""4.1.8.21"",
""response_state"": ""OK, nothing todo"",
""new_authcoo"": ""0"",
""bike_info_html"": ""site/bike_info.html"",
""debuglevel"": ""1"",
""uri_primary"": ""https://shareeapp-primary.copri.eu""
}
}";
}
}