Sha256: 4326f0ff8709ee57128bb528b84dfffd43a30833f272b0f6b44a1d8c840ad01c

Contents?: true

Size: 993 Bytes

Versions: 10

Compression:

Stored size: 993 Bytes

Contents

shared_examples_for 'sink' do
    %w(trace).each do |m|
        it { should respond_to m }
        it { should respond_to "#{m}=" }
    end

    it "supports #{Arachni::RPC::Serializer}" do
        subject.should == Arachni::RPC::Serializer.deep_clone( subject )
    end

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

        it "includes 'trace'" do
            data[:trace].should == subject.trace.map(&:to_rpc_data)
        end
    end

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

        %w(trace).each do |attribute|
            it "restores '#{attribute}'" do
                restored.send( attribute ).should == subject.send( attribute )
            end
        end
    end

    describe '#to_h' do
        it 'converts #trace data to hashes' do
            subject.to_h[:trace].should == [Factory[:frame_data]]
        end
    end

end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
arachni-1.2.1 spec/support/shared/browser/javascript/taint_tracer/sink/base.rb
arachni-1.2 spec/support/shared/browser/javascript/taint_tracer/sink/base.rb
arachni-1.1 spec/support/shared/browser/javascript/taint_tracer/sink/base.rb
arachni-1.0.6 spec/support/shared/browser/javascript/taint_tracer/sink/base.rb
arachni-1.0.5 spec/support/shared/browser/javascript/taint_tracer/sink/base.rb
arachni-1.0.4 spec/support/shared/browser/javascript/taint_tracer/sink/base.rb
arachni-1.0.3 spec/support/shared/browser/javascript/taint_tracer/sink/base.rb
arachni-1.0.2 spec/support/shared/browser/javascript/taint_tracer/sink/base.rb
arachni-1.0.1 spec/support/shared/browser/javascript/taint_tracer/sink/base.rb
arachni-1.0 spec/support/shared/browser/javascript/taint_tracer/sink/base.rb