game_machine 0.0.10 → 0.0.11

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.
Files changed (77) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +13 -9
  3. data/config/config.example.yml +8 -1
  4. data/config/game_messages.proto +1 -0
  5. data/config/messages.proto +4 -0
  6. data/games/example/lib/npc.rb +8 -7
  7. data/games/models.rb +3 -0
  8. data/games/models/clan_member.rb +8 -0
  9. data/games/models/clan_profile.rb +9 -0
  10. data/games/models/player.rb +7 -0
  11. data/games/plugins.rb +1 -0
  12. data/games/plugins/team_handler.rb +49 -0
  13. data/games/preload.rb +5 -0
  14. data/java/build.gradle +3 -1
  15. data/java/gradle.properties +1 -1
  16. data/lib/game_machine/actor/base.rb +5 -1
  17. data/lib/game_machine/application.rb +13 -3
  18. data/lib/game_machine/commands/datastore_commands.rb +3 -7
  19. data/lib/game_machine/commands/player_commands.rb +3 -0
  20. data/lib/game_machine/data_store.rb +22 -1
  21. data/lib/game_machine/data_stores/couchbase.rb +18 -1
  22. data/lib/game_machine/endpoints/udp_incoming.rb +0 -1
  23. data/lib/game_machine/game_systems.rb +2 -0
  24. data/lib/game_machine/game_systems/chat.rb +33 -13
  25. data/lib/game_machine/game_systems/chat_manager.rb +24 -3
  26. data/lib/game_machine/game_systems/json_model_persistence.rb +23 -0
  27. data/lib/game_machine/game_systems/region_manager.rb +1 -1
  28. data/lib/game_machine/game_systems/team_manager.rb +421 -0
  29. data/lib/game_machine/handlers/request.rb +4 -0
  30. data/lib/game_machine/model.rb +59 -13
  31. data/lib/game_machine/models.rb +17 -0
  32. data/lib/game_machine/models/create_team.rb +9 -0
  33. data/lib/game_machine/models/destroy_team.rb +8 -0
  34. data/lib/game_machine/models/echo_test.rb +6 -0
  35. data/lib/game_machine/models/end_match.rb +7 -0
  36. data/lib/game_machine/models/find_match.rb +7 -0
  37. data/lib/game_machine/models/join_team.rb +7 -0
  38. data/lib/game_machine/models/leave_team.rb +7 -0
  39. data/lib/game_machine/models/match.rb +9 -0
  40. data/lib/game_machine/models/player_team.rb +9 -0
  41. data/lib/game_machine/models/start_match.rb +8 -0
  42. data/lib/game_machine/models/team.rb +11 -0
  43. data/lib/game_machine/models/team_accept_invite.rb +9 -0
  44. data/lib/game_machine/models/team_invite.rb +8 -0
  45. data/lib/game_machine/models/team_joined.rb +7 -0
  46. data/lib/game_machine/models/team_left.rb +7 -0
  47. data/lib/game_machine/models/teams.rb +7 -0
  48. data/lib/game_machine/models/teams_request.rb +6 -0
  49. data/lib/game_machine/object_db.rb +17 -11
  50. data/lib/game_machine/version.rb +1 -1
  51. data/lib/game_machine/write_behind_cache.rb +1 -1
  52. data/spec/actor/actor_spec.rb +5 -5
  53. data/spec/actor/ref_spec.rb +10 -10
  54. data/spec/client_manager_spec.rb +9 -9
  55. data/spec/commands/chat_commands_spec.rb +1 -1
  56. data/spec/commands/datastore_commands_spec.rb +10 -14
  57. data/spec/commands/navigation_commands_spec.rb +3 -3
  58. data/spec/commands/player_commands_spec.rb +1 -1
  59. data/spec/game_systems/agents/controller_spec.rb +6 -6
  60. data/spec/game_systems/chat_manager_spec.rb +1 -1
  61. data/spec/game_systems/chat_spec.rb +15 -17
  62. data/spec/game_systems/region_manager_spec.rb +31 -21
  63. data/spec/game_systems/team_manager_spec.rb +291 -0
  64. data/spec/grid_spec.rb +11 -1
  65. data/spec/handlers/authentication_spec.rb +1 -10
  66. data/spec/handlers/game_spec.rb +2 -2
  67. data/spec/handlers/request_spec.rb +10 -21
  68. data/spec/hashring_spec.rb +11 -11
  69. data/spec/java_grid_spec.rb +1 -1
  70. data/spec/misc_spec.rb +2 -2
  71. data/spec/model_spec.rb +26 -14
  72. data/spec/write_behind_cache_spec.rb +15 -15
  73. metadata +29 -8
  74. data/lib/game_machine/bot/chat.rb +0 -66
  75. data/lib/game_machine/bot/client.rb +0 -54
  76. data/spec/data_stores/mapdb_spec.rb +0 -46
  77. data/spec/data_stores/redis_spec.rb +0 -44
