Sha256: 25d0f448ba977678a020aabf9a70b73eb02d95412bec7963b04b5fcb76b7ff53

Contents?: true

Size: 1.3 KB

Versions: 11

Compression:

Stored size: 1.3 KB

Contents

require 'spec_helper'

describe Arachni::Browser::Javascript::TaintTracer::Frame do

    subject { Factory[:frame] }

    %w(function url line).each do |m|
        it { is_expected.to respond_to m }
        it { is_expected.to respond_to "#{m}=" }
    end

    it "supports #{Arachni::RPC::Serializer}" do
        expect(subject).to eq(Arachni::RPC::Serializer.deep_clone( subject ))
    end

    describe '#to_rpc_data' do
        let(:data) { subject.to_rpc_data }

        %w(function url line).each do |attribute|
            it "includes '#{attribute}'" do
                expect(data[attribute.to_sym]).to eq(subject.send( attribute ))
            end
        end
    end

    describe '.from_rpc_data' do
        let(:restored) { described_class.from_rpc_data data }
        let(:data) { Arachni::RPC::Serializer.rpc_data( subject ) }

        %w(function url line).each do |attribute|
            it "restores '#{attribute}'" do
                expect(restored.send( attribute )).to eq(subject.send( attribute ))
            end
        end
    end

    describe '#to_h' do
        it 'returns a hash containing frame data' do
            expect(subject.to_h).to eq(Factory[:frame_data])
        end

        it 'is aliased to #to_hash' do
            expect(subject.to_h).to eq(subject.to_hash)
        end
    end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
arachni-1.6.1.3 spec/arachni/browser/javascript/taint_tracer/frame_spec.rb
arachni-1.6.1.2 spec/arachni/browser/javascript/taint_tracer/frame_spec.rb
arachni-1.6.1.1 spec/arachni/browser/javascript/taint_tracer/frame_spec.rb
arachni-1.6.1 spec/arachni/browser/javascript/taint_tracer/frame_spec.rb
arachni-1.6.0 spec/arachni/browser/javascript/taint_tracer/frame_spec.rb
arachni-1.5.1 spec/arachni/browser/javascript/taint_tracer/frame_spec.rb
arachni-1.5 spec/arachni/browser/javascript/taint_tracer/frame_spec.rb
arachni-1.4 spec/arachni/browser/javascript/taint_tracer/frame_spec.rb
arachni-1.3.2 spec/arachni/browser/javascript/taint_tracer/frame_spec.rb
arachni-1.3.1 spec/arachni/browser/javascript/taint_tracer/frame_spec.rb
arachni-1.3 spec/arachni/browser/javascript/taint_tracer/frame_spec.rb