public static void FacWarfareTest() { var url = new Uri("https://api.eveonline.com/char/FacWarStats.xml.aspx"); const int characterId = 123456; Dictionary <string, string> data = ApiTestHelpers.GetBaseTestParams(); data.Add(ApiConstants.CharacterId, characterId.ToString(CultureInfo.InvariantCulture)); IHttpRequestProvider mockProvider = MockRequests.GetMockedProvider(url, data, ApiTestHelpers.GetXmlData("TestData\\Api\\FacWarfareData.xml")); using ( var client = new EveAPI(ApiTestHelpers.EveServiceApiHost, ApiTestHelpers.GetNullCacheProvider(), mockProvider)) { Task <EveServiceResponse <FactionalWarfareStats> > task = client.Character.FactionalWarfareStatistics(ApiTestHelpers.KeyIdValue, ApiTestHelpers.VCodeValue, characterId); task.Wait(); ApiTestHelpers.BasicSuccessResultValidations(task); EveServiceResponse <FactionalWarfareStats> result = task.Result; Assert.AreEqual(500001, result.ResultData.FactionId); Assert.AreEqual(12, result.ResultData.KillsTotal); } }
public static void ContactNotificationTest() { var url = new Uri("https://api.eveonline.com/char/ContactNotifications.xml.aspx"); const int characterId = 123456; Dictionary <string, string> data = ApiTestHelpers.GetBaseTestParams(); data.Add(ApiConstants.CharacterId, characterId.ToString(CultureInfo.InvariantCulture)); IHttpRequestProvider mockProvider = MockRequests.GetMockedProvider(url, data, ApiTestHelpers.GetXmlData("TestData\\Api\\ContactNotifications.xml")); using ( var client = new EveAPI(ApiTestHelpers.EveServiceApiHost, ApiTestHelpers.GetNullCacheProvider(), mockProvider)) { Task <EveServiceResponse <IEnumerable <ContactNotification> > > task = client.Character.ContactNotifications(ApiTestHelpers.KeyIdValue, ApiTestHelpers.VCodeValue, characterId); task.Wait(); ApiTestHelpers.BasicSuccessResultValidations(task); EveServiceResponse <IEnumerable <ContactNotification> > result = task.Result; Assert.AreEqual(1, result.ResultData.Count()); Assert.AreEqual(308734131, result.ResultData.First().NotificationId); Assert.AreEqual(797400947, result.ResultData.First().SenderId); Assert.AreEqual("CCP Garthagk", result.ResultData.First().SenderName); Assert.AreEqual(new DateTimeOffset(2010, 05, 29, 23, 04, 00, TimeSpan.Zero), result.ResultData.First().SentDate); } }
public static void ContractsTest() { var url = new Uri("https://api.eveonline.com/char/Contracts.xml.aspx"); const int characterId = 123456; Dictionary <string, string> data = ApiTestHelpers.GetBaseTestParams(); data.Add(ApiConstants.CharacterId, characterId.ToString(CultureInfo.InvariantCulture)); IHttpRequestProvider mockProvider = MockRequests.GetMockedProvider(url, data, ApiTestHelpers.GetXmlData("TestData\\Api\\Contracts.xml")); using ( var client = new EveAPI(ApiTestHelpers.EveServiceApiHost, ApiTestHelpers.GetNullCacheProvider(), mockProvider)) { Task <EveServiceResponse <IEnumerable <Contract> > > task = client.Character.ContractsAsync(ApiTestHelpers.KeyIdValue, ApiTestHelpers.VCodeValue, characterId); task.Wait(); ApiTestHelpers.BasicSuccessResultValidations(task); EveServiceResponse <IEnumerable <Contract> > result = task.Result; Assert.AreEqual(38, result.ResultData.Count()); // pick one to examine Contract sample = result.ResultData.Skip(5).Take(1).First(); Assert.AreEqual(62102990, sample.ContractId); Assert.AreEqual(602995120, sample.IssuerId); Assert.AreEqual(821674710, sample.IssuserCorpId); Assert.AreEqual(ContractType.Courier, sample.Type); Assert.AreEqual(ContractStatus.Completed, sample.Status); Assert.AreEqual(new DateTimeOffset(2012, 12, 09, 20, 46, 54, TimeSpan.Zero), sample.DateIssued); } }
public static void CharacterInfoTest() { var url = new Uri("https://api.eveonline.com/eve/CharacterInfo.xml.aspx"); var data = new Dictionary <string, string>(); data.Add(ApiConstants.CharacterId, "1643072492"); IHttpRequestProvider mockProvider = MockRequests.GetMockedProvider(url, data, ApiTestHelpers.GetXmlData("TestData\\Api\\CharacterInfo.xml")); using ( var client = new EveAPI(ApiTestHelpers.EveServiceApiHost, ApiTestHelpers.GetNullCacheProvider(), mockProvider)) { Task <EveServiceResponse <CharacterInfo> > task = client.Eve.CharacterInfoAsync(1643072492); task.Wait(); ApiTestHelpers.BasicSuccessResultValidations(task); EveServiceResponse <CharacterInfo> result = task.Result; Assert.AreEqual("Catari Taga", result.ResultData.CharacterName); Assert.AreEqual(1923227030, result.ResultData.AllianceId); Assert.AreEqual(0.0, result.ResultData.SecurityStatus); } }
public static void MarketOrdersTest() { var url = new Uri("https://api.eveonline.com/char/MarketOrders.xml.aspx"); const int characterId = 123456; Dictionary <string, string> data = ApiTestHelpers.GetBaseTestParams(); data.Add(ApiConstants.CharacterId, characterId.ToString(CultureInfo.InvariantCulture)); IHttpRequestProvider mockProvider = MockRequests.GetMockedProvider(url, data, ApiTestHelpers.GetXmlData("TestData\\Api\\MarketOrders.xml")); using ( var client = new EveAPI(ApiTestHelpers.EveServiceApiHost, ApiTestHelpers.GetNullCacheProvider(), mockProvider)) { Task <EveServiceResponse <IEnumerable <MarketOrder> > > task = client.Character.MarketOrdersAsync(ApiTestHelpers.KeyIdValue, ApiTestHelpers.VCodeValue, characterId); task.Wait(); ApiTestHelpers.BasicSuccessResultValidations(task); EveServiceResponse <IEnumerable <MarketOrder> > result = task.Result; Assert.AreEqual(3, result.ResultData.Count()); List <MarketOrder> items = result.ResultData.ToList(); Assert.AreEqual(24, items[1].QuantityRemaining); } }
public static void AccountStatusTest() { // setup mock data and parameters. var url = new Uri("https://api.eveonline.com/account/AccountStatus.xml.aspx"); Dictionary <string, string> data = ApiTestHelpers.GetBaseTestParams(); IHttpRequestProvider mockProvider = MockRequests.GetMockedProvider(url, data, AccountStatusXml); // create the client to test using ( var client = new EveAPI(ApiTestHelpers.EveServiceApiHost, ApiTestHelpers.GetNullCacheProvider(), mockProvider)) { // call the method Task <EveServiceResponse <Account> > asyncTask = client.Account.AccountStatusAsync(ApiTestHelpers.KeyIdValue, ApiTestHelpers.VCodeValue); // wait on the task asyncTask.Wait(); ApiTestHelpers.BasicSuccessResultValidations(asyncTask); EveServiceResponse <Account> result = asyncTask.Result; Assert.AreEqual(new DateTimeOffset(2011, 9, 25, 03, 57, 50, TimeSpan.Zero), result.CacheUntil); Assert.AreEqual(new DateTimeOffset(2011, 10, 20, 13, 22, 57, TimeSpan.Zero), result.ResultData.ExpiryDate); Assert.AreEqual(new DateTimeOffset(2008, 02, 09, 19, 51, 00, TimeSpan.Zero), result.ResultData.CreateDate); Assert.AreEqual(1371, result.ResultData.LogOnCount); Assert.AreEqual(TimeSpan.FromMinutes(245488), result.ResultData.LoggedInTime); } }
public static void CalendarEventAttendeeTest() { // setup mock data and parameters. var url = new Uri("https://api.eveonline.com/char/CalendarEventAttendees.xml.aspx"); const int characterId = 123456; const int eventId = 7890572; Dictionary <string, string> data = ApiTestHelpers.GetBaseTestParams(); data.Add(ApiConstants.CharacterId, characterId.ToString(CultureInfo.InvariantCulture)); data.Add(ApiConstants.EventId, eventId.ToInvariantString()); IHttpRequestProvider mockProvider = MockRequests.GetMockedProvider(url, data, AttendeeXml); using ( var client = new EveAPI(ApiTestHelpers.EveServiceApiHost, ApiTestHelpers.GetNullCacheProvider(), mockProvider)) { Task <EveServiceResponse <IEnumerable <CalendarEventAttendee> > > task = client.Character.CalendarEventAttendees(ApiTestHelpers.KeyIdValue, ApiTestHelpers.VCodeValue, characterId, eventId); task.Wait(); ApiTestHelpers.BasicSuccessResultValidations(task); EveServiceResponse <IEnumerable <CalendarEventAttendee> > result = task.Result; IEnumerable <CalendarEventAttendee> resultData = result.ResultData; Assert.AreEqual(4, resultData.Count()); Assert.AreEqual(192837645, resultData.Skip(2).Take(1).First().CharacterId); Assert.AreEqual(AttendeeResponseType.Undecided, resultData.Skip(3).Take(1).First().Response); } }
public static void ApiKeyInfoTest() { // setup mock data and parameters. var url = new Uri("https://api.eveonline.com/account/APIKeyInfo.xml.aspx"); Dictionary <string, string> data = ApiTestHelpers.GetBaseTestParams(); IHttpRequestProvider mockProvider = MockRequests.GetMockedProvider(url, data, ApiKeyInfoXml); // create the client to test using ( var client = new EveAPI(ApiTestHelpers.EveServiceApiHost, ApiTestHelpers.GetNullCacheProvider(), mockProvider)) { // call the method Task <EveServiceResponse <ApiKeyInfo> > asyncTask = client.Account.ApiKeyInfoAsync(ApiTestHelpers.KeyIdValue, ApiTestHelpers.VCodeValue); // wait on the task asyncTask.Wait(); ApiTestHelpers.BasicSuccessResultValidations(asyncTask); EveServiceResponse <ApiKeyInfo> result = asyncTask.Result; Assert.AreEqual(new DateTimeOffset(2011, 10, 28, 11, 19, 39, TimeSpan.Zero), result.CacheUntil); Assert.AreEqual(new DateTimeOffset(2012, 10, 13, 00, 00, 00, TimeSpan.Zero), result.ResultData.Expires); Assert.AreEqual(134217727, result.ResultData.AccessMask); Assert.AreEqual(ApiKeyType.Account, result.ResultData.ApiType); Assert.AreEqual(3, result.ResultData.Characters.Count()); Assert.IsNotNull( result.ResultData.Characters.FirstOrDefault( item => item.Name == "RTC'3" && item.CharacterId == 154432700 && item.CorporationName == "RTC'3 Corp" && item.CorporationId == 98000179)); } }
public static void AccountBalanceTest() { // setup mock data and parameters. var url = new Uri("https://api.eveonline.com/char/AccountBalance.xml.aspx"); const int characterId = 123456; Dictionary <string, string> data = ApiTestHelpers.GetBaseTestParams(); data.Add(ApiConstants.CharacterId, characterId.ToString(CultureInfo.InvariantCulture)); IHttpRequestProvider mockProvider = MockRequests.GetMockedProvider(url, data, AccountBalanceXml); using ( var client = new EveAPI(ApiTestHelpers.EveServiceApiHost, ApiTestHelpers.GetNullCacheProvider(), mockProvider)) { Task <EveServiceResponse <IEnumerable <AccountBalance> > > task = client.Character.AccountBalanceAsync(ApiTestHelpers.KeyIdValue, ApiTestHelpers.VCodeValue, characterId); task.Wait(); ApiTestHelpers.BasicSuccessResultValidations(task); EveServiceResponse <IEnumerable <AccountBalance> > result = task.Result; Assert.AreEqual(new DateTimeOffset(2010, 10, 5, 21, 28, 55, TimeSpan.Zero), result.CacheUntil); Assert.AreEqual(1, result.ResultData.Count()); } }
public static void BasicErrorParsingTest() { var url = new Uri("https://api.eveonline.com/eve/CharacterID.xml.aspx"); var names = new[] { "CCP Garthahk" }; var data = new Dictionary <string, string>(); data.Add(ApiConstants.Names, string.Join(",", names)); IHttpRequestProvider mockProvider = MockRequests.GetMockedProvider(url, data, ApiTestHelpers.GetXmlData("TestData\\Api\\GenericError.xml")); using ( var client = new EveAPI(ApiTestHelpers.EveServiceApiHost, ApiTestHelpers.GetNullCacheProvider(), mockProvider)) { Task <EveServiceResponse <IEnumerable <CharacterName> > > task = client.Eve.CharacterIdAsync(names); task.Wait(); ApiTestHelpers.BasicSuccessResultValidations(task); EveServiceResponse <IEnumerable <CharacterName> > result = task.Result; Assert.AreEqual(222, result.EveErrorCode); Assert.AreEqual("Key has expired. Contact key owner for access renewal.", result.EveErrorText); } }
public static void CharacterNameTestAsyncTest() { // setup mock data and parameters. var url = new Uri("https://api.eveonline.com/eve/CharacterName.xml.aspx"); var ids = new[] { 797400947L, 1188435724L }; var data = new Dictionary <string, string>(); data.Add(ApiConstants.Ids, string.Join(",", ids)); IHttpRequestProvider mockProvider = MockRequests.GetMockedProvider(url, data, ApiTestHelpers.GetXmlData("TestData\\Api\\CharacterName.xml")); using ( var client = new EveAPI(ApiTestHelpers.EveServiceApiHost, ApiTestHelpers.GetNullCacheProvider(), mockProvider)) { Task <EveServiceResponse <IEnumerable <CharacterName> > > task = client.Eve.CharacterNameAsync(ids); task.Wait(); ApiTestHelpers.BasicSuccessResultValidations(task); EveServiceResponse <IEnumerable <CharacterName> > result = task.Result; Assert.AreEqual(2, result.ResultData.Count()); Assert.AreEqual("CCP Prism X", result.ResultData.Skip(1).First().Name); } }
public static void CharacterNameTest() { // setup mock data and parameters. var url = new Uri("https://api.eveonline.com/eve/CharacterName.xml.aspx"); var ids = new[] { 797400947L, 1188435724L }; var data = new Dictionary <string, string>(); data.Add(ApiConstants.Ids, string.Join(",", ids)); IHttpRequestProvider mockProvider = MockRequests.GetMockedProvider(url, data, ApiTestHelpers.GetXmlData("TestData\\Api\\CharacterName.xml")); using ( var client = new EveAPI(ApiTestHelpers.EveServiceApiHost, ApiTestHelpers.GetNullCacheProvider(), mockProvider)) { EveServiceResponse <IEnumerable <CharacterName> > result = client.Eve.CharacterName(ids); Assert.IsTrue(result.IsSuccessfulHttpStatus); Assert.IsFalse(result.IsFaulted); Assert.IsNull(result.ServiceException); Assert.IsFalse(result.CachedResponse); Assert.AreEqual(2, result.ResultData.Count()); Assert.AreEqual("CCP Prism X", result.ResultData.Skip(1).First().Name); } }
public static void MailingListTest() { var url = new Uri("https://api.eveonline.com/char/mailinglists.xml.aspx"); const int characterId = 123456; Dictionary <string, string> data = ApiTestHelpers.GetBaseTestParams(); data.Add(ApiConstants.CharacterId, characterId.ToString(CultureInfo.InvariantCulture)); IHttpRequestProvider mockProvider = MockRequests.GetMockedProvider(url, data, ApiTestHelpers.GetXmlData("TestData\\Api\\Mailinglists.xml")); using ( var client = new EveAPI(ApiTestHelpers.EveServiceApiHost, ApiTestHelpers.GetNullCacheProvider(), mockProvider)) { Task <EveServiceResponse <IEnumerable <MailingList> > > task = client.Character.MailingListsAsync(ApiTestHelpers.KeyIdValue, ApiTestHelpers.VCodeValue, characterId); task.Wait(); ApiTestHelpers.BasicSuccessResultValidations(task); EveServiceResponse <IEnumerable <MailingList> > result = task.Result; Assert.AreEqual(3, result.ResultData.Count()); MailingList sample = result.ResultData.Skip(1).Take(1).First(); Assert.AreEqual(128783669, sample.ListId); Assert.AreEqual("EVEMarkerScanner", sample.DisplayName); } }
public static void CharacterIdTest() { var url = new Uri("https://api.eveonline.com/eve/CharacterID.xml.aspx"); var names = new[] { "CCP Garthahk" }; var data = new Dictionary <string, string>(); data.Add(ApiConstants.Names, string.Join(",", names)); IHttpRequestProvider mockProvider = MockRequests.GetMockedProvider(url, data, ApiTestHelpers.GetXmlData("TestData\\Api\\CharacterId.xml")); using ( var client = new EveAPI(ApiTestHelpers.EveServiceApiHost, ApiTestHelpers.GetNullCacheProvider(), mockProvider)) { Task <EveServiceResponse <IEnumerable <CharacterName> > > task = client.Eve.CharacterIdAsync(names); task.Wait(); ApiTestHelpers.BasicSuccessResultValidations(task); EveServiceResponse <IEnumerable <CharacterName> > result = task.Result; Assert.AreEqual(1, result.ResultData.Count()); Assert.AreEqual("CCP Garthagk", result.ResultData.First().Name); Assert.AreEqual(797400947, result.ResultData.First().Id); } }
public static void BasicSuccessResultValidations <T>(Task <EveServiceResponse <T> > asyncTask) where T : class { // validate return Assert.IsFalse(asyncTask.IsFaulted); Assert.IsNull(asyncTask.Exception); Assert.IsNotNull(asyncTask.Result); EveServiceResponse <T> result = asyncTask.Result; Assert.IsTrue(result.IsSuccessfulHttpStatus); Assert.IsFalse(result.IsFaulted); Assert.IsNull(result.ServiceException); Assert.IsFalse(result.CachedResponse); }
public static void CharacterSheetTest() { var url = new Uri("https://api.eveonline.com/char/CharacterSheet.xml.aspx"); const int characterId = 123456; Dictionary <string, string> data = ApiTestHelpers.GetBaseTestParams(); data.Add(ApiConstants.CharacterId, characterId.ToString(CultureInfo.InvariantCulture)); IHttpRequestProvider mockProvider = MockRequests.GetMockedProvider(url, data, ApiTestHelpers.GetXmlData("TestData\\Api\\CharacterSheet.xml")); using ( var client = new EveAPI(ApiTestHelpers.EveServiceApiHost, ApiTestHelpers.GetNullCacheProvider(), mockProvider)) { Task <EveServiceResponse <CharacterData> > task = client.Character.CharacterSheetAsync(ApiTestHelpers.KeyIdValue, ApiTestHelpers.VCodeValue, characterId); task.Wait(); ApiTestHelpers.BasicSuccessResultValidations(task); EveServiceResponse <CharacterData> result = task.Result; CharacterData resultData = result.ResultData; // spot check some details. Assert.AreEqual(150337897, resultData.CharacterId); Assert.AreEqual("corpslave", resultData.Name); Assert.AreEqual(new DateTimeOffset(2006, 01, 01, 0, 0, 0, TimeSpan.Zero), resultData.BirthDate); Assert.AreEqual("Minmatar", resultData.Race); Assert.AreEqual(190210393.87, resultData.Balance); Assert.AreEqual(6, resultData.Intelligence); Assert.AreEqual(4, resultData.Memory); Assert.AreEqual(7, resultData.Charisma); Assert.AreEqual(12, resultData.Perception); Assert.AreEqual(10, resultData.Willpower); Assert.AreEqual(5, resultData.Skills.Count()); Assert.AreEqual(536500, resultData.Skills.Select(skill => skill.SkillPoints).Sum()); Assert.AreEqual(7, resultData.Certificates.Count()); Assert.AreEqual(239, resultData.Certificates.Skip(3).Take(1).First()); Assert.AreEqual(1, resultData.CorporationRoles.Count()); Assert.AreEqual(1, resultData.CorporationRolesAtHq.Count()); Assert.AreEqual(1, resultData.CorporationRolesAtOthers.Count()); Assert.AreEqual(1, resultData.CorporationRolesAtBase.Count()); } }
public static void ContactListTest() { var url = new Uri("https://api.eveonline.com/char/ContactList.xml.aspx"); const int characterId = 123456; Dictionary <string, string> data = ApiTestHelpers.GetBaseTestParams(); data.Add(ApiConstants.CharacterId, characterId.ToString(CultureInfo.InvariantCulture)); IHttpRequestProvider mockProvider = MockRequests.GetMockedProvider(url, data, ApiTestHelpers.GetXmlData("TestData\\Api\\ContactList.xml")); using ( var client = new EveAPI(ApiTestHelpers.EveServiceApiHost, ApiTestHelpers.GetNullCacheProvider(), mockProvider)) { Task <EveServiceResponse <IEnumerable <Contact> > > task = client.Character.ContactListAsync(ApiTestHelpers.KeyIdValue, ApiTestHelpers.VCodeValue, characterId); task.Wait(); ApiTestHelpers.BasicSuccessResultValidations(task); EveServiceResponse <IEnumerable <Contact> > result = task.Result; List <Contact> resultData = result.ResultData.ToList(); Assert.AreEqual(4, resultData.Count()); // personal contacts Assert.AreEqual(3010913, resultData.Take(1).First().ContactId); Assert.AreEqual("Hirento Raikkanen", resultData.Take(1).First().ContactName); Assert.AreEqual(false, resultData.Take(1).First().IsInWatchList); Assert.AreEqual(0, resultData.Take(1).First().Standing); Assert.AreEqual(797400947, resultData.Skip(1).Take(1).First().ContactId); Assert.AreEqual("CCP Garthagk", resultData.Skip(1).Take(1).First().ContactName); Assert.AreEqual(true, resultData.Skip(1).Take(1).First().IsInWatchList); Assert.AreEqual(10, resultData.Skip(1).Take(1).First().Standing); // corp contacts Assert.AreEqual(797400947, resultData[2].ContactId); Assert.AreEqual("CCP Garthagk", resultData[2].ContactName); Assert.AreEqual(false, resultData[2].IsInWatchList); // Assert.AreEqual(ContactType.CorporateContactList, resultData[2].ContactType); Assert.AreEqual(-10, resultData[2].Standing); } }
public static void CharactersTest() { // setup mock data and parameters. var url = new Uri("https://api.eveonline.com/account/Characters.xml.aspx"); Dictionary <string, string> data = ApiTestHelpers.GetBaseTestParams(); IHttpRequestProvider mockProvider = MockRequests.GetMockedProvider(url, data, CharactersXml); // create the client to test using ( var client = new EveAPI(ApiTestHelpers.EveServiceApiHost, ApiTestHelpers.GetNullCacheProvider(), mockProvider)) { // call the method Task <EveServiceResponse <IEnumerable <AccountCharacter> > > asyncTask = client.Account.CharactersAsync(ApiTestHelpers.KeyIdValue, ApiTestHelpers.VCodeValue); // wait on the task asyncTask.Wait(); ApiTestHelpers.BasicSuccessResultValidations(asyncTask); EveServiceResponse <IEnumerable <AccountCharacter> > result = asyncTask.Result; Assert.AreEqual(new DateTimeOffset(2007, 12, 12, 12, 48, 50, TimeSpan.Zero), result.CacheUntil); Assert.AreEqual(3, result.ResultData.Count()); Assert.IsNotNull( result.ResultData.FirstOrDefault( item => item.Name == "Mary" && item.CharacterId == 150267069 && item.CorporationName == "Starbase Anchoring Corp" && item.CorporationId == 150279367)); Assert.IsNotNull( result.ResultData.FirstOrDefault( item => item.Name == "Marcus" && item.CharacterId == 150302299 && item.CorporationName == "Marcus Corp" && item.CorporationId == 150333466)); Assert.IsNotNull( result.ResultData.FirstOrDefault( item => item.Name == "Dieniafire" && item.CharacterId == 150340823 && item.CorporationName == "center for Advanced Studies" && item.CorporationId == 1000169)); } }