@@ -2,6 +2,10 @@ require 'spec_helper'
2
2
  module GameMachine
3
3
  describe Grid do
4
4
 
5
+ let(:test_grid_config) do
6
+ {:grid_size => 10, :cell_size => 10, :update_frequency => 1}
7
+ end
8
+
5
9
  subject {Grid}
6
10
 
7
11
  before(:each) do
@@ -18,11 +22,17 @@ module GameMachine
18
22
  describe "#load_from_config" do
19
23
  it "should create grids from config" do
20
24
  Grid.load_from_config
21
- expect(Grid.config.has_key?('default')).to be_true
25
+ expect(Grid.config.has_key?('default')).to be_truthy
22
26
  end
23
27
  end
24
28
 
25
29
  describe "#find_or_create" do
30
+
31
+ before(:each) do
32
+ expect(subject.config).to receive(:fetch).with('test').
33
+ and_return(test_grid_config)
34
+ end
35
+
26
36
  it "creates a grid if none exists for the given name" do
27
37
  grid = subject.find_or_create('test')
28
38
  expect(grid).to be_instance_of(JavaLib::Grid)
@@ -17,18 +17,9 @@ module GameMachine
17
17
 
18
18
  context "player is authenticated" do
19
19
  it "authenticates player with valid authtoken" do
20
- expect(subject.authenticate!(player)).to be_true
20
+ expect(subject.authenticate!(player)).to be_truthy
21
21
  end
22
22
  end
23
-
24
- context "player is not authenticated" do
25
- it "does not authenticate player with invalid authtoken" do
26
- player.set_authtoken('badtoken')
27
- expect(subject.authenticate!(player)).to be_false
28
- end
29
- end
30
-
31
-
32
23
  end
33
24
 
34
25
  end
@@ -25,8 +25,8 @@ module GameMachine
25
25
 
26
26
  it "dispatches entities to correct system" do
27
27
  client_message = MessageLib::ClientMessage.new.add_entity(leave_chat)
28
- GameSystems::ChatManager.stub(:find).and_return(actor_ref)
29
- actor_ref.should_receive(:tell)
28
+ allow(GameSystems::ChatManager).to receive(:find).and_return(actor_ref)
29
+ expect(actor_ref).to receive(:tell)
30
30
  Game.should_receive_message(client_message,'dispatch_test') do
31
31
  Game.find('dispatch_test').tell(client_message)
32
32
  end
@@ -25,36 +25,25 @@ module GameMachine
25
25
 
26
26
  let(:actor_ref) {double('Actor::Ref', :tell => true)}
27
27
 
28
- describe "#on_receive" do
28
+ subject do
29
+ ref = Actor::Builder.new(Request).with_name('request_test').test_ref
30
+ ref.underlying_actor
31
+ end
29
32
 
30
- before(:each) do
31
- Actor::Builder.new(Request).with_name('test_request_handler').start
32
- end
33
+ describe "#on_receive" do
33
34
 
34
35
  it "sets player on entities" do
36
+ allow(Authentication).to receive(:authenticated?).and_return(true)
35
37
  message = client_message
36
38
  entity = message.get_entity_list.first
37
- entity.should_receive(:set_player).with(message.player)
38
- Request.should_receive_message(message,'test_request_handler') do
39
- Request.find('test_request_handler').tell(message)
40
- end
39
+ expect(entity).to receive(:set_player).with(message.player)
40
+ subject.on_receive(message)
41
41
  end
42
42
 
43
43
 
44
44
  it "calls unhandled if not a client message" do
45
- Request.any_instance.should_receive(:unhandled).with('test')
46
- Request.should_receive_message('test','test_request_handler') do
47
- Request.find('test_request_handler').tell('test')
48
- end
49
- end
50
-
51
- it "calls unhandled if player is not set" do
52
- message = client_message
53
- message.set_player(nil)
54
- Request.any_instance.should_receive(:unhandled).with(message)
55
- Request.should_receive_message(message,'test_request_handler') do
56
- Request.find('test_request_handler').tell(message)
57
- end
45
+ expect(subject).to receive(:unhandled).with('test')
46
+ subject.on_receive('test')
58
47
  end
