Sha256: 39f4936b48c348c3a8bdeb09cd9eae6695373be42467b52f7b7b2b29824a958b

Contents?: true

Size: 1.57 KB

Versions: 23

Compression:

Stored size: 1.57 KB

Contents

# frozen_string_literal: true

require 'spec_helper'

describe 'Bzr::Validation' do
  describe 'validate_server_connection' do
    it 'must handle non existent remote source' do
      core = OhlohScm::Factory.get_core(scm_type: :bzr, url: 'lp:foobar')
      core.validate
      core.errors.wont_be :empty?
    end
  end

  describe 'validate url' do
    it 'must have errors for invalid urls' do
      assert_url_error(:bzr, nil, '', 'foo', 'http:/', 'http:://', 'http://', 'http://a')
      assert_url_error(:bzr, 'http://www.selenic.com/repo/hello%20world') # no encoded strings allowed
      assert_url_error(:bzr, 'http://www.selenic.com/repo/hello world') # no spaces allowed
      assert_url_error(:bzr, 'git://www.selenic.com/repo/hello') # git protocol not allowed
      assert_url_error(:bzr, 'svn://www.selenic.com/repo/hello') # svn protocol not allowed
      assert_url_error(:bzr, 'lp://foobar') # lp requires no '//' after colon
      assert_url_error(:bzr, 'file:///home/test/bzr')
      assert_url_error(:bzr, '/home/test/bzr')
      assert_url_error(:bzr, 'bzr+ssh://test@localhost/home/test/bzr')
      assert_url_error(:bzr, 'bzr+ssh://localhost/home/test/bzr')
    end

    it 'wont have errors for valid urls' do
      assert_url_valid(:bzr, 'http://www.selenic.com/repo/hello')
      assert_url_valid(:bzr, 'http://www.selenic.com:80/repo/hello')
      assert_url_valid(:bzr, 'https://www.selenic.com/repo/hello')
      assert_url_valid(:bzr, 'bzr://www.selenic.com/repo/hello')
      assert_url_valid(:bzr, 'lp:foobar')
      assert_url_valid(:bzr, 'lp:~foobar/bar')
    end
  end
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
ohloh_scm-4.0.4 spec/ohloh_scm/bzr/validation_spec.rb
ohloh_scm-4.0.3 spec/ohloh_scm/bzr/validation_spec.rb
ohloh_scm-4.0.2 spec/ohloh_scm/bzr/validation_spec.rb
ohloh_scm-4.0.1 spec/ohloh_scm/bzr/validation_spec.rb
ohloh_scm-3.0.21 spec/ohloh_scm/bzr/validation_spec.rb
ohloh_scm-3.0.19 spec/ohloh_scm/bzr/validation_spec.rb
ohloh_scm-3.0.17 spec/ohloh_scm/bzr/validation_spec.rb
ohloh_scm-3.0.16 spec/ohloh_scm/bzr/validation_spec.rb
ohloh_scm-3.0.15 spec/ohloh_scm/bzr/validation_spec.rb
ohloh_scm-3.0.14 spec/ohloh_scm/bzr/validation_spec.rb
ohloh_scm-3.0.13 spec/ohloh_scm/bzr/validation_spec.rb
ohloh_scm-3.0.12 spec/ohloh_scm/bzr/validation_spec.rb
ohloh_scm-3.0.11 spec/ohloh_scm/bzr/validation_spec.rb
ohloh_scm-3.0.10 spec/ohloh_scm/bzr/validation_spec.rb
ohloh_scm-3.0.9 spec/ohloh_scm/bzr/validation_spec.rb
ohloh_scm-3.0.8 spec/ohloh_scm/bzr/validation_spec.rb
ohloh_scm-3.0.7 spec/ohloh_scm/bzr/validation_spec.rb
ohloh_scm-3.0.6 spec/ohloh_scm/bzr/validation_spec.rb
ohloh_scm-3.0.5 spec/ohloh_scm/bzr/validation_spec.rb
ohloh_scm-3.0.4 spec/ohloh_scm/bzr/validation_spec.rb