File: package_spec.rb

package info (click to toggle)
gitlab 17.6.5-19
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 629,368 kB
  • sloc: ruby: 1,915,304; javascript: 557,307; sql: 60,639; xml: 6,509; sh: 4,567; makefile: 1,239; python: 406
file content (34 lines) | stat: -rw-r--r-- 932 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# frozen_string_literal: true

require 'spec_helper'

RSpec.describe Packages::Go::Package, type: :model, feature_category: :package_registry do
  using RSpec::Parameterized::TableSyntax

  let_it_be(:golang_package) { build_stubbed(:golang_package) }

  describe 'validations' do
    where(:version, :valid) do
      'v1.2.3'                | true
      'v1.2.3-beta'           | true
      'v1.2.3-alpha.3'        | true
      'v1'                    | false
      'v1.2'                  | false
      'v1./2.3'               | false
      'v../../../../../1.2.3' | false
      'v%2e%2e%2f1.2.3'       | false
    end

    with_them do
      if params[:valid]
        it { is_expected.to allow_value(version).for(:version) }
      else
        it { is_expected.not_to allow_value(version).for(:version) }
      end
    end
  end

  describe '.installable' do
    it_behaves_like 'installable packages', :golang_package
  end
end