59
48
 
60
49
  end
@@ -12,47 +12,47 @@ module GameMachine
12
12
 
13
13
  describe "#nodes" do
14
14
  it "nodes should equal buckets" do
15
- subject.nodes.sort.should == buckets.sort
15
+ expect(subject.nodes.sort).to eq(buckets.sort)
16
16
  end
17
17
  end
18
18
 
19
19
  describe "#points" do
20
20
  it "should be number of points equal to REPLICAS * buckets.size " do
21
- subject.points.size.should == subject.buckets.size * Hashring::REPLICAS
21
+ expect(subject.points.size).to eq(subject.buckets.size * Hashring::REPLICAS)
22
22
  end
23
23
  end
24
24
 
25
25
  describe "#bucket_for" do
26
26
  it "returns bucket for value" do
27
- buckets.include?(subject.bucket_for('test')).should be_true
27
+ expect(buckets.include?(subject.bucket_for('test'))).to be_truthy
28
28
  end
29
29
  end
30
30
 
31
31
  describe "#remove_bucket" do
32
32
  it "removes the bucket from buckets array" do
33
33
  subject.remove_bucket('server1')
34
- subject.buckets.size.should == 1
35
- subject.buckets.first.should == 'server2'
34
+ expect(subject.buckets.size).to eq(1)
35
+ expect(subject.buckets.first).to eq('server2')
36
36
  end
37
37
 
38
38
  it "removes node from ring" do
39
39
  subject.remove_bucket('server1')
40
- subject.nodes.size.should == 1
41
- subject.buckets.first.should == 'server2'
40
+ expect(subject.nodes.size).to eq(1)
41
+ expect(subject.buckets.first).to eq('server2')
42
42
  end
43
43
  end
44
44
 
45
45
  describe "#add_bucket" do
46
46
  it "adds new bucket to buckets array" do
47
47
  subject.add_bucket('blah')
48
- subject.buckets.size.should == 3
49
- subject.buckets.sort.first.should == 'blah'
48
+ expect(subject.buckets.size).to eq(3)
49
+ expect(subject.buckets.sort.first).to eq('blah')
50
50
  end
51
51
 
52
52
  it "adds node to ring" do
53
53
  subject.add_bucket('blah')
54
- subject.nodes.size.should == 3
55
- subject.nodes.sort.first.should == 'blah'
54
+ expect(subject.nodes.size).to eq(3)
55
+ expect(subject.nodes.sort.first).to eq('blah')
56
56
  end
57
57
  end
58
58
  end
@@ -9,7 +9,7 @@ module GameMachine
9
9
 
10
10
  describe "#set" do
11
11
  it "returns true when value is set" do
12
- expect(subject.set('blah',0,0,0,'player')).to be_true
12
+ expect(subject.set('blah',0,0,0,'player')).to be_truthy
13
13
  end
14
14
 
15
15
  it "creates a grid point in correct cell" do
@@ -1,6 +1,7 @@
1
1
  require 'spec_helper'
2
2
  require 'jruby/core_ext'
3
3
  module GameMachine
4
+
4
5
  describe "misc" do
5
6
  let(:entity) do
6
7
  entity = MessageLib::Entity.new
@@ -12,10 +13,9 @@ module GameMachine
12
13
  entity
13
14
  end
14
15
 
15
- it "singleton manager" do
16
+ xit "singleton manager" do
16
17
  ref = Akka.instance.actor_system.actor_selection('/user/region_manager_proxy')
17
18
  ref.tell('HELLO',nil)
18
- sleep 1
19
19
  end
20
20
 
21
21
  xit "vector3" do
@@ -5,21 +5,25 @@ require 'benchmark'
5
5
  module GameMachine
6
6
  describe "model" do
7
7
 
8
- class ScopedModel < GameMachine::Model
8
+
9
+ class TestModel < GameMachine::Model
9
10
  attribute :health, Integer
10
11
  attribute :name, String
11
12
  attribute :defense_skill, Integer
12
13
  attribute :attack_skill, Integer
13
- set_id_scope :tm
14
14
  end
15
15
 
