Add new spec for properly initializing boolean values
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@668985 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/lib/rb/spec/ThriftSpec.thrift b/lib/rb/spec/ThriftSpec.thrift
index f22f17d..101caff 100644
--- a/lib/rb/spec/ThriftSpec.thrift
+++ b/lib/rb/spec/ThriftSpec.thrift
@@ -12,3 +12,7 @@
5: map<i32, map<string, double>> complex,
6: set<i16> shorts = [5, 17, 239]
}
+
+struct BoolStruct {
+ 1: bool yesno = 1
+}
diff --git a/lib/rb/spec/gen-rb/ThriftSpec_types.rb b/lib/rb/spec/gen-rb/ThriftSpec_types.rb
index c4eab4d..f34b7bc 100644
--- a/lib/rb/spec/gen-rb/ThriftSpec_types.rb
+++ b/lib/rb/spec/gen-rb/ThriftSpec_types.rb
@@ -38,4 +38,12 @@
}
end
+ class BoolStruct
+ include Thrift::Struct
+ attr_accessor :yesno
+ FIELDS = {
+ 1 => {:type => Thrift::Types::BOOL, :name => 'yesno', :default => true}
+ }
+ end
+
end
diff --git a/lib/rb/spec/struct_spec.rb b/lib/rb/spec/struct_spec.rb
index e57d555..16c3b1f 100644
--- a/lib/rb/spec/struct_spec.rb
+++ b/lib/rb/spec/struct_spec.rb
@@ -47,6 +47,11 @@
end
end
+ it "should properly initialize boolean values" do
+ struct = BoolStruct.new(:yesno => false)
+ struct.yesno.should be_false
+ end
+
it "should have proper == semantics" do
Foo.new.should_not == Hello.new
Foo.new.should == Foo.new