# coding: utf-8

"""
    GoodMem API

    API for interacting with the GoodMem service, providing vector-based memory storage and retrieval with multiple embedder support. The service enables creation of memory spaces, storing memories with vector representations, and efficient similarity-based retrieval.

    The version of the OpenAPI document: v1
    Contact: support@goodmem.io
    Generated by OpenAPI Generator (https://openapi-generator.tech)

    Do not edit the class manually.
"""  # noqa: E501


import unittest

from goodmem_client.models.retrieve_memory_event import RetrieveMemoryEvent

class TestRetrieveMemoryEvent(unittest.TestCase):
    """RetrieveMemoryEvent unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> RetrieveMemoryEvent:
        """Test RetrieveMemoryEvent
            include_optional is a boolean, when False only required
            params are included, when True both required and
            optional params are included """
        # uncomment below to create an instance of `RetrieveMemoryEvent`
        """
        model = RetrieveMemoryEvent()
        if include_optional:
            return RetrieveMemoryEvent(
                result_set_boundary = goodmem_client.models.result_set_boundary.ResultSetBoundary(
                    result_set_id = '550e8400-e29b-41d4-a716-446655440000', 
                    kind = 'BEGIN', 
                    stage_name = 'vector_search', 
                    expected_items = 10, ),
                abstract_reply = goodmem_client.models.abstract_reply.AbstractReply(
                    text = 'Based on the retrieved memories, the recommended approach is to use vector similarity search combined with keyword filtering for optimal results.', 
                    relevance_score = 0.85, 
                    result_set_id = '550e8400-e29b-41d4-a716-446655440000', ),
                retrieved_item = goodmem_client.models.retrieved_item.RetrievedItem(
                    memory = {"memoryId": "550e8400-e29b-41d4-a716-446655440000", "spaceId": "550e8400-e29b-41d4-a716-446655440001", "contentType": "text/plain"}, 
                    chunk = goodmem_client.models.chunk_reference.ChunkReference(
                        result_set_id = '550e8400-e29b-41d4-a716-446655440000', 
                        chunk = {"chunkId": "550e8400-e29b-41d4-a716-446655440000", "memoryId": "550e8400-e29b-41d4-a716-446655440001", "chunkText": "This is a chunk of text from the memory."}, 
                        memory_index = 2, 
                        relevance_score = 0.92, ), ),
                memory_definition = {"memoryId": "550e8400-e29b-41d4-a716-446655440000", "spaceId": "550e8400-e29b-41d4-a716-446655440001", "contentType": "text/plain"},
                status = goodmem_client.models.good_mem_status.GoodMemStatus(
                    code = 'PARTIAL_RESULTS', 
                    message = 'Some embedders were unavailable, returning partial results', )
            )
        else:
            return RetrieveMemoryEvent(
        )
        """

    def testRetrieveMemoryEvent(self):
        """Test RetrieveMemoryEvent"""
        # inst_req_only = self.make_instance(include_optional=False)
        # inst_req_and_optional = self.make_instance(include_optional=True)

if __name__ == '__main__':
    unittest.main()
