# Class MedicineRepositoryTest

Namespace
  adas_core.Test.Repositories

Assembly
  adas-core.Test.dll

    [TestFixture]
    [Category("Integration")]
    public class MedicineRepositoryTest

Inheritance
  object
  MedicineRepositoryTest

Inherited Members
  object.Equals(object)
  object.Equals(object, object)
  object.GetHashCode()
  object.GetType()
  object.MemberwiseClone()
  object.ReferenceEquals(object, object)
  object.ToString()

Extension Methods
  NumberUtils.IsNumber(object)
  NumberUtils.ToDouble(object)
  ObjectUtils.ToStr(object?)

## Methods

### GetMedicine_Find_Code_Return_Medicine()

Tests that the repository returns a non-null medicine when a valid medicine code is found.

    [Test]
    public Task GetMedicine_Find_Code_Return_Medicine()

#### Returns

Task

### GetMedicine_Find_Note_Return_Medicine()

Verifies that the repository returns a non-null medicine when a medicine is found by the supplied note identifier ("note1"), confirming successful lookup by note.

    [Test]
    public Task GetMedicine_Find_Note_Return_Medicine()

#### Returns

Task

### GetMedicine_Not_Find_Code_Return_Empty()

Verifies that the repository's `GetMedicine` method returns `null` when the provided medicine code does not match any existing record.

    [Test]
    public Task GetMedicine_Not_Find_Code_Return_Empty()

#### Returns

Task

### Get_Medicines_Of_Treatments_By_Code_When_Have_Code_And_Notes_Return_Paracetamol()

    [Test]
    public Task Get_Medicines_Of_Treatments_By_Code_When_Have_Code_And_Notes_Return_Paracetamol()

#### Returns

Task

### Get_Medicines_Of_Treatments_Return_Empty_List()

Verifies that `GetMedicineByCodeOrNote` returns a non-null, empty list when invoked with an array containing an empty string.

    [Test]
    public Task Get_Medicines_Of_Treatments_Return_Empty_List()

#### Returns

Task

### Init()

Performs one-time initialization for integration tests by seeding the medicines collection with a test record and verifying it can be retrieved by code or note.

    [OneTimeSetUp]
    public Task Init()

#### Returns

Task

### UpdateMedicine_Return_Medicine()

Verifies that UpdateMedicine returns the updated medicine and that the changes are persisted and retrievable via GetMedicineById, including the updated notes collection.

    [Test]
    public Task UpdateMedicine_Return_Medicine()

#### Returns

Task