16
- class TestModel < GameMachine::Model
16
+ class ScopedModel < GameMachine::Model
17
17
  attribute :health, Integer
18
18
  attribute :name, String
19
19
  attribute :defense_skill, Integer
20
20
  attribute :attack_skill, Integer
21
+ attribute :test_models, Array
22
+ attribute :test_model, TestModel
23
+ set_id_scope :tm
21
24
  end
22
25
 
26
+
23
27
  let(:scoped_model) do
24
28
  model = ScopedModel.new(:health => 100, :id => 'myid')
25
29
  end
@@ -33,6 +37,19 @@ module GameMachine
33
37
  end
34
38
 
35
39
 
40
+
41
+ # Unfinished but leaving here for now
42
+ describe "nesting" do
43
+ it "should parse correctly" do
44
+ scoped_model.test_models = []
45
+ scoped_model.test_models << test_model
46
+ scoped_model.test_models << test_model
47
+ scoped_model.test_model = test_model
48
+ hash = JSON.parse(scoped_model.to_json)
49
+ ScopedModel.from_hash(hash)
50
+ end
51
+ end
52
+
36
53
  context :scoped_model do
37
54
 
38
55
  describe "#unscoped_id" do
@@ -60,19 +77,14 @@ module GameMachine
60
77
  describe "#save" do
61
78
 
62
79
  it "should return true on success" do
63
- expect(test_model.save).to be_true
64
- end
65
-
66
- it "should return false if id is nil" do
67
- test_model.id = nil
68
- expect(test_model.save).to be_false
80
+ expect(test_model.save).to be_truthy
69
81
  end
70
82
  end
71
83
 
72
84
  describe "#save!" do
73
- it "should raise an exception if id is nil" do
74
- test_model.id = nil
75
- expect {test_model.save!}.to raise_error
85
+ it "should call datastore.put!" do
86
+ expect_any_instance_of(GameMachine::Commands::DatastoreCommands).to receive(:put!)
87
+ test_model.save!
76
88
  end
77
89
 
78
90
  it "should not raise an exception if id is not nil" do
@@ -83,13 +95,13 @@ module GameMachine
83
95
  describe "#to_json" do
84
96
  it "should set klass" do
85
97
  model_hash = JSON.parse(test_model.to_json)
86
- expect(model_hash.has_key?('klass')).to be_true
98
+ expect(model_hash.has_key?('klass')).to be_truthy
87
99
  end
88
100
  end
89
101
 
90
102
  describe "#to_entity" do
91
103
  it "should return an entity with json entity" do
92
- expect(test_model.to_entity.has_json_entity).to be_true
104
+ expect(test_model.to_entity.has_json_entity).to be_truthy
93
105
  end
94
106
  end
95
107
 
@@ -15,8 +15,8 @@ module GameMachine
15
15
  ref = Actor::Builder.new(WriteBehindCache).test_ref
16
16
  #props = JavaLib::Props.new(WriteBehindCache);
17
17
  #ref = JavaLib::TestActorRef.create(Akka.instance.actor_system, props, WriteBehindCache.name);
18
- ref.underlying_actor.stub(:schedule_queue_run)
19
- ref.underlying_actor.stub(:schedule_queue_stats)
18
+ allow(ref.underlying_actor).to receive(:schedule_queue_run)
19
+ allow(ref.underlying_actor).to receive(:schedule_queue_stats)
20
20
  ref.underlying_actor.post_init
21
21
  ref.underlying_actor
22
22
  end
@@ -24,19 +24,19 @@ module GameMachine
24
24
  describe "#on_receive" do
25
25
 
26
26
  before(:each) do
27
- DataStore.stub(:instance).and_return(data_store)
27
+ allow(DataStore).to receive(:instance).and_return(data_store)
28
28
  subject.write_interval = 10
29
29
  subject.max_writes_per_second = 100
30
30
  end
31
31
 
32
32
  context "receives a string message" do
33
33
  it "check_queue message should call check_queue" do
34
- subject.should_receive(:check_queue)
34
+ expect(subject).to receive(:check_queue)
35
35
  subject.on_receive('check_queue')
36
36
  end
37
37
 
38
38
  it "takes one message id from queue and writes it" do
39
- data_store.should_receive(:set).exactly(2).times
39
+ expect(data_store).to receive(:set).exactly(2).times
40
40
  3.times do |i|
41
41
  subject.on_receive(entity.clone.set_id(i.to_s))
42
42
  end
