ruby-protocol-buffers 1.3.0 → 1.3.1

Sign up to get free protection for your applications and to get access to all the features.
data/spec/spec_helper.rb CHANGED
@@ -1,7 +1,11 @@
1
- require 'protocol_buffers'
2
-
1
+ require 'rubygems'
3
2
  require 'rspec'
4
3
 
4
+ require 'simplecov'
5
+ SimpleCov.start
6
+
7
+ require 'protocol_buffers'
8
+
5
9
  # These are a couple of classes used by tests
6
10
  class SignedIntTest < ::ProtocolBuffers::Message
7
11
  required :int32, :test_member, 1
@@ -43,7 +47,7 @@ def validate_pbr(klass, value, suppress_output = false)
43
47
  puts " encoded length: #{encoded_string.length}"
44
48
  puts " parsing encoded_string"
45
49
  end
46
-
50
+
47
51
  decode_pbr = nil;
48
52
  begin
49
53
  decode_pbr = klass.parse encoded_string
@@ -55,7 +59,7 @@ def validate_pbr(klass, value, suppress_output = false)
55
59
  end
56
60
  return false
57
61
  end
58
-
62
+
59
63
  if decode_pbr
60
64
  unless suppress_output
61
65
  puts " decoded value: #{decode_pbr.test_member}"
@@ -70,7 +74,7 @@ def validate_pbr(klass, value, suppress_output = false)
70
74
  puts " decoded value inspect : #{decode_pbr.test_member.inspect}"
71
75
  puts " passed value inspect : #{value.inspect}"
72
76
  end
73
-
77
+
74
78
  # Ruby 1.8 Strings don't have encodings
75
79
  if decode_pbr.test_member.respond_to?("encoding")
76
80
  unless suppress_output
@@ -79,11 +83,11 @@ def validate_pbr(klass, value, suppress_output = false)
79
83
  end
80
84
  end
81
85
  end
82
-
86
+
83
87
  unless suppress_output
84
88
  puts " GOOD COMPARE" if decode_pbr.test_member == value
85
89
  end
86
-
90
+
87
91
  decode_pbr.test_member == value
88
92
  end
89
93
  end
@@ -94,5 +98,18 @@ def to_hex_string ss
94
98
  yy.join(' ')
95
99
  end
96
100
 
101
+ def has_compiler?
102
+ ProtocolBuffers::Compiler.available?
103
+ end
104
+
97
105
  RSpec.configure do |config|
106
+ config.after(:each) do
107
+ # clear our namespaces
108
+ Object.send(:remove_const, :Simple) if defined?(Simple)
109
+ Object.send(:remove_const, :Featureful) if defined?(Featureful)
110
+ Object.send(:remove_const, :Foo) if defined?(Foo)
111
+ Object.send(:remove_const, :TehUnknown) if defined?(TehUnknown)
112
+ Object.send(:remove_const, :TehUnknown2) if defined?(TehUnknown2)
113
+ Object.send(:remove_const, :TehUnknown3) if defined?(TehUnknown3)
114
+ end
98
115
  end
data/tasks/rspec.rake ADDED
@@ -0,0 +1,7 @@
1
+ require 'rspec'
2
+ require 'rspec/core/rake_task'
3
+
4
+ desc "Run the specs"
5
+ RSpec::Core::RakeTask.new do |t|
6
+ t.rspec_opts = ['--options', "spec/spec.opts"]
7
+ end
data/tasks/yard.rake ADDED
@@ -0,0 +1,6 @@
1
+ require 'yard'
2
+
3
+ YARD::Rake::YardocTask.new(:doc) do |t|
4
+ version = ProtocolBuffers::VERSION
5
+ t.options = ["--title", "ruby protocol buffers #{version}", "--files", "LICENSE,Changelog.md"]
6
+ end
metadata CHANGED
@@ -1,17 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-protocol-buffers
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ version: 1.3.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
8
8
  - Brian Palmer
9
+ - Benedikt Böhm
9
10
  - Rob Marable
10
11
  - Paulo Luis Franchini Casaretto
11
12
  autorequire:
12
13
  bindir: bin
13
14
  cert_chain: []
14
- date: 2013-01-18 00:00:00.000000000 Z
15
+ date: 2013-02-26 00:00:00.000000000 Z
15
16
  dependencies:
16
17
  - !ruby/object:Gem::Dependency
17
18
  name: autotest-standalone
@@ -62,7 +63,23 @@ dependencies:
62
63
  - !ruby/object:Gem::Version
63
64
  version: '0'
64
65
  - !ruby/object:Gem::Dependency
65
- name: rcov
66
+ name: rake-compiler
67
+ requirement: !ruby/object:Gem::Requirement
68
+ none: false
69
+ requirements:
70
+ - - ! '>='
71
+ - !ruby/object:Gem::Version
72
+ version: '0'
73
+ type: :development
74
+ prerelease: false
75
+ version_requirements: !ruby/object:Gem::Requirement
76
+ none: false
77
+ requirements:
78
+ - - ! '>='
79
+ - !ruby/object:Gem::Version
80
+ version: '0'
81
+ - !ruby/object:Gem::Dependency
82
+ name: simplecov
66
83
  requirement: !ruby/object:Gem::Requirement
67
84
  none: false
68
85
  requirements:
@@ -112,6 +129,7 @@ dependencies:
112
129
  description:
113
130
  email:
114
131
  - brian@codekitchen.net
132
+ - bb@xnull.de
115
133
  executables:
116
134
  - ruby-protoc
117
135
  extensions: []
@@ -120,12 +138,13 @@ extra_rdoc_files:
120
138
  files:
121
139
  - .document
122
140
  - .gitignore
141
+ - .travis.yml
123
142
  - Changelog.md
124
143
  - Gemfile
