protobuf 3.4.4 → 3.5.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8039705f02dc03d0ecc6415c8a6ef2d7114b96c5
4
- data.tar.gz: 1978cec9ab539484b2d299c5a109e78af267c7fe
3
+ metadata.gz: 556fc7a33947258f727c68a829cda7f010c17a4a
4
+ data.tar.gz: 7c2844002d64904f5ba995c16704704966a53296
5
5
  SHA512:
6
- metadata.gz: 6d0c733b3656fe080337232cdfbf68b996541add9206b1f621bbb6cd6df8d116296ceded1d797c1e3743314dd8b7f27761c8882d7e66c64427600990e26ba5ef
7
- data.tar.gz: a44e9cff6f284880bcfaf6aaa29cc5dc12d16a35e5808e45a3a6510fb34db23ca8e76d0187fa3d1acbc2ea8593115b3b3d1dbdc7d755c04384607ac26ef28b40
6
+ metadata.gz: a68b0800fe406544487ec2f2ae1cccc81c21e5f9a59c3f970ef84a0a5023f057a523ad5c6f598b9dfe7ad57acf47a22aa12a4a73c218ec0443149d0ff5a7fc7f
7
+ data.tar.gz: 0832c9afbfc335acf6fd8517a0713efa4d347e48f6eaa00ea0575134b17e19e3d1648fe1936aabfc9b5422ceed63394b449426018d22a6616849148e5f0ebf44
data/.travis.yml CHANGED
@@ -1,7 +1,7 @@
1
1
  before_install:
2
2
  - sudo apt-get update -qq
3
3
  - sudo apt-get install -y libzmq3-dev
4
- - sudo ./install-protobuf.sh
4
+ - sudo -E ./install-protobuf.sh
5
5
  language: ruby
6
6
  rvm:
7
7
  - 1.9.3
@@ -9,9 +9,13 @@ rvm:
9
9
  - 2.1
10
10
  - jruby
11
11
  - rbx-2
12
+ env:
13
+ - PROTOBUF_VERSION=2.6.1
14
+ - PROTOBUF_VERSION=3.0.0-alpha-2
12
15
  matrix:
13
16
  allow_failures:
14
17
  - rvm: rbx-2
18
+ - env: PROTOBUF_VERSION=3.0.0-alpha-2
15
19
  notifications:
16
20
  webhooks:
17
21
  urls:
