dsander-reve 0.0.131 → 0.0.132
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/reve/classes.rb +18 -0
- data/lib/reve.rb +23 -5
- data/test/test_reve.rb +20 -0
- metadata +3 -3
data/lib/reve/classes.rb
CHANGED
@@ -159,6 +159,24 @@ module Reve #:nodoc:
|
|
159
159
|
end
|
160
160
|
end
|
161
161
|
|
162
|
+
# Represents a single Contact
|
163
|
+
# Attributes:
|
164
|
+
# * contact_id ( Fixnum ) - ID of the Contact.
|
165
|
+
# * contact_name ( String ) - Name of the belligerant Contact.
|
166
|
+
# * in_watchlist ( Fixnum ) - Whether or not the Contact is in the watchlist.
|
167
|
+
# * standing ( String ) - The standing of the Contact.
|
168
|
+
class PersonalContact
|
169
|
+
attr_reader :contact_id, :contact_name, :in_watchlist, :standing
|
170
|
+
def initialize(elem) #:nodoc:
|
171
|
+
@contact_id = elem['contactID'].to_i
|
172
|
+
@contact_name = elem['contactName']
|
173
|
+
@in_watchlist = elem['inWatchlist'] == 'True' ? true : false
|
174
|
+
@standing = elem['standing'].to_i
|
175
|
+
end
|
176
|
+
end
|
177
|
+
|
178
|
+
class CorporateContact < PersonalContact; end
|
179
|
+
|
162
180
|
# The status of a System with regards to a FactionWar. Who controls what
|
163
181
|
# and what System is contested
|
164
182
|
# Attributes:
|
data/lib/reve.rb
CHANGED
@@ -89,9 +89,11 @@ module Reve
|
|
89
89
|
@@corp_member_medals_url = 'http://api.eve-online.com/corp/MemberMedals.xml.aspx'
|
90
90
|
@@server_status_url = 'http://api.eve-online.com/Server/ServerStatus.xml.aspx'
|
91
91
|
@@research_url = 'http://api.eve-online.com/char/Research.xml.aspx'
|
92
|
-
@@personal_notification_url
|
93
|
-
@@personal_mailing_lists_url
|
94
|
-
@@personal_mail_messages_url
|
92
|
+
@@personal_notification_url = 'http://api.eve-online.com/char/Notifications.xml.aspx'
|
93
|
+
@@personal_mailing_lists_url = 'http://api.eve-online.com/char/mailinglists.xml.aspx'
|
94
|
+
@@personal_mail_messages_url = 'http://api.eve-online.com/char/MailMessages.xml.aspx'
|
95
|
+
@@personal_contacts_url = 'http://api.eve-online.com/char/ContactList.xml.aspx'
|
96
|
+
@@corporate_contacts_url = 'http://api.eve-online.com/corp/ContactList.xml.aspx'
|
95
97
|
|
96
98
|
cattr_accessor :character_sheet_url, :training_skill_url, :characters_url, :personal_wallet_journal_url,
|
97
99
|
:corporate_wallet_journal_url, :personal_wallet_trans_url, :corporate_wallet_trans_url,
|
@@ -106,7 +108,7 @@ module Reve
|
|
106
108
|
:certificate_tree_url, :character_medals_url, :corporate_medals_url,
|
107
109
|
:corp_member_medals_url, :server_status_url, :skill_queue_url, :corporation_member_security_url,
|
108
110
|
:personal_notification_url, :personal_mailing_lists_url, :personal_mail_messages_url,
|
109
|
-
:research_url
|
111
|
+
:research_url, :personal_contacts_url, :corporate_contacts_url
|
110
112
|
|
111
113
|
|
112
114
|
attr_accessor :key, :userid, :charid
|
@@ -291,7 +293,23 @@ module Reve
|
|
291
293
|
return h if h
|
292
294
|
process_query(Reve::Classes::CorporateIndustryJob, opts[:url] || @@corporate_industry_jobs_url,false,args)
|
293
295
|
end
|
294
|
-
|
296
|
+
|
297
|
+
# Returns a list of Reve::Classes::PersonalContact objects.
|
298
|
+
def personal_contacts(opts = {:characterid => nil})
|
299
|
+
args = postfields(opts)
|
300
|
+
h = compute_hash(args.merge(:url => @@personal_contacts_url))
|
301
|
+
return h if h
|
302
|
+
process_query(Reve::Classes::PersonalContact, opts[:url] || @@personal_contacts_url,false,args)
|
303
|
+
end
|
304
|
+
|
305
|
+
# Returns a list of Reve::Classes::CorporateContact objects.
|
306
|
+
def corporate_contacts(opts = {:characterid => nil})
|
307
|
+
args = postfields(opts)
|
308
|
+
h = compute_hash(args.merge(:url => @@corporate_contacts_url))
|
309
|
+
return h if h
|
310
|
+
process_query(Reve::Classes::PersonalContact, opts[:url] || @@corporate_contacts_url,false,args)
|
311
|
+
end
|
312
|
+
|
295
313
|
# Returns the SkillTree from
|
296
314
|
# http://api.eve-online.com/eve/SkillTree.xml.aspx
|
297
315
|
# See also: Reve::Classes::SkillTree
|
data/test/test_reve.rb
CHANGED
@@ -295,6 +295,26 @@ class TestReve < Test::Unit::TestCase
|
|
295
295
|
end
|
296
296
|
end
|
297
297
|
|
298
|
+
def test_personal_contacts_clean
|
299
|
+
Reve::API.personal_contacts_url = XML_BASE + 'char_contacts.xml'
|
300
|
+
contacts = @api.personal_contacts
|
301
|
+
assert_equal(2, contacts.length)
|
302
|
+
assert_equal("Hirento Raikkanen", contacts.first.contact_name )
|
303
|
+
assert_equal(3010913, contacts.first.contact_id )
|
304
|
+
assert_equal(false, contacts.first.in_watchlist )
|
305
|
+
assert_equal(0, contacts.first.standing )
|
306
|
+
end
|
307
|
+
|
308
|
+
def test_corporate_contacts_clean
|
309
|
+
Reve::API.corporate_contacts_url = XML_BASE + 'char_contacts.xml'
|
310
|
+
contacts = @api.corporate_contacts
|
311
|
+
assert_equal(2, contacts.length)
|
312
|
+
assert_equal("Hirento Raikkanen", contacts.first.contact_name )
|
313
|
+
assert_equal(3010913, contacts.first.contact_id )
|
314
|
+
assert_equal(false, contacts.first.in_watchlist )
|
315
|
+
assert_equal(0, contacts.first.standing )
|
316
|
+
end
|
317
|
+
|
298
318
|
def test_faction_war_system_stats_clean(skip_preamble = false,stats = nil)
|
299
319
|
Reve::API.faction_war_occupancy_url = XML_BASE + 'map_facwarsystems.xml'
|
300
320
|
unless skip_preamble # not best practice but will get the job done!
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 0
|
8
|
-
-
|
9
|
-
version: 0.0.
|
8
|
+
- 132
|
9
|
+
version: 0.0.132
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Lisa Seelye
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date:
|
17
|
+
date: 2010-09-07 00:00:00 +00:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|