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

model_finder_spec.rb « ml « projects « finders « spec - gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 1d869e1792daae17707274dd6254592cff8c05fe (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
# frozen_string_literal: true

require 'spec_helper'

RSpec.describe Projects::Ml::ModelFinder, feature_category: :mlops do
  let_it_be(:project) { create(:project) }
  let_it_be(:model1) { create(:ml_models, :with_versions, project: project) }
  let_it_be(:model2) { create(:ml_models, :with_versions, project: project) }
  let_it_be(:model3) { create(:ml_models) }

  subject(:models) { described_class.new(project).execute.to_a }

  it 'returns models for project' do
    is_expected.to match_array([model1, model2])
  end

  it 'including the latest version', :aggregate_failures do
    expect(models[0].association_cached?(:latest_version)).to be(true)
    expect(models[1].association_cached?(:latest_version)).to be(true)
  end

  it 'does not return models belonging to a different project' do
    is_expected.not_to include(model3)
  end

  it 'includes version count' do
    expect(models[0].version_count).to be(models[0].versions.count)
  end
end