@@ -45,7 +45,7 @@ module GameMachine
45
45
  end
46
46
 
47
47
  it "queue_stats message should call queue_stats" do
48
- subject.should_receive(:queue_stats)
48
+ expect(subject).to receive(:queue_stats)
49
49
  subject.on_receive('queue_stats')
50
50
  end
51
51
  end
@@ -54,28 +54,28 @@ module GameMachine
54
54
 
55
55
  it "new message should be written to cache" do
56
56
  subject.on_receive(entity)
57
- subject.cache.fetch(entity.id).should == entity
57
+ expect(subject.cache.fetch(entity.id)).to eq(entity)
58
58
  end
59
59
 
60
60
  it "message not eligible for write should be enqueued" do
61
61
  subject.on_receive(entity)
62
62
  subject.on_receive(entity)
63
- subject.queue.size.should == 1
63
+ expect(subject.queue.size).to eq(1)
64
64
  end
65
65
 
66
66
  it "saves to store with entity id and entity" do
67
- data_store.should_receive(:set).with(entity.id,kind_of(java.lang.Object))
67
+ expect(data_store).to receive(:set).with(entity.id,kind_of(java.lang.Object))
68
68
  subject.on_receive(entity)
69
69
  end
70
70
 
71
71
  it "does not save if write on same id happens before write_interval has passed" do
72
- data_store.should_receive(:set).with(entity.id,kind_of(java.lang.Object)).once
72
+ expect(data_store).to receive(:set).with(entity.id,kind_of(java.lang.Object)).once
73
73
  subject.on_receive(entity)
74
74
  subject.on_receive(entity)
75
75
  end
76
76
 
77
77
  it "sequential writes of different id's should get saved" do
78
- data_store.should_receive(:set).exactly(4).times
78
+ expect(data_store).to receive(:set).exactly(4).times
79
79
  4.times do |i|
80
80
  subject.on_receive(entity.clone.set_id(i.to_s))
81
81
  sleep 0.150
@@ -85,8 +85,8 @@ module GameMachine
85
85
  it "sequential writes that exceed max writes per second should be enqueued" do
86
86
  subject.write_interval = -1
87
87
  subject.max_writes_per_second = 1
88
- data_store.should_receive(:set).exactly(1).times
89
- subject.should_receive(:enqueue).exactly(2).times
88
+ expect(data_store).to receive(:set).exactly(1).times
89
+ expect(subject).to receive(:enqueue).exactly(2).times
90
90
  3.times do |i|
91
91
  subject.on_receive(entity.clone.set_id(i.to_s))
92
92
  end
@@ -95,8 +95,8 @@ module GameMachine
95
95
  it "sequential writes of existing messages that exceed write_interval should be enqueued" do
96
96
  subject.write_interval = 100000
97
97
  subject.max_writes_per_second = -1
98
- data_store.should_receive(:set).exactly(1).times
99
- subject.should_receive(:enqueue).exactly(3).times
98
+ expect(data_store).to receive(:set).exactly(1).times
99
+ expect(subject).to receive(:enqueue).exactly(3).times
100
100
  4.times do |i|
101
101
  subject.on_receive(entity.set_id('11'))
102
102
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: game_machine
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.10
4
+ version: 0.0.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Ochs
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-28 00:00:00.000000000 Z
11
+ date: 2014-07-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: i18n
@@ -260,6 +260,12 @@ files:
260
260
  - games/example/lib/player_register.rb
261
261
  - games/example/lib/tracking_handler.rb
262
262
  - games/example/lib/zone_manager.rb
263
+ - games/models.rb
264
+ - games/models/clan_member.rb
265
+ - games/models/clan_profile.rb
266
+ - games/models/player.rb
267
+ - games/plugins.rb
268
+ - games/plugins/team_handler.rb
263
269
  - games/preload.rb
264
270
  - integration_tests/basic_spec.rb
265
271
  - integration_tests/bot_spec.rb
@@ -314,8 +320,6 @@ files:
314
320
  - lib/game_machine/application.rb
315
321
  - lib/game_machine/auth_handlers/base.rb
316
322
  - lib/game_machine/auth_handlers/public.rb
317
- - lib/game_machine/bot/chat.rb
318
- - lib/game_machine/bot/client.rb
319
323
  - lib/game_machine/client_manager.rb
320
324
  - lib/game_machine/clients.rb
321
325
  - lib/game_machine/clients/client.rb