data/README.md CHANGED
@@ -3,6 +3,7 @@
3
3
  [![Gem Version](https://badge.fury.io/rb/protobuf.svg)](http://badge.fury.io/rb/protobuf)
4
4
  [![Build Status](https://secure.travis-ci.org/localshred/protobuf.svg?branch=master)](https://travis-ci.org/localshred/protobuf)
5
5
  [![Gitter chat](https://badges.gitter.im/localshred/protobuf.svg)](https://gitter.im/localshred/protobuf)
6
+ [![protobuf API Documentation](https://www.omniref.com/ruby/gems/protobuf.png)](https://www.omniref.com/ruby/gems/protobuf)
6
7
 
7
8
  Protobuf is an implementation of [Google's protocol buffers][google-pb] in ruby, version 2.5.0 is currently supported.
8
9
 
data/install-protobuf.sh CHANGED
@@ -1,8 +1,28 @@
1
+ #!/usr/bin/env sh
2
+
1
3
  set -ex
2
4
 
3
- basename=protobuf-2.6.0
4
- tarball=$basename.tar.bz2
5
+ gdie() {
6
+ echo "$@" >&2
7
+ exit 1
8
+ }
9
+
10
+ test -n "$PROTOBUF_VERSION" || die "PROTOBUF_VERSION env var is undefined"
11
+
12
+ case "$PROTOBUF_VERSION" in
13
+ 2*)
14
+ basename=protobuf-$PROTOBUF_VERSION
15
+ ;;
16
+ 3*)
17
+ basename=protobuf-cpp-$PROTOBUF_VERSION
18
+ ;;
19
+ *)
20
+ die "unknown protobuf version: $PROTOBUF_VERSION"
21
+ ;;
22
+ esac
23
+
24
+ curl -sL https://github.com/google/protobuf/releases/download/v$PROTOBUF_VERSION/$basename.tar.gz | tar zx
25
+
26
+ cd protobuf-$PROTOBUF_VERSION
5
27
 
6
- wget https://protobuf.googlecode.com/svn/rc/$tarball
7
- tar -xvf $tarball
8
- cd $basename && ./configure --prefix=/usr && make && make install
28
+ ./configure --prefix=/usr && make -j2 && make install
@@ -17,7 +17,17 @@ module Protobuf
17
17
  # #
18
18
 
19
19
  def acceptable?(val)
20
- [true, false].include?(val)
20
+ [true, false].include?(val) || %w(true false).include?(val)
21
+ end
22
+
23
+ def coerce!(val)
24
+ if val == 'true'
25
+ true
26
+ elsif val == 'false'
27
+ false
28
+ else
29
+ val
30
+ end
21
31
  end
22
32
 
23
33
  def decode(value)
@@ -66,6 +66,8 @@ module Protobuf
66
66
 
67
67
  if field.is_a?(::Protobuf::Field::EnumField)
68
68
  field.type_class.fetch(value)
69
+ elsif field.is_a?(::Protobuf::Field::MessageField) && value.is_a?(field.type_class)
70
+ value
69
71
  elsif field.is_a?(::Protobuf::Field::MessageField) && value.respond_to?(:to_hash)
70
72
  field.type_class.new(value.to_hash)
71
73
  else
@@ -9,7 +9,7 @@ module Protobuf
9
9
  #
10
10
 
11
11
  def acceptable?(val)
12
- unless val.instance_of?(type_class) || val.respond_to?(:to_hash)
12
+ unless val.is_a?(type_class) || val.respond_to?(:to_hash)
13
13
  fail TypeError, "Expected value of type '#{type_class}' for field #{name}, but got '#{val.class}'"
14
14
  end
15
15
 
@@ -37,11 +37,17 @@ module Protobuf
37
37
  #
38
38
 
39
39
  def acceptable?(val)
40
- (val > self.class.min || val < self.class.max)
40
+ int_val = coerce!(val)
41
+ int_val >= self.class.min && int_val <= self.class.max
41
42
  rescue
42
43
  false
43
44
  end
44
45
 
46
+ def coerce!(val)
47
+ return val.to_i if val.is_a?(Numeric)
48
+ Integer(val, 10)
49
+ end
50
+
45
51
  def decode(value)
46
52
  value
47
53
  end
@@ -28,10 +28,11 @@ module Protobuf
28
28
 
29
29
  def initialize(fields = {})
30
30
  @values = {}
31
-
32
31
  fields.to_hash.each_pair do |name, value|
33
32
  self[name] = value
34
33
  end
34
+
35
+ yield self if block_given?
35
36
  end
36
37
 
37
38
  ##
@@ -41,7 +41,7 @@ module Protobuf
41
41
  logger.info do
42
42
  <<-THREAD_TRACE
43
43
  #{thread.inspect}:
44
- #{thread.backtrace.join($INPUT_RECORD_SEPARATOR)}"
44
+ #{thread.backtrace.try(:join, $INPUT_RECORD_SEPARATOR)}"
45
45
  THREAD_TRACE
46
46
  end
47
47
  end
@@ -82,6 +82,7 @@ module Protobuf
82
82
 
83
83
  def all_listings_for(service)
84
84
  if running? && @listings_by_service.key?(service.to_s)
85
+ start_listener_thread if listener_dead?
85
86
  @listings_by_service[service.to_s].entries.shuffle
86
87
  else
87
88
  []
@@ -89,15 +90,19 @@ module Protobuf
89
90
  end
90
91
 
91
92
  def each_listing(&block)
93
+ start_listener_thread if listener_dead?
92
94
  @listings_by_uuid.each_value(&block)
93
95
  end
94
96
 
95
97
  def lookup(service)
96
- if running?
97
- if @listings_by_service.key?(service.to_s)
98
- @listings_by_service[service.to_s].entries.sample
99
- end
100
- end
98
+ return unless running?
99
+ start_listener_thread if listener_dead?
100
+ return unless @listings_by_service.key?(service.to_s)
101
+ @listings_by_service[service.to_s].entries.sample
102
+ end
103
+
104
+ def listener_dead?
105
+ @thread.nil? || !@thread.alive?
101
106
  end
102
107
 
103
108
  def restart
@@ -106,22 +111,29 @@ module Protobuf
106
111
  end
107
112
 
108
113
  def running?
109
- !!@thread.try(:alive?)
114
+ !!@running
110
115
  end
111
116
 
112
117
  def start
113
118
  unless running?
114
119
  init_socket
115
120
  logger.info { sign_message("listening to udp://#{self.class.address}:#{self.class.port}") }
116
- @thread = Thread.new { send(:run) }
121
+ @running = true
117
122
  end
118
123
 
124
+ start_listener_thread if listener_dead?
119
125
  self
120
126
  end
121
127
 
128
+ def start_listener_thread
129
+ return if @thread.try(:alive?)
130
+ @thread = Thread.new { send(:run) }
131
+ end
132
+
122
133
  def stop
123
134
  logger.info { sign_message("Stopping directory") }
124
135
 
136
+ @running = false
125
137
  @thread.try(:kill).try(:join)
126
138
  @socket.try(:close)
127
139
 
@@ -94,10 +94,10 @@ module Protobuf
94
94
  # if the filter should not be invoked, true if invocation should occur.
95
95
  #
96
96
  def invoke_filter?(rpc_method, filter)
97
- invoke_via_only?(rpc_method, filter) \
98
- && invoke_via_except?(rpc_method, filter) \
99
- && invoke_via_if?(rpc_method, filter) \
100
- && invoke_via_unless?(rpc_method, filter)
97
+ invoke_via_only?(rpc_method, filter) &&
98
+ invoke_via_except?(rpc_method, filter) &&
99
+ invoke_via_if?(rpc_method, filter) &&
100
+ invoke_via_unless?(rpc_method, filter)
101
101
  end
102
102
 
103
103
  # If the target rpc endpoint method is listed under an :except option,
@@ -1,3 +1,3 @@
1
1
  module Protobuf
2
- VERSION = '3.4.4'
2
+ VERSION = '3.5.0'
3
3
  end
@@ -0,0 +1,51 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe Protobuf::Field::Int32Field do
4
+
5
+ class SomeBoolMessage < ::Protobuf::Message
6
+ optional :bool, :some_bool, 1
7
+ end
8
+
9
+ let(:instance) { SomeBoolMessage.new }
10
+
11
+ describe '#define_setter' do
12
+ subject { instance.some_bool = value; instance.some_bool }
13
+
14
+ [true, false].each do |val|
15
+ context "when set with #{val}" do
16
+ let(:value) { val }
17
+
18
+ it 'is readable as a bool' do
19
+ expect(subject).to eq(val)
20
+ end
21
+ end
22
+ end
23
+
24
+ [['true', true], ['false', false]].each do |val, expected|
25
+ context "when set with a string of #{val}" do
26
+ let(:value) { val }
27
+
28
+ it 'is readable as a bool' do
29
+ expect(subject).to eq(expected)
30
+ end
31
+ end
32
+ end
33
+
34
+ context 'when set with a non-bool string' do
35
+ let(:value) { "aaaa" }
36
+
37
+ it 'throws an error' do
38
+ expect { subject }.to raise_error(TypeError)
39
+ end
40
+ end
41
+
42
+ context 'when set with something that is not a bool' do
43
+ let(:value) { [1, 2, 3] }
44
+
45
+ it 'throws an error' do
46
+ expect { subject }.to raise_error(TypeError)
47
+ end
48
+ end
49
+ end
50
+
51
+ end
@@ -0,0 +1,69 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe Protobuf::Field::FieldArray do
4
+
5
+ class SomeBasicMessage < ::Protobuf::Message
6
+ optional :string, :field, 1
7
+ end
8
+
9
+ class MoreComplexMessage < SomeBasicMessage
10
+ end
11
+
12
+ class OtherBasicMessage < ::Protobuf::Message
13
+ optional :string, :other_field, 1
14
+ end
15
+
16
+ class SomeRepeatMessage < ::Protobuf::Message
17
+ optional :string, :some_string, 1
18
+ repeated :string, :multiple_strings, 2
19
+ repeated SomeBasicMessage, :multiple_basic_msgs, 3
20
+ end
21
+
22
+ let(:instance) { SomeRepeatMessage.new }
23
+
24
+ %w(<< push).each do |method|
25
+ describe "\##{method}" do
26
+ context 'when applied to a string field array' do
27
+ it 'adds a string' do
28
+ expect(instance.multiple_strings).to be_empty
29
+ instance.multiple_strings.send(method, 'string 1')
30
+ expect(instance.multiple_strings).to eq(['string 1'])
31
+ instance.multiple_strings.send(method, 'string 2')
32
+ expect(instance.multiple_strings).to eq(['string 1', 'string 2'])
33
+ end
34
+
35
+ it 'fails if not adding a string' do
36
+ expect { instance.multiple_strings.send(method, 100.0) }.to raise_error(TypeError)
37
+ end
38
+ end
39
+
40
+ context 'when applied to a MessageField field array' do
41
+ it 'adds a MessageField object' do
42
+ expect(instance.multiple_basic_msgs).to be_empty
43
+ basic_msg1 = SomeBasicMessage.new
44
+ instance.multiple_basic_msgs.send(method, basic_msg1)
45
+ expect(instance.multiple_basic_msgs).to eq([basic_msg1])
46
+ basic_msg2 = SomeBasicMessage.new
47
+ instance.multiple_basic_msgs.send(method, basic_msg2)
48
+ expect(instance.multiple_basic_msgs).to eq([basic_msg1, basic_msg2])
49
+ end
50
+
51
+ it 'adds a Hash from a MessageField object' do
52
+ expect(instance.multiple_basic_msgs).to be_empty
53
+ basic_msg1 = SomeBasicMessage.new
54
+ basic_msg1.field = 'my value'
55
+ instance.multiple_basic_msgs.send(method, basic_msg1.to_hash)
56
+ expect(instance.multiple_basic_msgs).to eq([basic_msg1])
57
+ end
58
+
59
+ it 'does not downcast a MessageField' do
60
+ expect(instance.multiple_basic_msgs).to be_empty
61
+ basic_msg1 = MoreComplexMessage.new
62
+ instance.multiple_basic_msgs.send(method, basic_msg1)
63
+ expect(instance.multiple_basic_msgs).to eq([basic_msg1])
64
+ expect(instance.multiple_basic_msgs.first).to be_a(MoreComplexMessage)
65
+ end
66
+ end
67
+ end
68
+ end
69
+ end
@@ -4,4 +4,86 @@ RSpec.describe Protobuf::Field::Int32Field do
4
4
 
5
5
  it_behaves_like :packable_field, described_class
6
6
 
7
+ class SomeInt32Message < ::Protobuf::Message
8
+ optional :int32, :some_int, 1
9
+ end
10
+
11
+ let(:instance) { SomeInt32Message.new }
12
+
13
+ describe '#define_setter' do
14
+ subject { instance.some_int = value; instance.some_int }
15
+
16
+ context 'when set with an int' do
17
+ let(:value) { 100 }
18
+
19
+ it 'is readable as an int' do
20
+ expect(subject).to eq(100)
21
+ end
22
+ end
23
+
24
+ context 'when set with a float' do
25
+ let(:value) { 100.1 }
26
+
27
+ it 'is readable as an int' do
28
+ expect(subject).to eq(100)
29
+ end
30
+ end
31
+
32
+ context 'when set with a string of an int' do
33
+ let(:value) { "101" }
34
+
35
+ it 'is readable as an int' do
36
+ expect(subject).to eq(101)
37
+ end
38
+ end
39
+
40
+ context 'when set with a negative representation of an int as string' do
41
+ let(:value) { "-101" }
42
+
43
+ it 'is readable as a negative int' do
44
+ expect(subject).to eq(-101)
45
+ end
46
+ end
47
+
48
+ context 'when set with a non-numeric string' do
49
+ let(:value) { "aaaa" }
50
+
51
+ it 'throws an error' do
52
+ expect { subject }.to raise_error(TypeError)
53
+ end
54
+ end
55
+
56
+ context 'when set with a string of an int in hex format' do
57
+ let(:value) { "0x101" }
58
+
59
+ it 'throws an error' do
60
+ expect { subject }.to raise_error(TypeError)
61
+ end
62
+ end
63
+
64
+ context 'when set with a string of an int larger than int32 max' do
65
+ let(:value) { (described_class.max + 1).to_s }
66
+
67
+ it 'throws an error' do
68
+ expect { subject }.to raise_error(TypeError)
69
+ end
70
+ end
71
+
72
+ context 'when set with something that is not an int' do
73
+ let(:value) { [1, 2, 3] }
74
+
75
+ it 'throws an error' do
76
+ expect { subject }.to raise_error(TypeError)
77
+ end
78
+ end
79
+
80
+ context 'when set with a timestamp' do
81
+ let(:value) { Time.now }
82
+
83
+ it 'throws an error' do
84
+ expect { subject }.to raise_error(TypeError)
85
+ end
86
+ end
87
+ end
88
+
7
89
  end
@@ -175,6 +175,11 @@ RSpec.describe Protobuf::Message do
175
175
  expect(test_enum.non_default_enum).to eq(2)
176
176
  end
177
177
 
178
+ it "initializes with an object with a block" do
179
+ test_enum = Test::EnumTestMessage.new { |p| p.non_default_enum = 2 }
180
+ expect(test_enum.non_default_enum).to eq(2)
181
+ end
182
+
178
183
  context 'ignoring unknown fields' do
179
184
  before { ::Protobuf.ignore_unknown_fields = true }
180
185
 
@@ -401,7 +406,7 @@ RSpec.describe Protobuf::Message do
401
406
 
402
407
  it 'does not populate default values' do
403
408
  hash = Test::EnumTestMessage.new.to_hash
404
- expect(hash).to eq(Hash.new)
409
+ expect(hash).to eq({})
405
410
  end
406
411
 
407
412
  it 'converts repeated enum fields to an array of the tags' do
@@ -57,9 +57,7 @@ RSpec.describe ::Protobuf::Rpc::ServiceDirectory do
57
57
 
58
58
  def expect_event_trigger(event)
59
59
  expect(::ActiveSupport::Notifications).to receive(:instrument)
60
- .with(event, hash_including(
61
- :listing => an_instance_of(::Protobuf::Rpc::ServiceDirectory::Listing),
62
- )).once
60
+ .with(event, hash_including(:listing => an_instance_of(::Protobuf::Rpc::ServiceDirectory::Listing))).once
63
61
  end
64
62
 
65
63
  def send_beacon(type, server)
@@ -65,9 +65,9 @@ RSpec.describe Protobuf::Rpc::Service do
65
65
  client = double('client')
66
66
  expect(::Protobuf::Rpc::Client).to receive(:new)
67
67
  .with(hash_including(
68
- :service => subject,
69
- :host => subject.host,
70
- :port => subject.port,
68
+ :service => subject,
69
+ :host => subject.host,
70
+ :port => subject.port,
71
71
  )).and_return(client)
72
72
  expect(subject.client).to eq client
73
73
  end
@@ -5,9 +5,7 @@ require 'active_support/core_ext/numeric/time'
5
5
  RSpec.describe ::Protobuf::Rpc::Stat do
6
6
 
7
7
  before(:all) do
8
- unless defined?(BarService)
9
- class BarService < ::Struct.new(:method_name); end
10
- end
8
+ BarService = ::Struct.new(:method_name) unless defined?(BarService)
11
9
  end
12
10
 
13
11
  describe 'server mode' do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: protobuf
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.4.4
4
+ version: 3.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - BJ Neilsen
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2015-02-17 00:00:00.000000000 Z
14
+ date: 2015-04-13 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: activesupport
@@ -340,6 +340,8 @@ files:
340
340
  - spec/lib/protobuf/cli_spec.rb
341
341
  - spec/lib/protobuf/code_generator_spec.rb
342
342
  - spec/lib/protobuf/enum_spec.rb
343
+ - spec/lib/protobuf/field/bool_field_spec.rb
344
+ - spec/lib/protobuf/field/field_array_spec.rb
343
345
  - spec/lib/protobuf/field/float_field_spec.rb
344
346
  - spec/lib/protobuf/field/int32_field_spec.rb
345
347
  - spec/lib/protobuf/field/string_field_spec.rb
@@ -419,80 +421,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
419
421
  version: '0'
420
422
  requirements: []
421
423
  rubyforge_project:
422
- rubygems_version: 2.2.2
424
+ rubygems_version: 2.2.0
423
425
  signing_key:
424
426
  specification_version: 4
425
427
  summary: Google Protocol Buffers serialization and RPC implementation for Ruby.
426
- test_files:
427
- - spec/benchmark/tasks.rb
428
- - spec/bin/protoc-gen-ruby_spec.rb
429
- - spec/data/data.bin
430
- - spec/data/types.bin
431
- - spec/encoding/all_types_spec.rb
432
- - spec/encoding/extreme_values_spec.rb
433
- - spec/functional/class_inheritance_spec.rb
434
- - spec/functional/socket_server_spec.rb
435
- - spec/functional/zmq_server_spec.rb
436
- - spec/lib/protobuf/cli_spec.rb
437
- - spec/lib/protobuf/code_generator_spec.rb
438
- - spec/lib/protobuf/enum_spec.rb
439
- - spec/lib/protobuf/field/float_field_spec.rb
440
- - spec/lib/protobuf/field/int32_field_spec.rb
441
- - spec/lib/protobuf/field/string_field_spec.rb
442
- - spec/lib/protobuf/field_spec.rb
443
- - spec/lib/protobuf/generators/base_spec.rb
444
- - spec/lib/protobuf/generators/enum_generator_spec.rb
445
- - spec/lib/protobuf/generators/extension_generator_spec.rb
446
- - spec/lib/protobuf/generators/field_generator_spec.rb
447
- - spec/lib/protobuf/generators/file_generator_spec.rb
448
- - spec/lib/protobuf/generators/message_generator_spec.rb
449
- - spec/lib/protobuf/generators/service_generator_spec.rb
450
- - spec/lib/protobuf/lifecycle_spec.rb
451
- - spec/lib/protobuf/message_spec.rb
452
- - spec/lib/protobuf/optionable_spec.rb
453
- - spec/lib/protobuf/rpc/client_spec.rb
454
- - spec/lib/protobuf/rpc/connector_spec.rb
455
- - spec/lib/protobuf/rpc/connectors/base_spec.rb
456
- - spec/lib/protobuf/rpc/connectors/common_spec.rb
457
- - spec/lib/protobuf/rpc/connectors/socket_spec.rb
458
- - spec/lib/protobuf/rpc/connectors/zmq_spec.rb
459
- - spec/lib/protobuf/rpc/middleware/exception_handler_spec.rb
460
- - spec/lib/protobuf/rpc/middleware/logger_spec.rb
461
- - spec/lib/protobuf/rpc/middleware/request_decoder_spec.rb
462
- - spec/lib/protobuf/rpc/middleware/response_encoder_spec.rb
463
- - spec/lib/protobuf/rpc/servers/socket_server_spec.rb
464
- - spec/lib/protobuf/rpc/servers/zmq/server_spec.rb
465
- - spec/lib/protobuf/rpc/servers/zmq/util_spec.rb
466
- - spec/lib/protobuf/rpc/servers/zmq/worker_spec.rb
467
- - spec/lib/protobuf/rpc/service_directory_spec.rb
468
- - spec/lib/protobuf/rpc/service_dispatcher_spec.rb
469
- - spec/lib/protobuf/rpc/service_filters_spec.rb
470
- - spec/lib/protobuf/rpc/service_spec.rb
471
- - spec/lib/protobuf/rpc/stat_spec.rb
472
- - spec/lib/protobuf_spec.rb
473
- - spec/spec_helper.rb
474
- - spec/support/all.rb
475
- - spec/support/packed_field.rb
476
- - spec/support/server.rb
477
- - spec/support/test/all_types.data.bin
478
- - spec/support/test/all_types.data.txt
479
- - spec/support/test/defaults.pb.rb
480
- - spec/support/test/defaults.proto
481
- - spec/support/test/enum.pb.rb
482
- - spec/support/test/enum.proto
483
- - spec/support/test/extended.pb.rb
484
- - spec/support/test/extended.proto
485
- - spec/support/test/extreme_values.data.bin
486
- - spec/support/test/google_unittest.pb.rb
487
- - spec/support/test/google_unittest.proto
488
- - spec/support/test/google_unittest_import.pb.rb
489
- - spec/support/test/google_unittest_import.proto
490
- - spec/support/test/google_unittest_import_public.pb.rb
491
- - spec/support/test/google_unittest_import_public.proto
492
- - spec/support/test/multi_field_extensions.pb.rb
493
- - spec/support/test/multi_field_extensions.proto
494
- - spec/support/test/resource.pb.rb
495
- - spec/support/test/resource.proto
496
- - spec/support/test/resource_service.rb
497
- - spec/support/test_app_file.rb
428
+ test_files: []
498
429
  has_rdoc: