Sha256: 8b3294308cdeae7f61fe8a6f2eef0fe0ccb0881ac80238026628090ff34d8d72

Contents?: true

Size: 1.7 KB

Versions: 38

Compression:

Stored size: 1.7 KB

Contents

require 'spec_helper'

describe Metasploit::Model::Search::Operation::Date do
  context 'validation' do
    context 'value' do
      before(:each) do
        operation.valid?
      end

      let(:error) do
        I18n.translate('metasploit.model.errors.models.metasploit/model/search/operation/date.attributes.value.unparseable_date')
      end

      let(:errors) do
        operation.errors[:value]
      end

      let(:operation) do
        described_class.new(:value => value)
      end

      context 'with Date' do
        let(:value) do
          Date.today
        end

        it 'should not record error' do
          errors.should_not include(error)
        end
      end

      context 'without Date' do
        let(:value) do
          'not a date'
        end

        it 'should record error' do
          errors.should include(error)
        end
      end
    end
  end

  context '#value' do
    subject(:value) do
      operation.value
    end

    let(:operation) do
      described_class.new(:value => formatted_value)
    end

    context 'with Date' do
      let(:formatted_value) do
        Date.today
      end

      it 'should be passed in Date' do
        value.should == formatted_value
      end
    end

    context 'without Date' do
      context 'with parseable' do
        let(:date) do
          Date.today
        end

        let(:formatted_value) do
          date.to_s
        end

        it 'should be parsed Date' do
          value.should == date
        end
      end

      context 'without parseable' do
        let(:formatted_value) do
          'not a date'
        end

        it 'should pass through value' do
          value.should be formatted_value
        end
      end
    end
  end
end

Version data entries

38 entries across 38 versions & 1 rubygems

Version Path
metasploit-model-1.0.0.pre.rails.pre.4.0 spec/app/models/metasploit/model/search/operation/date_spec.rb
metasploit-model-0.30.0 spec/app/models/metasploit/model/search/operation/date_spec.rb
metasploit-model-0.30.0-java spec/app/models/metasploit/model/search/operation/date_spec.rb
metasploit-model-0.29.2 spec/app/models/metasploit/model/search/operation/date_spec.rb
metasploit-model-0.29.2-java spec/app/models/metasploit/model/search/operation/date_spec.rb
metasploit-model-0.29.0 spec/app/models/metasploit/model/search/operation/date_spec.rb
metasploit-model-0.29.0-java spec/app/models/metasploit/model/search/operation/date_spec.rb
metasploit-model-0.28.0 spec/app/models/metasploit/model/search/operation/date_spec.rb
metasploit-model-0.28.0-java spec/app/models/metasploit/model/search/operation/date_spec.rb
metasploit-model-0.28.0.pre.engine.pre.requires spec/app/models/metasploit/model/search/operation/date_spec.rb
metasploit-model-0.27.4 spec/app/models/metasploit/model/search/operation/date_spec.rb
metasploit-model-0.27.4-java spec/app/models/metasploit/model/search/operation/date_spec.rb
metasploit-model-0.27.3 spec/app/models/metasploit/model/search/operation/date_spec.rb
metasploit-model-0.27.3-java spec/app/models/metasploit/model/search/operation/date_spec.rb
metasploit-model-0.27.2 spec/app/models/metasploit/model/search/operation/date_spec.rb
metasploit-model-0.27.2-java spec/app/models/metasploit/model/search/operation/date_spec.rb
metasploit-model-0.27.1 spec/app/models/metasploit/model/search/operation/date_spec.rb
metasploit-model-0.27.1-java spec/app/models/metasploit/model/search/operation/date_spec.rb
metasploit-model-0.27.0 spec/app/models/metasploit/model/search/operation/date_spec.rb
metasploit-model-0.27.0-java spec/app/models/metasploit/model/search/operation/date_spec.rb