File size: 1,048 Bytes
3f219b5
41e8fed
 
3f219b5
41e8fed
 
3f219b5
 
41e8fed
 
 
 
 
 
 
 
 
 
 
 
 
eb6a388
 
 
 
41e8fed
 
 
 
 
 
 
 
 
 
 
 
 
3f219b5
41e8fed
 
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
41
42
defmodule Medicode.CodeFeedbacksFixtures do
  @moduledoc """
  This module defines test helpers for creating %CodeFeedback{}
  entities via the `Medicode.Feedback` context.
  """

  import Medicode.AccountsFixtures
  import Medicode.CodeVectorsFixtures

  @doc """
  Generate a code feedback.
  """
  def code_feedback_fixture(attrs \\ %{}) do
    user_id =
      cond do
        Map.has_key?(attrs, :user_id) -> attrs.user_id
        Map.has_key?(attrs, :user) -> attrs.user
        true -> user_fixture().id
      end

    code_vector =
      if Map.has_key?(attrs, :code_vector) do
        attrs.code_vector
      else
        code_vector_fixture()
      end

    # NOTE: The text and text_vector values are inaccurate. The text_vector
    # value does not represent the text value.

    attrs
    |> Enum.into(%{
      user_id: user_id,
      code_vector_id: code_vector.id,
      response: true,
      text: "My code vector text",
      text_vector: code_vector.description_vector
    })
    |> Medicode.Feedback.insert_and_return()
  end
end