144
+ - Gemfile.no_varint
125
145
  - LICENSE
126
146
  - README.md
127
147
  - Rakefile
128
- - VERSION
129
148
  - bin/ruby-protoc
130
149
  - debian/changelog
131
150
  - debian/compatability
@@ -134,8 +153,6 @@ files:
134
153
  - debian/protocol_buffers.rb
135
154
  - debian/rules
136
155
  - examples/json_protobuf.rb
137
- - ext/extconf.disabled.rb
138
- - ext/varint.c
139
156
  - lib/protocol_buffers.rb
140
157
  - lib/protocol_buffers/compiler.rb
141
158
  - lib/protocol_buffers/compiler/descriptor.pb.rb
@@ -151,6 +168,7 @@ files:
151
168
  - lib/protocol_buffers/runtime/message.rb
152
169
  - lib/protocol_buffers/runtime/service.rb
153
170
  - lib/protocol_buffers/runtime/varint.rb
171
+ - lib/protocol_buffers/version.rb
154
172
  - ruby-protocol-buffers.gemspec
155
173
  - spec/compiler_spec.rb
156
174
  - spec/fields_spec.rb
@@ -158,8 +176,12 @@ files:
158
176
  - spec/nil_bugs_spec.rb
159
177
  - spec/proto_files/depends.proto
160
178
  - spec/proto_files/dotted_package.proto
179
+ - spec/proto_files/featureful.pb.rb
161
180
  - spec/proto_files/featureful.proto
162
181
  - spec/proto_files/no_package.proto
182
+ - spec/proto_files/packed.pb.rb
183
+ - spec/proto_files/packed.proto
184
+ - spec/proto_files/simple.pb.rb
163
185
  - spec/proto_files/simple.proto
164
186
  - spec/proto_files/top_level_enum.proto
165
187
  - spec/proto_files/under_score_package.proto
@@ -167,6 +189,8 @@ files:
167
189
  - spec/spec.opts
168
190
  - spec/spec_helper.rb
169
191
  - spec/unicode_string_spec.rb
192
+ - tasks/rspec.rake
193
+ - tasks/yard.rake
170
194
  homepage: https://github.com/mozy/ruby-protocol-buffers
171
195
  licenses: []
172
196
  post_install_message:
@@ -198,8 +222,12 @@ test_files:
198
222
  - spec/nil_bugs_spec.rb
199
223
  - spec/proto_files/depends.proto
200
224
  - spec/proto_files/dotted_package.proto
225
+ - spec/proto_files/featureful.pb.rb
201
226
  - spec/proto_files/featureful.proto
202
227
  - spec/proto_files/no_package.proto
228
+ - spec/proto_files/packed.pb.rb
229
+ - spec/proto_files/packed.proto
230
+ - spec/proto_files/simple.pb.rb
203
231
  - spec/proto_files/simple.proto
204
232
  - spec/proto_files/top_level_enum.proto
205
233
  - spec/proto_files/under_score_package.proto
data/VERSION DELETED
@@ -1 +0,0 @@
1
- 1.3.0
@@ -1,3 +0,0 @@
1
- require 'mkmf'
2
-
3
- create_makefile "ruby_protobufs"
data/ext/varint.c DELETED
@@ -1,65 +0,0 @@
1
- #include "ruby.h"
2
-
3
- static VALUE Protobuf, Varint;
4
- static ID getbyte, putbyte;
5
-
6
- static VALUE varint_encode(VALUE module, VALUE io, VALUE int_valV)
7
- {
8
- /* unsigned for the bit shifting ops */
9
- unsigned long long int_val = (unsigned long long)NUM2LL(int_valV);
10
- unsigned char byte;
11
- while (1) {
12
- byte = int_val & 0x7f;
13
- int_val >>= 7;
14
- if (int_val == 0) {
15
- rb_funcall(io, putbyte, 1, INT2FIX(byte));
16
- return Qnil;
17
- } else {
18
- rb_funcall(io, putbyte, 1, INT2FIX(byte | 0x80));
19
- }
20
- }
21
- }
22
-
23
- static VALUE varint_decode(VALUE module, VALUE io)
24
- {
25
- unsigned long long int_val = 0;
26
- unsigned shift = 0;
27
- unsigned char byte;
28
-
29
- while (1) {
30
- if (shift >= 64) {
31
- rb_raise(rb_eArgError, "too many bytes when decoding varint");
32
- }
33
- byte = (unsigned char)FIX2INT(rb_funcall(io, getbyte, 0));
34
- int_val |= ((unsigned long long)(byte & 0x7f)) << shift;
35
- shift += 7;
36
- if ((byte & 0x80) == 0) {
37
- /* return ULL2NUM(int_val); */
38
- return LL2NUM((long long)int_val);
39
- }
40
- }
41
- }
42
-
43
- void Init_ruby_protobufs()
44
- {
45
- Protobuf = rb_define_module("Protobuf");
46
- Varint = rb_define_module_under(Protobuf, "Varint");
47
-
48
- VALUE zero = INT2FIX(0);
49
- VALUE test_io = rb_class_new_instance(1, &zero,
50
- rb_const_get(rb_cObject, rb_intern("IO")));
51
-
52
- /* hackish way to support both 1.8.6 and 1.8.7+ */
53
- getbyte = rb_intern("getbyte");
54
- if (!rb_respond_to(test_io, getbyte)) {
55
- getbyte = rb_intern("getc");
56
- }
57
-
58
- /* TODO: check the api docs -- what happens to test_io here?
59
- * does it just leak? */
60
-
61
- putbyte = rb_intern("putc");
62
-
63
- rb_define_module_function(Varint, "encode", varint_encode, 2);
64
- rb_define_module_function(Varint, "decode", varint_decode, 1);
65
- }