Welcome to mirror list, hosted at ThFree Co, Russian Federation.

sbom_spec.rb « enums « concerns « models « spec - gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: e2f56cc637d9c2f2085eec2555ef943b374c7f00 (plain)
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
35
36
37
38
39
# frozen_string_literal: true

require "spec_helper"

RSpec.describe Enums::Sbom, feature_category: :dependency_management do
  describe '.purl_types' do
    using RSpec::Parameterized::TableSyntax

    subject(:actual_purl_type) { described_class.purl_types[package_manager] }

    where(:given_package_manager, :expected_purl_type) do
      :composer             | 1
      'composer'            | 1
      :conan                | 2
      'conan'               | 2
      :gem                  | 3
      :golang               | 4
      :maven                | 5
      :npm                  | 6
      :nuget                | 7
      :pypi                 | 8
      :apk                  | 9
      :rpm                  | 10
      :deb                  | 11
      'cbl-mariner'         | 12
      :wolfi                | 13
      'unknown-pkg-manager' | 0
      'Python (unknown)'    | 0
    end

    with_them do
      let(:package_manager) { given_package_manager }

      it 'returns the expected purl_type' do
        expect(actual_purl_type).to eql(expected_purl_type)
      end
    end
  end
end