Sha256: 81ce7d2cb4bae892e1121e954488f2ccb4e7bdce9fe221c3574af255a606f1c2
Contents?: true
Size: 1.82 KB
Versions: 3
Compression:
Stored size: 1.82 KB
Contents
require 'ffi/udis86/operand' require 'ffi/udis86/ud' require 'spec_helper' require 'helpers/operands' describe Operand do include Helpers it "should provide the type of the operand" do operands = ud_operands('operands_simple') operands[0].type.should == :ud_op_reg operands[1].type.should == :ud_op_imm end it "should provide the size of the operand" do operands = ud_operands('operands_simple') operands[1].size.should == 32 end it "should provide the value of the operand" do operands = ud_operands('operands_simple') operands[1].value.signed_byte.should == 0x10 operands[1].value.unsigned_byte.should == 0x10 end it "should specify value as nil for register operands" do operands = ud_operands('operands_simple') operands[0].value.should be_nil end it "should provide the base of memory operands" do operands = ud_operands('operands_memory') operands[1].type.should == :ud_op_mem operands[1][:base].should == :ud_r_esp operands[1].base.should == :esp end it "should provide the index of memory operands" do operands = ud_operands('operands_index_scale') operands[1].type.should == :ud_op_mem operands[1][:index].should == :ud_r_eax operands[1].index.should == :eax end it "should provide the offset of memory operands" do operands = ud_operands('operands_offset') operands[1].type.should == :ud_op_mem operands[1].offset.byte.should == 0x10 end it "should provide the scale of memory operands" do operands = ud_operands('operands_index_scale') operands[1].type.should == :ud_op_mem operands[1].scale.should == 2 end it "should provide the register name for register operands" do operands = ud_operands('operands_simple') operands[0][:base].should == :ud_r_eax operands[0].reg.should == :eax end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
ffi-udis86-0.1.3 | spec/operand_spec.rb |
ffi-udis86-0.1.2 | spec/operand_spec.rb |
ffi-udis86-0.1.1 | spec/operand_spec.rb |