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.
@@ -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
@@ -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 TypeError
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::PersonalMarketOrder, opts[:url] || @@corporate_market_orders_url, false, args)
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
- ret = []
698
- xml.search("//rowset/row").each do |elem|
699
- ret << klass.new(elem)
700
- end
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__),'/xml/')
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 9, orders.size
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 5, sells
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>
@@ -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="34" flag="5" qtyDropped="1" qtyDestroyed="0" />
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>
@@ -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="0" typeID="27359" range="2" accountKey="1000" duration="1"
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.77
7
- date: 2008-02-03 00:00:00 +00:00
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