reve 0.0.77 → 0.0.80
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/exceptions.rb +3 -0
- data/lib/reve/extensions.rb +1 -15
- data/lib/reve.rb +6 -9
- data/test/test_reve.rb +125 -19
- data/test/xml/corporate_assets_list.xml +16 -0
- data/test/xml/corporate_market_orders.xml +10 -0
- data/test/xml/corporate_wallet_balance.xml +16 -0
- data/test/xml/corporate_wallet_journal.xml +11 -0
- data/test/xml/corporate_wallet_transactions.xml +10 -0
- data/test/xml/errors.xml +70 -0
- data/test/xml/kills.xml +5 -1
- data/test/xml/marketorders.xml +7 -1
- metadata +8 -2
data/lib/reve/exceptions.rb
CHANGED
@@ -339,5 +339,8 @@ module Reve
|
|
339
339
|
# this is an Exception to do with the connection to the Eve server failing
|
340
340
|
class ReveNetworkStatusException < StandardError
|
341
341
|
end
|
342
|
+
# used when something is encountered in XML that we didn't expect
|
343
|
+
class ReveUnexpectedEntityEncountered < StandardError
|
344
|
+
end
|
342
345
|
end
|
343
346
|
end
|
data/lib/reve/extensions.rb
CHANGED
@@ -83,7 +83,7 @@ module Reve #:nodoc:
|
|
83
83
|
def to_time(form = :utc)
|
84
84
|
begin
|
85
85
|
::Time.send(form, *ParseDate.parsedate(self))
|
86
|
-
rescue
|
86
|
+
rescue Exception
|
87
87
|
self
|
88
88
|
end
|
89
89
|
end
|
@@ -93,20 +93,6 @@ end
|
|
93
93
|
|
94
94
|
class String #:nodoc:
|
95
95
|
include Reve::Extensions::String
|
96
|
-
|
97
|
-
# Try to make an Integer from a string. Will make sure that there's
|
98
|
-
# actually an integer there. "ponies".to_i will return "ponies" since it
|
99
|
-
# isn't an Integer. Yeah, probably not the best way but I do this with
|
100
|
-
# to_time and to_date. Deal with it - at least it doesn't raise an
|
101
|
-
# Exception.
|
102
|
-
# (Have to redefine this method as it already exists in base String class)
|
103
|
-
def to_i
|
104
|
-
begin
|
105
|
-
Integer(self).to_s == self ? Integer(self) : self
|
106
|
-
rescue ArgumentError
|
107
|
-
self
|
108
|
-
end
|
109
|
-
end
|
110
96
|
end
|
111
97
|
|
112
98
|
class Class #:nodoc:
|
data/lib/reve.rb
CHANGED
@@ -247,7 +247,7 @@ module Reve
|
|
247
247
|
args = postfields(opts)
|
248
248
|
h = compute_hash(args.merge(:url => @@corporate_market_orders_url))
|
249
249
|
return h if h
|
250
|
-
process_query(Reve::Classes::
|
250
|
+
process_query(Reve::Classes::CorporateMarketOrder, opts[:url] || @@corporate_market_orders_url, false, args)
|
251
251
|
end
|
252
252
|
|
253
253
|
# Returns a list of Reve::Classes::PersonalIndustryJob objects.
|
@@ -610,8 +610,6 @@ module Reve
|
|
610
610
|
thing = Reve::Classes::PerceptionEnhancer
|
611
611
|
when 'willpowerBonus'
|
612
612
|
thing = Reve::Classes::WillpowerEnhancer
|
613
|
-
else
|
614
|
-
thing = Reve::Classes::AttributeEnhancer
|
615
613
|
end
|
616
614
|
(enh/kind.downcase.intern).each do |b|
|
617
615
|
name = (b/:augmentatorname).inner_html
|
@@ -694,11 +692,10 @@ module Reve
|
|
694
692
|
|
695
693
|
return xml if just_xml
|
696
694
|
return [] if xml.nil? # No XML document returned. We should panic.
|
697
|
-
|
698
|
-
|
699
|
-
|
700
|
-
|
701
|
-
ret
|
695
|
+
|
696
|
+
# Create the array of klass objects to return, assume we start with an empty set from the XML search for rows
|
697
|
+
# and build from there.
|
698
|
+
xml.search("//rowset/row").inject([]) { |ret,elem| ret << klass.new(elem) }
|
702
699
|
end
|
703
700
|
|
704
701
|
# Turns a hash into ?var=baz&bam=boo
|
@@ -790,4 +787,4 @@ module Reve
|
|
790
787
|
File.join(@save_path,@userid.to_s,method,( @cached_until || Time.now.utc).to_i.to_s + '.xml')
|
791
788
|
end
|
792
789
|
end
|
793
|
-
end
|
790
|
+
end
|
data/test/test_reve.rb
CHANGED
@@ -1,24 +1,8 @@
|
|
1
|
-
=begin
|
2
|
-
TODO: Test:
|
3
|
-
* market orders with closed, pending and character deleted status
|
4
|
-
* errors
|
5
|
-
* corporate_market_orders
|
6
|
-
* corporate_wallet_balance
|
7
|
-
* corporate_wallet_transactions
|
8
|
-
* corporate_wallet_journal
|
9
|
-
* corporate_assets_list
|
10
|
-
* personal_kills (with contained losses)
|
11
|
-
* corporate_kills
|
12
|
-
* character_sheet with a generic AttributeEnhancer (or remove the option and raise an exception)
|
13
|
-
* test get_xml when a nil object is passed to test ReveNetworkStatusException
|
14
|
-
* check check_xml to try and provoke a failure in the search
|
15
|
-
=end
|
16
|
-
|
17
1
|
require 'test/unit'
|
18
2
|
require 'reve'
|
19
3
|
require 'fileutils' # for saving downloaded XML
|
20
4
|
|
21
|
-
XML_BASE = File.join(File.dirname(__FILE__),'
|
5
|
+
XML_BASE = File.join(File.dirname(__FILE__),'xml/')
|
22
6
|
SAVE_PATH = File.join(File.dirname(__FILE__),'downloads')
|
23
7
|
|
24
8
|
class TestReve < Test::Unit::TestCase
|
@@ -105,6 +89,30 @@ class TestReve < Test::Unit::TestCase
|
|
105
89
|
assert_equal 0, Dir.glob(File.join(SAVE_PATH,'alliances','*.xml')).size # no XML saved
|
106
90
|
end
|
107
91
|
|
92
|
+
# File.split exists and File is not a String or URI class as permitted in Reve::API#get_xml.
|
93
|
+
# This means as a parameter it will pass through Reve::API#compute_hash method and
|
94
|
+
# get to Reve::API#get_xml
|
95
|
+
def test_for_bad_uri_passed_to_method
|
96
|
+
assert_raise Reve::Exceptions::ReveNetworkStatusException do
|
97
|
+
@api.character_sheet :url => File
|
98
|
+
end
|
99
|
+
end
|
100
|
+
|
101
|
+
def test_check_exception_with_bad_xml_document
|
102
|
+
assert_raise ArgumentError do
|
103
|
+
@api.send(:check_exception,nil)
|
104
|
+
end
|
105
|
+
end
|
106
|
+
|
107
|
+
def test_errors_api_call
|
108
|
+
errors = nil
|
109
|
+
assert_nothing_raised do
|
110
|
+
errors = @api.errors :url => File.join(XML_BASE,'errors.xml')
|
111
|
+
end
|
112
|
+
assert errors.all? { |e| e.kind_of?(Reve::Classes::APIError) }
|
113
|
+
assert_equal 61, errors.size # 61 errors in total
|
114
|
+
end
|
115
|
+
|
108
116
|
def test_corporation_sheet_clean
|
109
117
|
Reve::API.corporation_sheet_url = XML_BASE + 'corporation_sheet.xml'
|
110
118
|
corporation = nil
|
@@ -226,6 +234,7 @@ class TestReve < Test::Unit::TestCase
|
|
226
234
|
end
|
227
235
|
assert_equal 18, assets.size # 18 single and 1 container
|
228
236
|
assert_equal 1, assets.inject(0) { |memo,a| memo += a.assets.size } # We have one container and it happens to have 1 asset
|
237
|
+
assert assets.all? { |a| a.kind_of?(Reve::Classes::AssetContainer) }
|
229
238
|
end
|
230
239
|
|
231
240
|
|
@@ -239,6 +248,14 @@ class TestReve < Test::Unit::TestCase
|
|
239
248
|
end
|
240
249
|
assert_equal 10, kills.size
|
241
250
|
assert_equal 10, kills.collect { |k| k.victim.name }.nitems # i should have 10 good victim names
|
251
|
+
|
252
|
+
# Process the Kills here to get the number of "Contained Losses" - KillLoss that are contained within another
|
253
|
+
# KillLoss (like a Giant Secure Container); there should only be one contained loss and should be
|
254
|
+
# 63 losses (not including the contained_losses)
|
255
|
+
losses = kills.collect { |k| k.losses }.flatten
|
256
|
+
assert_equal 63, losses.size
|
257
|
+
contained_losses = losses.collect { |loss| loss.contained_losses }.flatten
|
258
|
+
assert_equal 1, contained_losses.size
|
242
259
|
|
243
260
|
attacker_names = kills.collect { |k| k.attackers.collect { |a| a.name } }.flatten
|
244
261
|
assert_equal 25, attacker_names.size # total of 25 attackers (24 players + 1 NPC)
|
@@ -252,6 +269,36 @@ class TestReve < Test::Unit::TestCase
|
|
252
269
|
assert_nil kill.moon_id # the ones in the kills.xml are all nil
|
253
270
|
end
|
254
271
|
end
|
272
|
+
|
273
|
+
def test_corporate_kills_clean
|
274
|
+
Reve::API.corporate_kills_url = XML_BASE + 'kills.xml'
|
275
|
+
kills = nil
|
276
|
+
assert_nothing_raised do
|
277
|
+
kills = @api.corporate_kills
|
278
|
+
end
|
279
|
+
assert_equal 10, kills.size
|
280
|
+
assert_equal 10, kills.collect { |k| k.victim.name }.nitems # i should have 10 good victim names
|
281
|
+
|
282
|
+
# Process the Kills here to get the number of "Contained Losses" - KillLoss that are contained within another
|
283
|
+
# KillLoss (like a Giant Secure Container); there should only be one contained loss and should be
|
284
|
+
# 63 losses (not including the contained_losses)
|
285
|
+
losses = kills.collect { |k| k.losses }.flatten
|
286
|
+
assert_equal 63, losses.size
|
287
|
+
contained_losses = losses.collect { |loss| loss.contained_losses }.flatten
|
288
|
+
assert_equal 1, contained_losses.size
|
289
|
+
|
290
|
+
attacker_names = kills.collect { |k| k.attackers.collect { |a| a.name } }.flatten
|
291
|
+
assert_equal 25, attacker_names.size # total of 25 attackers (24 players + 1 NPC)
|
292
|
+
assert_equal 1, attacker_names.grep(nil).size # npc exists once
|
293
|
+
assert_equal 24, attacker_names.nitems # 24 player attackers
|
294
|
+
|
295
|
+
kills.each do |kill|
|
296
|
+
assert_kind_of Integer, kill.id
|
297
|
+
assert_kind_of Integer, kill.system_id
|
298
|
+
assert_kind_of Time, kill.created_at
|
299
|
+
assert_nil kill.moon_id # the ones in the kills.xml are all nil
|
300
|
+
end
|
301
|
+
end
|
255
302
|
|
256
303
|
def test_characters_clean
|
257
304
|
Reve::API.characters_url = XML_BASE + 'characters.xml'
|
@@ -365,7 +412,7 @@ class TestReve < Test::Unit::TestCase
|
|
365
412
|
end
|
366
413
|
assert_not_nil @api.last_hash
|
367
414
|
assert_not_nil @api.cached_until
|
368
|
-
assert_equal
|
415
|
+
assert_equal 11, orders.size
|
369
416
|
buys = sells = 0
|
370
417
|
orders.each do |order|
|
371
418
|
assert_not_nil order.id
|
@@ -375,7 +422,66 @@ class TestReve < Test::Unit::TestCase
|
|
375
422
|
sells += 1 if order.bid
|
376
423
|
end
|
377
424
|
assert_equal 4, buys
|
378
|
-
assert_equal
|
425
|
+
assert_equal 7, sells
|
426
|
+
end
|
427
|
+
|
428
|
+
def test_corporate_market_orders_clean
|
429
|
+
orders = nil
|
430
|
+
assert_nothing_raised do
|
431
|
+
orders = @api.corporate_market_orders :url => File.join(XML_BASE,'corporate_market_orders.xml')
|
432
|
+
end
|
433
|
+
assert_not_nil @api.last_hash
|
434
|
+
assert_not_nil @api.cached_until
|
435
|
+
assert_equal 1, orders.size
|
436
|
+
buys = sells = 0
|
437
|
+
orders.each do |order|
|
438
|
+
assert_not_nil order.id
|
439
|
+
assert_kind_of Time, order.created_at
|
440
|
+
assert [TrueClass, FalseClass].include?(order.bid.class)
|
441
|
+
buys += 1 if ! order.bid
|
442
|
+
sells += 1 if order.bid
|
443
|
+
end
|
444
|
+
assert_equal 1, buys
|
445
|
+
assert_equal 0, sells
|
446
|
+
end
|
447
|
+
|
448
|
+
def test_corporate_wallet_transactions
|
449
|
+
trans = nil
|
450
|
+
assert_nothing_raised do
|
451
|
+
trans = @api.corporate_wallet_transactions :url => File.join(XML_BASE,'corporate_wallet_transactions.xml')
|
452
|
+
end
|
453
|
+
assert_equal 1, trans.size
|
454
|
+
assert_kind_of Reve::Classes::CorporateWalletTransaction, trans.first
|
455
|
+
end
|
456
|
+
|
457
|
+
def test_corporate_wallet_balance_clean
|
458
|
+
balance = nil
|
459
|
+
assert_nothing_raised do
|
460
|
+
balance = @api.corporate_wallet_balance :url => File.join(XML_BASE, 'corporate_wallet_balance.xml')
|
461
|
+
end
|
462
|
+
assert balance.all? { |b| b.kind_of?(Reve::Classes::WalletBalance) }
|
463
|
+
assert_equal 18004409.84, balance.select { |b| b.account_key == '1000' }.first.balance
|
464
|
+
balance.select { |b| b.account_key != '1000' }.each do |non_tested_account|
|
465
|
+
assert_equal 0.00, non_tested_account.balance
|
466
|
+
end
|
467
|
+
end
|
468
|
+
|
469
|
+
def test_corporate_wallet_journal_clean
|
470
|
+
journal = nil
|
471
|
+
assert_nothing_raised do
|
472
|
+
journal = @api.corporate_wallet_journal :url => File.join(XML_BASE,'corporate_wallet_journal.xml')
|
473
|
+
end
|
474
|
+
assert_equal 2, journal.size
|
475
|
+
assert journal.all? { |j| j.kind_of?(Reve::Classes::WalletJournal) }
|
476
|
+
end
|
477
|
+
|
478
|
+
def test_corporate_assets_list_clean
|
479
|
+
assets = nil
|
480
|
+
assert_nothing_raised do
|
481
|
+
assets = @api.corporate_assets_list :url => File.join(XML_BASE,'corporate_assets_list.xml')
|
482
|
+
end
|
483
|
+
assert_equal 2, assets.size
|
484
|
+
assert assets.all? { |a| a.kind_of?(Reve::Classes::AssetContainer) }
|
379
485
|
end
|
380
486
|
|
381
487
|
def test_map_jumps_clean
|
@@ -0,0 +1,16 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<eveapi version="2">
|
3
|
+
<currenttime>2008-02-03 14:51:15</currenttime>
|
4
|
+
<result>
|
5
|
+
<rowset columns="itemID,locationID,typeID,quantity,flag,singleton" name="assets" key="itemID">
|
6
|
+
<row typeid="215" itemid="1454093021" singleton="0" quantity="100" flag="62" locationid="60003838">
|
7
|
+
</row>
|
8
|
+
<row typeid="649" itemid="543447240" singleton="1" quantity="1" flag="4" locationid="60003913">
|
9
|
+
<rowset columns="itemID,typeID,quantity,flag,singleton" name="contents" key="itemID">
|
10
|
+
<row typeid="11489" itemid="782544272" singleton="1" quantity="1" flag="5">
|
11
|
+
</row></rowset>
|
12
|
+
</row>
|
13
|
+
</rowset>
|
14
|
+
</result>
|
15
|
+
<cacheduntil>2008-02-04 13:51:15</cacheduntil>
|
16
|
+
</eveapi>
|
@@ -0,0 +1,10 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<eveapi version="2">
|
3
|
+
<currenttime>2008-02-03 14:50:26</currenttime>
|
4
|
+
<result>
|
5
|
+
<rowset columns="orderID,charID,stationID,volEntered,volRemaining,minVolume,orderState,typeID,range,accountKey,duration,escrow,price,bid,issued" name="orders" key="orderID">
|
6
|
+
<row minvolume="1" price="2.50" orderid="640467432" typeid="215" volremaining="50" issued="2008-02-03 14:47:15" stationid="60003838" volentered="50" escrow="0.00" charid="892804655" orderstate="0" bid="0" accountkey="1000" range="32767" duration="90">
|
7
|
+
</row></rowset>
|
8
|
+
</result>
|
9
|
+
<cacheduntil>2008-02-03 15:50:26</cacheduntil>
|
10
|
+
</eveapi>
|
@@ -0,0 +1,16 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<eveapi version="2">
|
3
|
+
<currenttime>2008-02-03 14:50:39</currenttime>
|
4
|
+
<result>
|
5
|
+
<rowset columns="accountID,accountKey,balance" name="accounts" key="accountID">
|
6
|
+
<row accountid="9161533" accountkey="1000" balance="18004409.84">
|
7
|
+
</row><row accountid="13679725" accountkey="1001" balance="0.00">
|
8
|
+
</row><row accountid="13679726" accountkey="1002" balance="0.00">
|
9
|
+
</row><row accountid="13679727" accountkey="1003" balance="0.00">
|
10
|
+
</row><row accountid="13679728" accountkey="1004" balance="0.00">
|
11
|
+
</row><row accountid="13679729" accountkey="1005" balance="0.00">
|
12
|
+
</row><row accountid="13679730" accountkey="1006" balance="0.00">
|
13
|
+
</row></rowset>
|
14
|
+
</result>
|
15
|
+
<cacheduntil>2008-02-03 15:05:39</cacheduntil>
|
16
|
+
</eveapi>
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<eveapi version="2">
|
3
|
+
<currenttime>2008-02-03 14:51:03</currenttime>
|
4
|
+
<result>
|
5
|
+
<rowset columns="date,refID,refTypeID,ownerName1,ownerID1,ownerName2,ownerID2,argName1,argID1,amount,balance,reason" name="entries" key="refID">
|
6
|
+
<row date="2008-02-03 14:47:00" argid1="1" argname1="EVE System" amount="-100.00" ownerid1="892804655" refid="922128913" ownername1="Liquidator Brunt" reftypeid="46" ownerid2="1000035" reason="" ownername2="Caldari Navy" balance="18004409.84">
|
7
|
+
</row><row date="2008-02-03 14:47:00" argid1="0" argname1="" amount="-270.00" ownerid1="892804655" refid="922126594" ownername1="Liquidator Brunt" reftypeid="42" ownerid2="0" reason="" ownername2="" balance="18004509.84">
|
8
|
+
</row></rowset>
|
9
|
+
</result>
|
10
|
+
<cacheduntil>2008-02-03 15:51:03</cacheduntil>
|
11
|
+
</eveapi>
|
@@ -0,0 +1,10 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<eveapi version="2">
|
3
|
+
<currenttime>2008-02-03 14:50:52</currenttime>
|
4
|
+
<result>
|
5
|
+
<rowset columns="transactionDateTime,transactionID,quantity,typeName,typeID,price,clientID,clientName,characterID,characterName,stationID,stationName,transactionType,transactionFor" name="transactions" key="transactionID">
|
6
|
+
<row charactername="Liquidator Brunt" price="2.70" transactiontype="buy" typeid="215" transactionid="545372452" transactiondatetime="2008-02-03 14:47:00" transactionfor="corporation" stationid="60003838" characterid="892804655" clientname="Ceredrif" quantity="100" stationname="Sarekuwa III - Moon 8 - Caldari Navy Assembly Plant" typename="Iron Charge S" clientid="1710698307">
|
7
|
+
</row></rowset>
|
8
|
+
</result>
|
9
|
+
<cacheduntil>2008-02-03 15:50:52</cacheduntil>
|
10
|
+
</eveapi>
|
data/test/xml/errors.xml
ADDED
@@ -0,0 +1,70 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<eveapi version="2">
|
3
|
+
<currenttime>2008-02-03 13:58:00</currenttime>
|
4
|
+
<result>
|
5
|
+
<rowset columns="errorCode,errorText" name="errors" key="errorCode">
|
6
|
+
<row errortext="Expected before ref/trans ID = 0: wallet not previously loaded." errorcode="100">
|
7
|
+
</row><row errortext="Wallet exhausted: retry after {0}." errorcode="101">
|
8
|
+
</row><row errortext="Expected before ref/trans ID [{0}] but supplied [{1}]: wallet previously loaded." errorcode="102">
|
9
|
+
</row><row errortext="Already returned one week of data: retry after {0}." errorcode="103">
|
10
|
+
</row><row errortext="Invalid characterID." errorcode="105">
|
11
|
+
</row><row errortext="Must provide userID parameter for authentication." errorcode="106">
|
12
|
+
</row><row errortext="Invalid beforeRefID provided." errorcode="107">
|
13
|
+
</row><row errortext="Invalid accountKey provided." errorcode="108">
|
14
|
+
</row><row errortext="Invalid accountKey: must be in the range 1000 to 1006." errorcode="109">
|
15
|
+
</row><row errortext="Invalid beforeTransID provided." errorcode="110">
|
16
|
+
</row><row errortext="'{0}' is not a valid integer." errorcode="111">
|
17
|
+
</row><row errortext="Version mismatch." errorcode="112">
|
18
|
+
</row><row errortext="Version escalation is not allowed at this time." errorcode="113">
|
19
|
+
</row><row errortext="Invalid itemID provided." errorcode="114">
|
20
|
+
</row><row errortext="Assets already downloaded: retry after {0}." errorcode="115">
|
21
|
+
</row><row errortext="Industry jobs already downloaded: retry after {0}." errorcode="116">
|
22
|
+
</row><row errortext="Market orders already downloaded: retry after {0}." errorcode="117">
|
23
|
+
</row><row errortext="Expected beforeKillID = 0: wallet not previously loaded." errorcode="118">
|
24
|
+
</row><row errortext="Kills exhausted: retry after {0}." errorcode="119">
|
25
|
+
</row><row errortext="Expected beforeKillID [{0}] but supplied [{1}]: kills previously loaded." errorcode="120">
|
26
|
+
</row><row errortext="Invalid beforeKillID provided." errorcode="121">
|
27
|
+
</row><row errortext="Current security level not high enough." errorcode="200">
|
28
|
+
</row><row errortext="Character does not belong to account." errorcode="201">
|
29
|
+
</row><row errortext="Cached API key authentication failure." errorcode="202">
|
30
|
+
</row><row errortext="Authentication failure." errorcode="203">
|
31
|
+
</row><row errortext="Authentication failure." errorcode="204">
|
32
|
+
</row><row errortext="Authentication failure (final pass)." errorcode="205">
|
33
|
+
</row><row errortext="Character must have Accountant or Junior Accountant roles." errorcode="206">
|
34
|
+
</row><row errortext="Not available for NPC corporations." errorcode="207">
|
35
|
+
</row><row errortext="Character must have Accountant, Junior Accountant, or Trader roles." errorcode="208">
|
36
|
+
</row><row errortext="Character must be a Director or CEO." errorcode="209">
|
37
|
+
</row><row errortext="Authentication failure." errorcode="210">
|
38
|
+
</row><row errortext="Login denied by account status." errorcode="211">
|
39
|
+
</row><row errortext="Authentication failure (final pass)." errorcode="212">
|
40
|
+
</row><row errortext="Character must have Factory Manager role." errorcode="213">
|
41
|
+
</row><row errortext="Corporation is not part of alliance." errorcode="214">
|
42
|
+
</row><row errortext="GetID({0}) is invalid or not loaded." errorcode="501">
|
43
|
+
</row><row errortext="GetSkillpointsForLevel({0}, {1}): invalid input." errorcode="503">
|
44
|
+
</row><row errortext="GetRace({0}): invalid race." errorcode="504">
|
45
|
+
</row><row errortext="GetGender({0}): invalid gender." errorcode="505">
|
46
|
+
</row><row errortext="GetBloodline({0}): invalid bloodline." errorcode="506">
|
47
|
+
</row><row errortext="GetAttributeName({0}): invalid attribute." errorcode="507">
|
48
|
+
</row><row errortext="GetRefType({0}): invalid reftype." errorcode="508">
|
49
|
+
</row><row errortext="attributeID {0} has null data components." errorcode="509">
|
50
|
+
</row><row errortext="Character does not appear to have a corporation. Not loaded?" errorcode="510">
|
51
|
+
</row><row errortext="AccountCanQuery({0}): invalid accountKey." errorcode="511">
|
52
|
+
</row><row errortext="Invalid charID passed to CharData.GetCharacter()." errorcode="512">
|
53
|
+
</row><row errortext="Failed to get character roles in corporation." errorcode="513">
|
54
|
+
</row><row errortext="Invalid corpID passed to CorpData.GetCorporation()." errorcode="514">
|
55
|
+
</row><row errortext="Failed getting user information." errorcode="516">
|
56
|
+
</row><row errortext="CSV header/row count mismatch." errorcode="517">
|
57
|
+
</row><row errortext="Unable to get current TQ time." errorcode="518">
|
58
|
+
</row><row errortext="Failed getting starbase detail information." errorcode="519">
|
59
|
+
</row><row errortext="Unexpected failure accessing database." errorcode="520">
|
60
|
+
</row><row errortext="Invalid username and/or password passed to UserData.LoginWebUser()." errorcode="521">
|
61
|
+
</row><row errortext="Failed getting character information." errorcode="522">
|
62
|
+
</row><row errortext="Failed getting corporation information." errorcode="523">
|
63
|
+
</row><row errortext="Web site database temporarily disabled." errorcode="901">
|
64
|
+
</row><row errortext="EVE backend database temporarily disabled." errorcode="902">
|
65
|
+
</row><row errortext="Rate limited [{0}]: please obey all cachedUntil timers." errorcode="903">
|
66
|
+
</row><row errortext="User forced test error condition." errorcode="999">
|
67
|
+
</row></rowset>
|
68
|
+
</result>
|
69
|
+
<cacheduntil>2008-02-03 14:58:00</cacheduntil>
|
70
|
+
</eveapi>
|
data/test/xml/kills.xml
CHANGED
@@ -19,7 +19,11 @@
|
|
19
19
|
</rowset>
|
20
20
|
<rowset name="items" columns="typeID,flag,qtyDropped,qtyDestroyed">
|
21
21
|
<row typeID="3651" flag="0" qtyDropped="0" qtyDestroyed="1" />
|
22
|
-
<row typeID="
|
22
|
+
<row typeID="11489" flag="5" qtyDropped="1" qtyDestroyed="0">
|
23
|
+
<rowset name="items" columns="typeID,flag,qtyDropped,qtyDestroyed">
|
24
|
+
<row typeID="34" flag="5" qtyDropped="100" qtyDestroyed="0" />
|
25
|
+
</rowset>
|
26
|
+
</row>
|
23
27
|
<row typeID="3636" flag="0" qtyDropped="0" qtyDestroyed="1" />
|
24
28
|
</rowset>
|
25
29
|
</row>
|
data/test/xml/marketorders.xml
CHANGED
@@ -29,7 +29,13 @@
|
|
29
29
|
minVolume="1" orderState="0" typeID="27359" range="1" accountKey="1000" duration="1"
|
30
30
|
escrow="7771.73" price="250.00" bid="1" issued="2007-12-02 13:58:48" />
|
31
31
|
<row orderID="5630656" charID="150208955" stationID="60010783" volEntered="1334" volRemaining="1334"
|
32
|
-
minVolume="1" orderState="
|
32
|
+
minVolume="1" orderState="1" typeID="27359" range="2" accountKey="1000" duration="1"
|
33
|
+
escrow="79141.11" price="250.00" bid="1" issued="2007-12-02 13:58:56" />
|
34
|
+
<row orderID="56330656" charID="150208955" stationID="60010783" volEntered="1334" volRemaining="1334"
|
35
|
+
minVolume="1" orderState="4" typeID="34" range="2" accountKey="1000" duration="1"
|
36
|
+
escrow="79141.11" price="250.00" bid="1" issued="2007-12-02 13:58:56" />
|
37
|
+
<row orderID="56230656" charID="150208955" stationID="60010783" volEntered="1334" volRemaining="1334"
|
38
|
+
minVolume="1" orderState="5" typeID="35" range="2" accountKey="1000" duration="1"
|
33
39
|
escrow="79141.11" price="250.00" bid="1" issued="2007-12-02 13:58:56" />
|
34
40
|
</rowset>
|
35
41
|
</result>
|
metadata
CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.4
|
|
3
3
|
specification_version: 1
|
4
4
|
name: reve
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.0.
|
7
|
-
date: 2008-02-
|
6
|
+
version: 0.0.80
|
7
|
+
date: 2008-02-17 00:00:00 +00:00
|
8
8
|
summary: Reve is a Ruby library to interface with the Eve Online API
|
9
9
|
require_paths:
|
10
10
|
- lib
|
@@ -48,6 +48,11 @@ test_files:
|
|
48
48
|
- test/xml/charactername.xml
|
49
49
|
- test/xml/characters.xml
|
50
50
|
- test/xml/conqurable_stations.xml
|
51
|
+
- test/xml/corporate_assets_list.xml
|
52
|
+
- test/xml/corporate_market_orders.xml
|
53
|
+
- test/xml/corporate_wallet_balance.xml
|
54
|
+
- test/xml/corporate_wallet_journal.xml
|
55
|
+
- test/xml/corporate_wallet_transactions.xml
|
51
56
|
- test/xml/corporation_sheet.xml
|
52
57
|
- test/xml/errors/error_100.xml
|
53
58
|
- test/xml/errors/error_101.xml
|
@@ -115,6 +120,7 @@ test_files:
|
|
115
120
|
- test/xml/errors/error_902.xml
|
116
121
|
- test/xml/errors/error_903.xml
|
117
122
|
- test/xml/errors/error_999.xml
|
123
|
+
- test/xml/errors.xml
|
118
124
|
- test/xml/industryjobs.xml
|
119
125
|
- test/xml/kills.xml
|
120
126
|
- test/xml/mapjumps.xml
|