File size: 1,255 Bytes
597b27e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
40
defmodule Medicode.TranscriptionChunkCodeVectorsFixtures do
  @moduledoc """
  This module defines test helpers for creating %TranscriptionChunkCodeVector{}
  entities via the `Medicode.Transcriptions` context.
  """

  import Medicode.TranscriptionChunksFixtures
  import Medicode.CodeVectorsFixtures

  @doc """
  Generate a transcription chunk code vector.
  """
  def transcription_chunk_code_vector_fixture(attrs \\ %{}) do
    transcription_chunk_id =
      cond do
        Map.has_key?(attrs, :transcription_chunk_id) -> attrs.transcription_chunk_id
        Map.has_key?(attrs, :transcription_chunk) -> attrs.transcription_chunk
        true -> transcription_chunk_fixture().id
      end

    code_vector_id =
      cond do
        Map.has_key?(attrs, :code_vector_id) -> attrs.code_vector_id
        Map.has_key?(attrs, :code_vector) -> attrs.code_vector
        true -> code_vector_fixture().id
      end

    {:ok, transcription_chunk_code_vector} =
      attrs
      |> Enum.into(%{
        transcription_chunk_id: transcription_chunk_id,
        code_vector_id: code_vector_id,
        cosine_similarity: 1.0
      })
      |> Medicode.Transcriptions.upsert_code_vector_for_transcription_chunk()

    transcription_chunk_code_vector
  end
end