Skip to content

Commit

Permalink
add first mockito test
Browse files Browse the repository at this point in the history
  • Loading branch information
juanjoman committed Aug 31, 2023
1 parent 10565e4 commit cb5aabd
Show file tree
Hide file tree
Showing 2 changed files with 57 additions and 8 deletions.
2 changes: 2 additions & 0 deletions modules/embeddingsspace/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ dependencies {

testImplementation platform('org.junit:junit-bom:5.9.1')
testImplementation 'org.junit.jupiter:junit-jupiter'
testImplementation 'org.mockito:mockito-core:3.+'
testImplementation 'org.mockito:mockito-junit-jupiter:5.5.0'
}

test {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,21 +1,68 @@
package com.theagilemonkeys.ellmental.embeddingsspace;

import com.theagilemonkeys.ellmental.core.schema.Embedding;
import com.theagilemonkeys.ellmental.embeddingsgeneration.EmbeddingsGenerationModel;
import com.theagilemonkeys.ellmental.embeddingsstore.EmbeddingsStore;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.*;
import org.mockito.junit.MockitoJUnitRunner;
import org.mockito.junit.jupiter.MockitoExtension;

import java.util.List;
import java.util.UUID;

import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.*;

@ExtendWith(MockitoExtension.class)
public class EmbeddingsSpaceComponentTest {

// TODO: Use mockito to Mock these
// @Spy
// private final EmbeddingsGenerationModel model;
// @Spy
// private final EmbeddingsStore store;
// @Inject
// private final EmbeddingsSpaceComponent embeddingsSpaceComponent;
@Mock
private EmbeddingsGenerationModel embeddingsGenerationModel;
@Mock
private EmbeddingsStore embeddingsStore;
@InjectMocks
private EmbeddingsSpaceComponent embeddingsSpaceComponent;
@Captor
private ArgumentCaptor<String> sampleTextCaptor;

private final String sampleText = "sample text";

@Test
public void testSaveEmbedding() {
Embedding embeddingMock = new Embedding(UUID.randomUUID(), List.of(1.0, 2.0, 3.0), null);
when(embeddingsGenerationModel.generateEmbedding(sampleText)).thenReturn(embeddingMock);
//doNothing().when(embeddingsStore).store(embeddingMock);
embeddingsSpaceComponent.save(sampleText);

verify(embeddingsGenerationModel).generateEmbedding(sampleTextCaptor.capture());
String capturedSampleText = sampleTextCaptor.getValue();
assertEquals(sampleText, capturedSampleText);

verify(embeddingsStore).store(embeddingMock);

verifyNoMoreInteractions(embeddingsGenerationModel, embeddingsStore);
}

@Test
public void testMostSimilarEmbeddings() {
assertTrue(true);
}

@Test
public void testMostSimilarEmbeddingsWhenUsingString() {
assertTrue(true);
}

@Test
public void testGetEmbedding() {
assertTrue(true);
}

@Test
public void todo() {
public void testDeleteEmbedding() {
assertTrue(true);
}
}

0 comments on commit cb5aabd

Please sign in to comment.