@@ -359,6 +363,7 @@ files:
359
363
  - lib/game_machine/game_systems/devnull.rb
360
364
  - lib/game_machine/game_systems/entity_loader.rb
361
365
  - lib/game_machine/game_systems/entity_tracking.rb
366
+ - lib/game_machine/game_systems/json_model_persistence.rb
362
367
  - lib/game_machine/game_systems/local_echo.rb
363
368
  - lib/game_machine/game_systems/objectdb_proxy.rb
364
369
  - lib/game_machine/game_systems/private_chat.rb
@@ -367,6 +372,7 @@ files:
367
372
  - lib/game_machine/game_systems/region_settings.rb
368
373
  - lib/game_machine/game_systems/remote_echo.rb
369
374
  - lib/game_machine/game_systems/stress_test.rb
375
+ - lib/game_machine/game_systems/team_manager.rb
370
376
  - lib/game_machine/grid.rb
371
377
  - lib/game_machine/grid_replicator.rb
372
378
  - lib/game_machine/handlers/authentication.rb
@@ -381,8 +387,25 @@ files:
381
387
  - lib/game_machine/message_queue.rb
382
388
  - lib/game_machine/model.rb
383
389
  - lib/game_machine/models.rb
390
+ - lib/game_machine/models/create_team.rb
391
+ - lib/game_machine/models/destroy_team.rb
392
+ - lib/game_machine/models/echo_test.rb
393
+ - lib/game_machine/models/end_match.rb
394
+ - lib/game_machine/models/find_match.rb
395
+ - lib/game_machine/models/join_team.rb
396
+ - lib/game_machine/models/leave_team.rb
397
+ - lib/game_machine/models/match.rb
384
398
  - lib/game_machine/models/player_status_update.rb
399
+ - lib/game_machine/models/player_team.rb
385
400
  - lib/game_machine/models/region.rb
401
+ - lib/game_machine/models/start_match.rb
402
+ - lib/game_machine/models/team.rb
403
+ - lib/game_machine/models/team_accept_invite.rb
404
+ - lib/game_machine/models/team_invite.rb
405
+ - lib/game_machine/models/team_joined.rb
406
+ - lib/game_machine/models/team_left.rb
407
+ - lib/game_machine/models/teams.rb
408
+ - lib/game_machine/models/teams_request.rb
386
409
  - lib/game_machine/mono_server.rb
387
410
  - lib/game_machine/navigation.rb
388
411
  - lib/game_machine/navigation/detour.rb
@@ -453,8 +476,6 @@ files:
453
476
  - spec/commands/navigation_commands_spec.rb
454
477
  - spec/commands/player_commands_spec.rb
455
478
  - spec/commands_spec.rb
456
- - spec/data_stores/mapdb_spec.rb
457
- - spec/data_stores/redis_spec.rb
458
479
  - spec/game_systems/agents/controller_spec.rb
459
480
  - spec/game_systems/agents/test_agent.rb
460
481
  - spec/game_systems/agents/test_agent_config.rb
@@ -462,6 +483,7 @@ files:
462
483
  - spec/game_systems/chat_spec.rb
463
484
  - spec/game_systems/entity_tracking_spec.rb
464
485
  - spec/game_systems/region_manager_spec.rb
486
+ - spec/game_systems/team_manager_spec.rb
465
487
  - spec/grid_spec.rb
466
488
  - spec/handlers/authentication_spec.rb
467
489
  - spec/handlers/game_spec.rb
@@ -546,8 +568,6 @@ test_files:
546
568
  - spec/commands/navigation_commands_spec.rb
547
569
  - spec/commands/player_commands_spec.rb
548
570
  - spec/commands_spec.rb
549
- - spec/data_stores/mapdb_spec.rb
550
- - spec/data_stores/redis_spec.rb
551
571
  - spec/game_systems/agents/controller_spec.rb
552
572
  - spec/game_systems/agents/test_agent.rb
553
573
  - spec/game_systems/agents/test_agent_config.rb
@@ -555,6 +575,7 @@ test_files:
555
575
  - spec/game_systems/chat_spec.rb
556
576
  - spec/game_systems/entity_tracking_spec.rb
557
577
  - spec/game_systems/region_manager_spec.rb
578
+ - spec/game_systems/team_manager_spec.rb
558
579
  - spec/grid_spec.rb
559
580
  - spec/handlers/authentication_spec.rb
560
581
  - spec/handlers/game_spec.rb