diff options
Diffstat (limited to 'spec/components/projects/ml/show_ml_model_version_component_spec.rb')
-rw-r--r-- | spec/components/projects/ml/show_ml_model_version_component_spec.rb | 35 |
1 files changed, 33 insertions, 2 deletions
diff --git a/spec/components/projects/ml/show_ml_model_version_component_spec.rb b/spec/components/projects/ml/show_ml_model_version_component_spec.rb index 973d8123c45..8c7e40d31a2 100644 --- a/spec/components/projects/ml/show_ml_model_version_component_spec.rb +++ b/spec/components/projects/ml/show_ml_model_version_component_spec.rb @@ -4,11 +4,24 @@ require "spec_helper" RSpec.describe Projects::Ml::ShowMlModelVersionComponent, type: :component, feature_category: :mlops do let_it_be(:project) { build_stubbed(:project) } + let_it_be(:user) { project.owner } let_it_be(:model) { build_stubbed(:ml_models, project: project) } - let_it_be(:version) { build_stubbed(:ml_model_versions, model: model) } + let_it_be(:experiment) do + model.default_experiment.iid = 100 + model.default_experiment + end + + let_it_be(:candidate) do + build_stubbed(:ml_candidates, :with_artifact, experiment: experiment, user: user, project: project, + internal_id: 100) + end + + let_it_be(:version) do + build_stubbed(:ml_model_versions, :with_package, model: model, candidate: candidate, description: 'abc') + end subject(:component) do - described_class.new(model_version: version) + described_class.new(model_version: version, current_user: user) end describe 'rendered' do @@ -23,10 +36,28 @@ RSpec.describe Projects::Ml::ShowMlModelVersionComponent, type: :component, feat 'modelVersion' => { 'id' => version.id, 'version' => version.version, + 'description' => 'abc', + 'projectPath' => "/#{project.full_path}", 'path' => "/#{project.full_path}/-/ml/models/#{model.id}/versions/#{version.id}", + 'packageId' => version.package_id, 'model' => { 'name' => model.name, 'path' => "/#{project.full_path}/-/ml/models/#{model.id}" + }, + 'candidate' => { + 'info' => { + 'iid' => candidate.iid, + 'eid' => candidate.eid, + 'pathToArtifact' => "/#{project.full_path}/-/packages/#{candidate.artifact.id}", + 'experimentName' => candidate.experiment.name, + 'pathToExperiment' => "/#{project.full_path}/-/ml/experiments/#{experiment.iid}", + 'status' => 'running', + 'path' => "/#{project.full_path}/-/ml/candidates/#{candidate.iid}", + 'ciJob' => nil + }, + 'metrics' => [], + 'params' => [], + 'metadata' => [] } } }) |