public void CanGetUrlWithHourFormatting() { var expectedUrl = "http://test.com"; var hourFormat = "h"; http.Stub( HttpPost .Url("https://api.cronofy.com/v1/add_to_calendar") .RequestHeader("Content-Type", "application/json; charset=utf-8") .RequestBodyFormat( "{{\"client_id\":\"{0}\",\"client_secret\":\"{1}\",\"oauth\":{{\"redirect_uri\":\"{2}\",\"scope\":\"{3}\"}},\"event\":{{\"event_id\":\"{4}\",\"summary\":\"{5}\",\"start\":{{\"time\":\"{6}\",\"tzid\":\"Etc/UTC\"}},\"end\":{{\"time\":\"{7}\",\"tzid\":\"Etc/UTC\"}}}},\"formatting\":{{\"hour_format\":\"{8}\"}}}}", clientId, clientSecret, redirectUrl, scope, eventId, summary, startString, endString, hourFormat) .ResponseCode(200) .ResponseBodyFormat( "{{\"url\":\"{0}\"}}", expectedUrl) ); var addToCalendarRequest = new AddToCalendarRequestBuilder() .OAuthDetails(redirectUrl, scope) .UpsertEventRequest(upsertEventRequest) .HourFormat("h") .Build(); var actualUrl = client.AddToCalendar(addToCalendarRequest); Assert.Equal(expectedUrl, actualUrl); }
/// <summary> /// Add To Calendar example. /// </summary> private static void AddToCalendarExample() { Console.Write("Enter Client id: "); var clientId = Console.ReadLine(); Console.Write("Enter Secret: "); var clientSecret = Console.ReadLine(); string redirectUrl = "http://example.com/redirectUri"; string scope = "read_events create_event"; string eventId = "testEventId"; string summary = "Test Summary"; DateTimeOffset start = DateTime.Now; DateTimeOffset end = DateTime.Now + new TimeSpan(2, 0, 0); var client = new CronofyOAuthClient(clientId, clientSecret); var upsertEventRequest = new UpsertEventRequestBuilder() .EventId(eventId) .Summary(summary) .Start(start) .End(end) .Build(); var request = new AddToCalendarRequestBuilder() .OAuthDetails(redirectUrl, scope) .UpsertEventRequest(upsertEventRequest) .Build(); var actualUrl = client.AddToCalendar(request); Console.WriteLine(actualUrl); Process.Start(actualUrl); }