Test files: 47. Test functions: 441. Described by their authors (docstring or @DisplayName): 0. Where there is no description, the line shows the test name in words and says so.
Latest result: ragleap-rag-java-tests passed 389 passed, 52 skipped, 0 failed CI job
CrossBackendBenchmarkTest.java — 1 tests
Cross-backend retrieval benchmark (issue #565).
runBenchmark
Run Benchmark (no description in the source; shown from the name)
FailureModeMatrixTest.java — 1 tests
Failure-mode matrix (issue #565): runs the same edge cases against every live backend and RECORDS what happens (result or exception type) without asserting, so differences between backends show up.
recordFailureModes
Record Failure Modes (no description in the source; shown from the name)
QueryEmbeddingCacheTest.java — 10 tests
No file-level description in the source.
defaultMaxSizeIsOneThousand
Default Max Size Is One Thousand (no description in the source; shown from the name)missOnEmptyCache
Miss On Empty Cache (no description in the source; shown from the name)hitAfterSet
Hit After Set (no description in the source; shown from the name)sameQueryDifferentModelsAreDistinctKeys
Same Query Different Models Are Distinct Keys (no description in the source; shown from the name)evictsLeastRecentlyUsedWhenOverCapacity
Evicts Least Recently Used When Over Capacity (no description in the source; shown from the name)getRefreshesRecencyAndProtectsFromEviction
Get Refreshes Recency And Protects From Eviction (no description in the source; shown from the name)clearResetsStoreAndCounters
Clear Resets Store And Counters (no description in the source; shown from the name)hitRateIsZeroWithNoRequests
Hit Rate Is Zero With No Requests (no description in the source; shown from the name)hitRateComputedCorrectly
Hit Rate Computed Correctly (no description in the source; shown from the name)statsSizeReflectsStoreSize
Stats Size Reflects Store Size (no description in the source; shown from the name)
TextChunkerTest.java — 8 tests
No file-level description in the source.
constructorRejectsOverlapGreaterThanOrEqualToChunkSize
Constructor Rejects Overlap Greater Than Or Equal To Chunk Size (no description in the source; shown from the name)defaultConstructorUsesStandardDefaults
Default Constructor Uses Standard Defaults (no description in the source; shown from the name)emptyTextReturnsNoChunks
Empty Text Returns No Chunks (no description in the source; shown from the name)nullTextReturnsNoChunks
Null Text Returns No Chunks (no description in the source; shown from the name)chunkCountMatchesSlidingWindowBoundaryCondition
Chunk Count Matches Sliding Window Boundary Condition (no description in the source; shown from the name)singleChunkWhenTextShorterThanChunkSize
Single Chunk When Text Shorter Than Chunk Size (no description in the source; shown from the name)tokenCountIsRealAndMarkedExact
Token Count Is Real And Marked Exact (no description in the source; shown from the name)factoryMethodsWork
Factory Methods Work (no description in the source; shown from the name)
CostCalculatorTest.java — 8 tests
No file-level description in the source.
computesKnownProviderModelCost
Computes Known Provider Model Cost (no description in the source; shown from the name)unknownProviderReturnsNullNotZero
Unknown Provider Returns Null Not Zero (no description in the source; shown from the name)unknownModelWithNoWildcardReturnsNull
Unknown Model With No Wildcard Returns Null (no description in the source; shown from the name)ollamaWildcardMatchesAnyModel
Ollama Wildcard Matches Any Model (no description in the source; shown from the name)nullProviderReturnsNull
Null Provider Returns Null (no description in the source; shown from the name)nullUsageReturnsNull
Null Usage Returns Null (no description in the source; shown from the name)emptyUsageMapReturnsNull
Empty Usage Map Returns Null (no description in the source; shown from the name)missingTokenKeysDefaultToZero
Missing Token Keys Default To Zero (no description in the source; shown from the name)
CostTrackerTest.java — 8 tests
No file-level description in the source.
recordReturnsAndAccumulatesCost
Record Returns And Accumulates Cost (no description in the source; shown from the name)unrecordableCallDoesNotAffectCumulative
Unrecordable Call Does Not Affect Cumulative (no description in the source; shown from the name)isOverBudgetFalseWhenNoBudgetSet
Is Over Budget False When No Budget Set (no description in the source; shown from the name)isOverBudgetTrueWhenCumulativeMeetsOrExceedsBudget
Is Over Budget True When Cumulative Meets Or Exceeds Budget (no description in the source; shown from the name)isOverBudgetFalseWhenBelowBudget
Is Over Budget False When Below Budget (no description in the source; shown from the name)overrideTableAddsNewModelWithoutRemovingSeedModels
Override Table Adds New Model Without Removing Seed Models (no description in the source; shown from the name)overrideTableCanReplaceExistingRate
Override Table Can Replace Existing Rate (no description in the source; shown from the name)seedPricingTableUnaffectedByTrackerInstances
Seed Pricing Table Unaffected By Tracker Instances (no description in the source; shown from the name)
ConnectionPoolTest.java — 6 tests
Real integration test against a live Postgres instance - NOT mocked.
parseDatabaseUrlExtractsCredentialsHostPortAndDatabase
Parse Database Url Extracts Credentials Host Port And Database (no description in the source; shown from the name)parseDatabaseUrlRejectsMissingCredentials
Parse Database Url Rejects Missing Credentials (no description in the source; shown from the name)getConnectionActuallyConnectsToRealPostgres
Get Connection Actually Connects To Real Postgres (no description in the source; shown from the name)connectionAutoCommitIsOffMatchingPythonSource
Connection Auto Commit Is Off Matching Python Source (no description in the source; shown from the name)fullRoundTripCreateInsertSelectDropOnRealDatabase
Full Round Trip Create Insert Select Drop On Real Database (no description in the source; shown from the name)connectionIsReturnedToPoolNotActuallyClosedByTryWithResources
Connection Is Returned To Pool Not Actually Closed By Try With Resources (no description in the source; shown from the name)
EmbeddingConfigTest.java — 14 tests
No file-level description in the source.
geminiResolvesFromExplicitArgsOverEnv
Gemini Resolves From Explicit Args Over Env (no description in the source; shown from the name)geminiFallsBackToEnvironmentVariables
Gemini Falls Back To Environment Variables (no description in the source; shown from the name)openAiCompatibleProviderGetsDefaultBaseUrl
Open Ai Compatible Provider Gets Default Base Url (no description in the source; shown from the name)openAiCompatibleProviderPerProviderEnvVarsOverrideGenericOnes
Open Ai Compatible Provider Per Provider Env Vars Override Generic Ones (no description in the source; shown from the name)ollamaDoesNotRequireApiKey
Ollama Does Not Require Api Key (no description in the source; shown from the name)nonOllamaProviderWithoutApiKeyThrows
Non Ollama Provider Without Api Key Throws (no description in the source; shown from the name)missingModelThrows
Missing Model Throws (no description in the source; shown from the name)missingDimensionsThrows
Missing Dimensions Throws (no description in the source; shown from the name)customProviderRequiresBaseUrl
Custom Provider Requires Base Url (no description in the source; shown from the name)customProviderWithExplicitBaseUrlWorks
Custom Provider With Explicit Base Url Works (no description in the source; shown from the name)cohereAndVoyageAreCustomShapeProvidersWithNoBaseUrlAssigned
Cohere And Voyage Are Custom Shape Providers With No Base Url Assigned (no description in the source; shown from the name)unknownProviderThrowsWithSupportedListInMessage
Unknown Provider Throws With Supported List In Message (no description in the source; shown from the name)providerNameIsCaseInsensitive
Provider Name Is Case Insensitive (no description in the source; shown from the name)publicConstructorUsesRealSystemGetenvWithoutThrowingOnConstruction
Public Constructor Uses Real System Getenv Without Throwing On Construction (no description in the source; shown from the name)
EmbeddingServiceTest.java — 11 tests
No file-level description in the source.
embedTextLiveAgainstRealOllama
Embed Text Live Against Real Ollama (no description in the source; shown from the name)embedBatchLiveAgainstRealOllama
Embed Batch Live Against Real Ollama (no description in the source; shown from the name)embedTextReturnsNullOnBlankInputWithoutCallingNetwork
Embed Text Returns Null On Blank Input Without Calling Network (no description in the source; shown from the name)embedBatchReturnsEmptyListForEmptyInput
Embed Batch Returns Empty List For Empty Input (no description in the source; shown from the name)embedTextReturnsNullOnUnreachableServerRatherThanThrowing
Embed Text Returns Null On Unreachable Server Rather Than Throwing (no description in the source; shown from the name)embedTextParsesGeminiResponseShapeCorrectly
Embed Text Parses Gemini Response Shape Correctly (no description in the source; shown from the name)embedBatchParsesGeminiBatchResponseShapeCorrectly
Embed Batch Parses Gemini Batch Response Shape Correctly (no description in the source; shown from the name)embedTextParsesOpenAiCompatibleResponseShapeCorrectly
Embed Text Parses Open Ai Compatible Response Shape Correctly (no description in the source; shown from the name)embedTextParsesCohereResponseShapeCorrectly
Embed Text Parses Cohere Response Shape Correctly (no description in the source; shown from the name)embedTextParsesVoyageResponseShapeCorrectly
Embed Text Parses Voyage Response Shape Correctly (no description in the source; shown from the name)embedTextReturnsNullOn4xxResponseFromProvider
Embed Text Returns Null On4xx Response From Provider (no description in the source; shown from the name)
EvalScorerTest.java — 10 tests
No file-level description in the source.
retrievalHitTrueWhenExpectedDocumentInSources
Retrieval Hit True When Expected Document In Sources (no description in the source; shown from the name)retrievalHitFalseWhenExpectedDocumentMissing
Retrieval Hit False When Expected Document Missing (no description in the source; shown from the name)retrievalHitNullWhenNoExpectedDocument
Retrieval Hit Null When No Expected Document (no description in the source; shown from the name)keywordCoveragePartialMatch
Keyword Coverage Partial Match (no description in the source; shown from the name)keywordCoverageNullWhenNoExpectedKeywords
Keyword Coverage Null When No Expected Keywords (no description in the source; shown from the name)groundednessComputedFromCitedText
Groundedness Computed From Cited Text (no description in the source; shown from the name)groundednessNullWhenNoKeywordHits
Groundedness Null When No Keyword Hits (no description in the source; shown from the name)aggregateComputesRatesAcrossCases
Aggregate Computes Rates Across Cases (no description in the source; shown from the name)aggregateRatesNullWhenNoCaseContributesThatMetric
Aggregate Rates Null When No Case Contributes That Metric (no description in the source; shown from the name)aggregateThrowsOnEmptyResults
Aggregate Throws On Empty Results (no description in the source; shown from the name)
GenerationServiceDescribeImageTest.java — 5 tests
No file-level description in the source.
describeImageUsesGeminiFromFallbackChainWhenPrimaryIsNotGemini
Describe Image Uses Gemini From Fallback Chain When Primary Is Not Gemini (no description in the source; shown from the name)describeImageThrowsWhenNoGeminiConfigInChain
Describe Image Throws When No Gemini Config In Chain (no description in the source; shown from the name)describeImageUsesDefaultPromptWhenNoneProvided
Describe Image Uses Default Prompt When None Provided (no description in the source; shown from the name)describeImageUsesProvidedPromptWhenGiven
Describe Image Uses Provided Prompt When Given (no description in the source; shown from the name)describeImageThrowsWhenModelReturnsEmptyText
Describe Image Throws When Model Returns Empty Text (no description in the source; shown from the name)
GenerationServiceGenerateAnswerTest.java — 9 tests
No file-level description in the source.
generateAnswerLiveAgainstRealOllama
Generate Answer Live Against Real Ollama (no description in the source; shown from the name)generateAnswerParsesGeminiResponseShapeCorrectly
Generate Answer Parses Gemini Response Shape Correctly (no description in the source; shown from the name)generateAnswerParsesAnthropicResponseShapeCorrectly
Generate Answer Parses Anthropic Response Shape Correctly (no description in the source; shown from the name)generateAnswerAnthropicStructuredOutputUsesToolUseBlock
Generate Answer Anthropic Structured Output Uses Tool Use Block (no description in the source; shown from the name)generateAnswerOpenAiCompatibleStrictJsonSchemaSucceeds
Generate Answer Open Ai Compatible Strict Json Schema Succeeds (no description in the source; shown from the name)generateAnswerOpenAiCompatibleFallsBackToJsonObjectOnStrictModeFailure
Generate Answer Open Ai Compatible Falls Back To Json Object On Strict Mode Failure (no description in the source; shown from the name)generateAnswerFallsBackToSecondProviderWhenFirstFails
Generate Answer Falls Back To Second Provider When First Fails (no description in the source; shown from the name)generateAnswerReturnsFailureMessageWhenAllProvidersFail
Generate Answer Returns Failure Message When All Providers Fail (no description in the source; shown from the name)generateAnswerFailureWithResponseFormatSetsStructuredValidFalse
Generate Answer Failure With Response Format Sets Structured Valid False (no description in the source; shown from the name)
GenerationServiceStreamTest.java — 7 tests
No file-level description in the source.
streamOpenAiCompatibleParsesSseDeltasCorrectly
Stream Open Ai Compatible Parses Sse Deltas Correctly (no description in the source; shown from the name)streamGeminiParsesSseCandidatesCorrectly
Stream Gemini Parses Sse Candidates Correctly (no description in the source; shown from the name)streamAnthropicOnlyEmitsContentBlockDeltaTextEvents
Stream Anthropic Only Emits Content Block Delta Text Events (no description in the source; shown from the name)streamFallsBackToSecondProviderWhenFirstFailsBeforeAnyPieceYielded
Stream Falls Back To Second Provider When First Fails Before Any Piece Yielded (no description in the source; shown from the name)streamEmitsErrorMarkerAndStopsWhenProviderFailsAfterPartialYield
Stream Emits Error Marker And Stops When Provider Fails After Partial Yield (no description in the source; shown from the name)streamReturnsFailureMessageWhenAllProvidersFail
Stream Returns Failure Message When All Providers Fail (no description in the source; shown from the name)streamLiveAgainstRealOllama
Stream Live Against Real Ollama (no description in the source; shown from the name)
GenerationServiceTest.java — 18 tests
No file-level description in the source.
chainReturnsOnlyOverrideWhenGiven
Chain Returns Only Override When Given (no description in the source; shown from the name)chainReturnsPrimaryThenFallbacksWhenNoOverride
Chain Returns Primary Then Fallbacks When No Override (no description in the source; shown from the name)chainExcludesFallbackMatchingPrimaryProvider
Chain Excludes Fallback Matching Primary Provider (no description in the source; shown from the name)chainKeepsDuplicateFallbacksAmongThemselves
Chain Keeps Duplicate Fallbacks Among Themselves (no description in the source; shown from the name)trimChunksToBudgetKeepsAllWhenUnderBudget
Trim Chunks To Budget Keeps All When Under Budget (no description in the source; shown from the name)trimChunksToBudgetAlwaysKeepsAtLeastFirstChunk
Trim Chunks To Budget Always Keeps At Least First Chunk (no description in the source; shown from the name)trimChunksToBudgetStopsOnceOverBudgetAfterFirst
Trim Chunks To Budget Stops Once Over Budget After First (no description in the source; shown from the name)trimChunksToBudgetDisabledWhenBudgetIsZeroOrNegative
Trim Chunks To Budget Disabled When Budget Is Zero Or Negative (no description in the source; shown from the name)trimChunksToBudgetHandlesEmptyList
Trim Chunks To Budget Handles Empty List (no description in the source; shown from the name)buildContextReturnsFallbackMessageForEmptyChunks
Build Context Returns Fallback Message For Empty Chunks (no description in the source; shown from the name)buildContextFormatsSourceLabelsWithDocNameAndChunkIndex
Build Context Formats Source Labels With Doc Name And Chunk Index (no description in the source; shown from the name)buildCitationsNumbersSequentiallyFromOne
Build Citations Numbers Sequentially From One (no description in the source; shown from the name)buildCitationsTruncatesLongTextTo150CharsWithEllipsis
Build Citations Truncates Long Text To150 Chars With Ellipsis (no description in the source; shown from the name)buildCitationsDoesNotTruncateShortText
Build Citations Does Not Truncate Short Text (no description in the source; shown from the name)buildPromptUsesDefaultSystemPromptWhenNoOverride
Build Prompt Uses Default System Prompt When No Override (no description in the source; shown from the name)buildPromptUsesOverrideSystemPromptWhenGiven
Build Prompt Uses Override System Prompt When Given (no description in the source; shown from the name)buildPromptIncludesHistoryPrefixBeforeContext
Build Prompt Includes History Prefix Before Context (no description in the source; shown from the name)buildPromptIncludesNoRelevantContextMessageWhenChunksEmpty
Build Prompt Includes No Relevant Context Message When Chunks Empty (no description in the source; shown from the name)
ProviderConfigTest.java — 14 tests
No file-level description in the source.
geminiResolvesFromExplicitArgsOverEnv
Gemini Resolves From Explicit Args Over Env (no description in the source; shown from the name)geminiFallsBackToEnvironmentVariables
Gemini Falls Back To Environment Variables (no description in the source; shown from the name)anthropicResolvesFromEnv
Anthropic Resolves From Env (no description in the source; shown from the name)openAiCompatibleProviderGetsDefaultBaseUrl
Open Ai Compatible Provider Gets Default Base Url (no description in the source; shown from the name)ollamaDoesNotRequireApiKey
Ollama Does Not Require Api Key (no description in the source; shown from the name)nonOllamaProviderWithoutApiKeyThrows
Non Ollama Provider Without Api Key Throws (no description in the source; shown from the name)namedProviderMissingModelThrowsDetailedMessage
Named Provider Missing Model Throws Detailed Message (no description in the source; shown from the name)customProviderMissingModelThrowsGenericMessage
Custom Provider Missing Model Throws Generic Message (no description in the source; shown from the name)customProviderRequiresBaseUrl
Custom Provider Requires Base Url (no description in the source; shown from the name)customProviderWithModelAndBaseUrlWorks
Custom Provider With Model And Base Url Works (no description in the source; shown from the name)geminiAndAnthropicDoNotRequireBaseUrl
Gemini And Anthropic Do Not Require Base Url (no description in the source; shown from the name)unknownProviderThrowsWithSupportedListInMessage
Unknown Provider Throws With Supported List In Message (no description in the source; shown from the name)providerNameIsCaseInsensitive
Provider Name Is Case Insensitive (no description in the source; shown from the name)publicConstructorUsesRealSystemGetenvWithoutThrowingOnConstruction
Public Constructor Uses Real System Getenv Without Throwing On Construction (no description in the source; shown from the name)
GuardrailRunnerTest.java — 7 tests
No file-level description in the source.
nullGuardrailsReturnsTextUnchanged
Null Guardrails Returns Text Unchanged (no description in the source; shown from the name)emptyGuardrailsReturnsTextUnchanged
Empty Guardrails Returns Text Unchanged (no description in the source; shown from the name)singleGuardrailTransformsText
Single Guardrail Transforms Text (no description in the source; shown from the name)multipleGuardrailsThreadTextInOrder
Multiple Guardrails Thread Text In Order (no description in the source; shown from the name)guardrailViolationPropagatesNotSwallowed
Guardrail Violation Propagates Not Swallowed (no description in the source; shown from the name)nonGuardrailExceptionAlsoPropagates
Non Guardrail Exception Also Propagates (no description in the source; shown from the name)laterGuardrailNeverRunsAfterEarlierOneThrows
Later Guardrail Never Runs After Earlier One Throws (no description in the source; shown from the name)
OcrExtractorTest.java — 7 tests
Tests that need no Tesseract run everywhere; the live one skips itself when the binary is missing.
garbageBytesAreRejectedLikePythonsCouldNotOpenError
Garbage Bytes Are Rejected Like Pythons Could Not Open Error (no description in the source; shown from the name)emptyBytesAreRejected
Empty Bytes Are Rejected (no description in the source; shown from the name)formatsAreRecognisedFromTheirSignatures
Formats Are Recognised From Their Signatures (no description in the source; shown from the name)pngColourTypeDecidesWhetherTheImageIsFlattened
Png Colour Type Decides Whether The Image Is Flattened (no description in the source; shown from the name)transparentPixelsAreFlattenedOntoWhiteAndOpaqueOnesKept
Transparent Pixels Are Flattened Onto White And Opaque Ones Kept (no description in the source; shown from the name)aMissingTesseractBinaryGivesAClearError
A Missing Tesseract Binary Gives AClear Error (no description in the source; shown from the name)aBlankImageHasNoReadableText
A Blank Image Has No Readable Text (no description in the source; shown from the name)
OcrParityFixturesTest.java — 1 tests
Compares OcrExtractor with the real Python ocr.py on fixture images generated by a Python script (file X, plus X.expected with Python's exact output, or X.error with its message).
matchesRealPythonOutputOnEveryFixture
Matches Real Python Output On Every Fixture (no description in the source; shown from the name)
ConversationMemoryTest.java — 7 tests
Real integration test against the same live throwaway database used by ConnectionPoolTest/SchemaManagerTest (ragleap_java_test) - not mocked.
addMessageAndGetHistoryReturnsMessagesInChronologicalOrder
Add Message And Get History Returns Messages In Chronological Order (no description in the source; shown from the name)getHistoryRespectsExplicitLimitOverridingDefault
Get History Respects Explicit Limit Overriding Default (no description in the source; shown from the name)constructorWithCustomMaxHistoryMessagesAppliesAsDefaultLimit
Constructor With Custom Max History Messages Applies As Default Limit (no description in the source; shown from the name)getHistoryReturnsEmptyListForUnknownSession
Get History Returns Empty List For Unknown Session (no description in the source; shown from the name)clearSessionDeletesMessagesViaCascade
Clear Session Deletes Messages Via Cascade (no description in the source; shown from the name)buildHistoryPromptReturnsEmptyStringWhenNoHistory
Build History Prompt Returns Empty String When No History (no description in the source; shown from the name)buildHistoryPromptFormatsRoleCapitalizedAndJoinsWithNewlines
Build History Prompt Formats Role Capitalized And Joins With Newlines (no description in the source; shown from the name)
ObservabilityHooksTest.java — 7 tests
No file-level description in the source.
nullHandlersListDoesNothing
Null Handlers List Does Nothing (no description in the source; shown from the name)emptyHandlersListDoesNothing
Empty Handlers List Does Nothing (no description in the source; shown from the name)singleHandlerReceivesTheEvent
Single Handler Receives The Event (no description in the source; shown from the name)allHandlersCalledInOrder
All Handlers Called In Order (no description in the source; shown from the name)throwingHandlerIsSwallowedNotPropagated
Throwing Handler Is Swallowed Not Propagated (no description in the source; shown from the name)throwingHandlerDoesNotStopSubsequentHandlers
Throwing Handler Does Not Stop Subsequent Handlers (no description in the source; shown from the name)multipleHandlersEachThrowAreAllSwallowed
Multiple Handlers Each Throw Are All Swallowed (no description in the source; shown from the name)
DocumentParserTest.java — 37 tests
Tests for DocumentParser, mirroring the marker-per-extension approach of Python's test_parsers.py.
txtMarker
Txt Marker (no description in the source; shown from the name)mdMarker
Md Marker (no description in the source; shown from the name)sqlMarker
Sql Marker (no description in the source; shown from the name)csvMarker
Csv Marker (no description in the source; shown from the name)tsvMarker
Tsv Marker (no description in the source; shown from the name)jsonMarker
Json Marker (no description in the source; shown from the name)yamlMarker
Yaml Marker (no description in the source; shown from the name)ymlMarker
Yml Marker (no description in the source; shown from the name)vttMarker
Vtt Marker (no description in the source; shown from the name)srtMarker
Srt Marker (no description in the source; shown from the name)zipMarker
Zip Marker (no description in the source; shown from the name)extensionIsCaseInsensitive
Extension Is Case Insensitive (no description in the source; shown from the name)legacyOfficeFormatsAreRejectedWithConversionHint
Legacy Office Formats Are Rejected With Conversion Hint (no description in the source; shown from the name)unknownExtensionIsRejected
Unknown Extension Is Rejected (no description in the source; shown from the name)filenameWithoutExtensionIsRejected
Filename Without Extension Is Rejected (no description in the source; shown from the name)parquetIsDeliberatelyDeferred
Parquet Is Deliberately Deferred (no description in the source; shown from the name)utf8IsDecodedAsUtf8
Utf8 Is Decoded As Utf8 (no description in the source; shown from the name)invalidUtf8FallsBackToLatin1
Invalid Utf8 Falls Back To Latin1 (no description in the source; shown from the name)csvQuotedFieldWithDelimiterAndEmbeddedNewline
Csv Quoted Field With Delimiter And Embedded Newline (no description in the source; shown from the name)csvDoubledQuoteIsAnEscapedQuote
Csv Doubled Quote Is An Escaped Quote (no description in the source; shown from the name)csvBlankLineIsKeptAsEmptyRow
Csv Blank Line Is Kept As Empty Row (no description in the source; shown from the name)csvHandlesCrlf
Csv Handles Crlf (no description in the source; shown from the name)csvKeepsEmptyTrailingField
Csv Keeps Empty Trailing Field (no description in the source; shown from the name)tsvKeepsQuotesLiteralWhenNotAtFieldStart
Tsv Keeps Quotes Literal When Not At Field Start (no description in the source; shown from the name)jsonIsPrettyPrintedLikePythonIndent2
Json Is Pretty Printed Like Python Indent2 (no description in the source; shown from the name)jsonNonAsciiIsNotEscaped
Json Non Ascii Is Not Escaped (no description in the source; shown from the name)invalidJsonIsRejected
Invalid Json Is Rejected (no description in the source; shown from the name)jsonWithTrailingDataIsRejected
Json With Trailing Data Is Rejected (no description in the source; shown from the name)emptyJsonIsRejected
Empty Json Is Rejected (no description in the source; shown from the name)yamlIsDumpedAsIndentedJson
Yaml Is Dumped As Indented Json (no description in the source; shown from the name)emptyYamlIsNull
Empty Yaml Is Null (no description in the source; shown from the name)vttStripsHeaderTimestampsAndCueNumbers
Vtt Strips Header Timestamps And Cue Numbers (no description in the source; shown from the name)srtStripsTimestampsAndCueNumbers
Srt Strips Timestamps And Cue Numbers (no description in the source; shown from the name)zipLabelsEachFile
Zip Labels Each File (no description in the source; shown from the name)zipSkipsDirectoriesUnsupportedTypesAndNestedZips
Zip Skips Directories Unsupported Types And Nested Zips (no description in the source; shown from the name)zipSkipsFilesThatFailExtractionButKeepsTheRest
Zip Skips Files That Fail Extraction But Keeps The Rest (no description in the source; shown from the name)zipWithNothingExtractableIsRejected
Zip With Nothing Extractable Is Rejected (no description in the source; shown from the name)
EmlExtractorTest.java — 7 tests
Focused checks; the broad behaviour is verified against real Python by PythonParityFixturesTest.
quotedPrintableFollowsBinasciiRules
Quoted Printable Follows Binascii Rules (no description in the source; shown from the name)unpaddedBase64BodyIsDecoded
Unpadded Base64 Body Is Decoded (no description in the source; shown from the name)adjacentEncodedWordsDropTheWhitespaceBetweenThem
Adjacent Encoded Words Drop The Whitespace Between Them (no description in the source; shown from the name)unknownBodyCharsetIsRejectedWithPythonsMessage
Unknown Body Charset Is Rejected With Pythons Message (no description in the source; shown from the name)unterminatedMultipartStripsTheLastPartsTrailingNewline
Unterminated Multipart Strips The Last Parts Trailing Newline (no description in the source; shown from the name)encodedWordWithUnknownCharsetIsDecodedAsAscii
Encoded Word With Unknown Charset Is Decoded As Ascii (no description in the source; shown from the name)dispatchIsCaseInsensitive
Dispatch Is Case Insensitive (no description in the source; shown from the name)
MarkupExtractorTest.java — 15 tests
Expected values were cross-checked against the real BeautifulSoup (html.parser for HTML, lxml-xml for XML), the library Python's parsers.py uses.
scriptAndStyleAreRemoved
Script And Style Are Removed (no description in the source; shown from the name)inlineTagsSplitTextIntoSeparateLines
Inline Tags Split Text Into Separate Lines (no description in the source; shown from the name)commentsAreExcluded
Comments Are Excluded (no description in the source; shown from the name)entitiesAreDecoded
Entities Are Decoded (no description in the source; shown from the name)whitespaceOnlyNodesAreDropped
Whitespace Only Nodes Are Dropped (no description in the source; shown from the name)titleTextIsIncluded
Title Text Is Included (no description in the source; shown from the name)brSplitsText
Br Splits Text (no description in the source; shown from the name)nonBreakingSpaceOnlyNodesAreDropped
Non Breaking Space Only Nodes Are Dropped (no description in the source; shown from the name)unclosedParagraphsStillSplit
Unclosed Paragraphs Still Split (no description in the source; shown from the name)declaredMetaCharsetIsRespected
Declared Meta Charset Is Respected (no description in the source; shown from the name)xmlTextNodesAreJoinedWithNewlines
Xml Text Nodes Are Joined With Newlines (no description in the source; shown from the name)xmlCdataIsIncludedAndCommentsAreNot
Xml Cdata Is Included And Comments Are Not (no description in the source; shown from the name)xmlDeclarationAndNamespacesAreHandled
Xml Declaration And Namespaces Are Handled (no description in the source; shown from the name)xmlAttributesAreNotIncluded
Xml Attributes Are Not Included (no description in the source; shown from the name)documentParserDispatchesAllFiveMarkupExtensions
Document Parser Dispatches All Five Markup Extensions (no description in the source; shown from the name)
OfficeFormatsTest.java — 14 tests
Hand-built minimal packages for the ZIP+XML formats.
docxMarker
Docx Marker (no description in the source; shown from the name)docxReadsOnlyBodyLevelParagraphs
Docx Reads Only Body Level Paragraphs (no description in the source; shown from the name)docxBreaksTabsAndHyperlinks
Docx Breaks Tabs And Hyperlinks (no description in the source; shown from the name)docxPageBreakAddsNoText
Docx Page Break Adds No Text (no description in the source; shown from the name)docxWithNoTextIsRejectedWithPythonsMessage
Docx With No Text Is Rejected With Pythons Message (no description in the source; shown from the name)notAZipIsRejectedForEveryZipBasedFormat
Not AZip Is Rejected For Every Zip Based Format (no description in the source; shown from the name)pptxSlideNumbersCountEmptySlidesAndNotesAreAppended
Pptx Slide Numbers Count Empty Slides And Notes Are Appended (no description in the source; shown from the name)pptxWithNoSlidesIsEmptyNotAnError
Pptx With No Slides Is Empty Not An Error (no description in the source; shown from the name)xlsxValuesSheetsSharedStringsAndDates
Xlsx Values Sheets Shared Strings And Dates (no description in the source; shown from the name)odtTakesEveryTextPKeepsEmptyOnesAndSkipsHeadings
Odt Takes Every Text PKeeps Empty Ones And Skips Headings (no description in the source; shown from the name)odsJoinsCellsWithTabsAndDropsBlankRows
Ods Joins Cells With Tabs And Drops Blank Rows (no description in the source; shown from the name)epubUsesManifestOrderBodyContentOnlyAndDecodesHrefs
Epub Uses Manifest Order Body Content Only And Decodes Hrefs (no description in the source; shown from the name)pyFloatMatchesPythonRepr
Py Float Matches Python Repr (no description in the source; shown from the name)excelSerialsFormatLikePythonDatetimes
Excel Serials Format Like Python Datetimes (no description in the source; shown from the name)
PdfExtractorTest.java — 6 tests
Tests build real minimal PDFs by hand, like Python's test_parsers.py does.
singlePageMarker
Single Page Marker (no description in the source; shown from the name)pagesAreJoinedWithABlankLine
Pages Are Joined With ABlank Line (no description in the source; shown from the name)blankPagesAreSkipped
Blank Pages Are Skipped (no description in the source; shown from the name)pdfWithNoTextIsRejected
Pdf With No Text Is Rejected (no description in the source; shown from the name)garbageBytesAreRejectedAsUnreadable
Garbage Bytes Are Rejected As Unreadable (no description in the source; shown from the name)documentParserDispatchesPdfCaseInsensitively
Document Parser Dispatches Pdf Case Insensitively (no description in the source; shown from the name)
PyTextTest.java — 4 tests
Regression tests: Python's strip() treats non-breaking spaces as whitespace.
stripRemovesNonBreakingAndUnicodeSpaces
Strip Removes Non Breaking And Unicode Spaces (no description in the source; shown from the name)isBlankIsTrueForNonBreakingSpaceOnly
Is Blank Is True For Non Breaking Space Only (no description in the source; shown from the name)subtitleLinesContainingOnlyNonBreakingSpaceAreDropped
Subtitle Lines Containing Only Non Breaking Space Are Dropped (no description in the source; shown from the name)zipSkipsFilesWhoseTextIsOnlyNonBreakingSpaces
Zip Skips Files Whose Text Is Only Non Breaking Spaces (no description in the source; shown from the name)
PythonParityFixturesTest.java — 1 tests
Compares DocumentParser with the real Python parsers.py on fixture files that a Python script generated (file X, plus X.expected holding Python's exact output, or X.error holding its error message).
matchesRealPythonOutputOnEveryFixture
Matches Real Python Output On Every Fixture (no description in the source; shown from the name)
RtfConverterTest.java — 17 tests
Expected values were cross-checked against the real striprtf library (the one Python's parsers.py uses) on the same inputs.
plainText
Plain Text (no description in the source; shown from the name)parBecomesNewline
Par Becomes Newline (no description in the source; shown from the name)destinationGroupsAreSkipped
Destination Groups Are Skipped (no description in the source; shown from the name)hexEscapeUsesDeclaredCodePage
Hex Escape Uses Declared Code Page (no description in the source; shown from the name)multiByteHexEscapesAreDecodedTogether
Multi Byte Hex Escapes Are Decoded Together (no description in the source; shown from the name)unicodeEscapeSkipsTheFallbackCharacter
Unicode Escape Skips The Fallback Character (no description in the source; shown from the name)unicodeEscapeWithUcZeroSkipsNothing
Unicode Escape With Uc Zero Skips Nothing (no description in the source; shown from the name)negativeUnicodeEscapesFormASurrogatePair
Negative Unicode Escapes Form ASurrogate Pair (no description in the source; shown from the name)tableCellsAndRows
Table Cells And Rows (no description in the source; shown from the name)specialCharacters
Special Characters (no description in the source; shown from the name)hyperlinkDestinationIsAppendedAfterTheLinkText
Hyperlink Destination Is Appended After The Link Text (no description in the source; shown from the name)rawNewlinesInTheSourceAreIgnored
Raw Newlines In The Source Are Ignored (no description in the source; shown from the name)hexEscapePendingAtTheVeryEndIsDroppedLikeStriprtf
Hex Escape Pending At The Very End Is Dropped Like Striprtf (no description in the source; shown from the name)undecodableByteIsRejected
Undecodable Byte Is Rejected (no description in the source; shown from the name)ucWithoutANumberIsRejected
Uc Without ANumber Is Rejected (no description in the source; shown from the name)unbalancedClosingBraceDoesNotCrash
Unbalanced Closing Brace Does Not Crash (no description in the source; shown from the name)documentParserDispatchesRtf
Document Parser Dispatches Rtf (no description in the source; shown from the name)
XlsExtractorTest.java — 8 tests
Builds real .xls files with POI.
marker
Marker (no description in the source; shown from the name)numbersPrintAsPythonFloatsAndBooleansAsOneOrZero
Numbers Print As Python Floats And Booleans As One Or Zero (no description in the source; shown from the name)emptyCellsAreSkippedWithoutLeavingTabs
Empty Cells Are Skipped Without Leaving Tabs (no description in the source; shown from the name)emptyStringAndWhitespaceOnlyRowsAreDropped
Empty String And Whitespace Only Rows Are Dropped (no description in the source; shown from the name)everySheetGetsAHeaderEvenWhenEmpty
Every Sheet Gets AHeader Even When Empty (no description in the source; shown from the name)errorCellsPrintTheirNumericCode
Error Cells Print Their Numeric Code (no description in the source; shown from the name)formulaCellsPrintTheirCachedValue
Formula Cells Print Their Cached Value (no description in the source; shown from the name)garbageIsRejected
Garbage Is Rejected (no description in the source; shown from the name)
ZipLimitsTest.java — 11 tests
Mirrors Python's test_parser_limits.py; the exact messages are also checked against real Python fixtures.
defaultsMatchPython
Defaults Match Python (no description in the source; shown from the name)archiveWithinLimitsStillExtracts
Archive Within Limits Still Extracts (no description in the source; shown from the name)tooManyMembersIsRejectedWithPythonsMessage
Too Many Members Is Rejected With Pythons Message (no description in the source; shown from the name)exactlyAtTheMemberLimitPassesAndOneMoreFails
Exactly At The Member Limit Passes And One More Fails (no description in the source; shown from the name)directoryEntriesCountAsMembers
Directory Entries Count As Members (no description in the source; shown from the name)declaredSizeOverTheLimitIsRejectedWithPythonsMessage
Declared Size Over The Limit Is Rejected With Pythons Message (no description in the source; shown from the name)containerFormatsAreCheckedToo
Container Formats Are Checked Too (no description in the source; shown from the name)limitErrorsAreIllegalArgumentExceptionsLikePythonsValueError
Limit Errors Are Illegal Argument Exceptions Like Pythons Value Error (no description in the source; shown from the name)anUnreadableArchiveIsLeftToTheFormatParser
An Unreadable Archive Is Left To The Format Parser (no description in the source; shown from the name)forgedSmallSizesStillHitTheRunningBudget
Forged Small Sizes Still Hit The Running Budget (no description in the source; shown from the name)anInnerArchiveOverTheLimitFailsTheWholeZip
An Inner Archive Over The Limit Fails The Whole Zip (no description in the source; shown from the name)
QueryRewriterTest.java — 11 tests
No file-level description in the source.
contextualRewriteReturnsOriginalQueryUnchangedWhenNoHistory
Contextual Rewrite Returns Original Query Unchanged When No History (no description in the source; shown from the name)contextualRewriteUsesStubbedRewrittenQuestion
Contextual Rewrite Uses Stubbed Rewritten Question (no description in the source; shown from the name)contextualRewriteUsesProviderFailureMessageAsRewrittenQueryWhenAllProvidersFail
Contextual Rewrite Uses Provider Failure Message As Rewritten Query When All Providers Fail (no description in the source; shown from the name)hydeDocumentUsesStubbedHypotheticalPassage
Hyde Document Uses Stubbed Hypothetical Passage (no description in the source; shown from the name)hydeDocumentLiveAgainstRealOllama
Hyde Document Live Against Real Ollama (no description in the source; shown from the name)multiQueryVariantsStripsBulletsAndDedupesOriginalCaseInsensitively
Multi Query Variants Strips Bullets And Dedupes Original Case Insensitively (no description in the source; shown from the name)multiQueryVariantsTruncatesToRequestedN
Multi Query Variants Truncates To Requested N (no description in the source; shown from the name)multiQueryVariantsIncludesProviderFailureMessageAsAVariantWhenAllProvidersFail
Multi Query Variants Includes Provider Failure Message As AVariant When All Providers Fail (no description in the source; shown from the name)reciprocalRankFusionMergesAndScoresByRankAcrossLists
Reciprocal Rank Fusion Merges And Scores By Rank Across Lists (no description in the source; shown from the name)reciprocalRankFusionDedupesUsingDocumentIdAndChunkIndexWhenChunkIdMissing
Reciprocal Rank Fusion Dedupes Using Document Id And Chunk Index When Chunk Id Missing (no description in the source; shown from the name)reciprocalRankFusionRespectsCustomK
Reciprocal Rank Fusion Respects Custom K (no description in the source; shown from the name)
VectorRetrievalServiceTest.java — 11 tests
Real integration test against the live ragleap_java_test database - NOT mocked.
searchSimilarChunksReturnsEmptyForEmptyEmbedding
Search Similar Chunks Returns Empty For Empty Embedding (no description in the source; shown from the name)searchSimilarChunksReturnsEmptyOnDimensionMismatch
Search Similar Chunks Returns Empty On Dimension Mismatch (no description in the source; shown from the name)searchSimilarChunksFindsExactMatchFirst
Search Similar Chunks Finds Exact Match First (no description in the source; shown from the name)searchSimilarChunksFiltersByDocumentId
Search Similar Chunks Filters By Document Id (no description in the source; shown from the name)searchSimilarChunksFiltersByMetadata
Search Similar Chunks Filters By Metadata (no description in the source; shown from the name)searchSparseChunksReturnsEmptyForBlankQuery
Search Sparse Chunks Returns Empty For Blank Query (no description in the source; shown from the name)searchSparseChunksFindsKeywordMatch
Search Sparse Chunks Finds Keyword Match (no description in the source; shown from the name)searchSparseChunksFiltersByDocumentId
Search Sparse Chunks Filters By Document Id (no description in the source; shown from the name)searchHybridChunksCombinesDenseAndSparseWithRrf
Search Hybrid Chunks Combines Dense And Sparse With Rrf (no description in the source; shown from the name)searchHybridChunksRespectsTopK
Search Hybrid Chunks Respects Top K (no description in the source; shown from the name)searchHybridChunksFiltersByDocumentId
Search Hybrid Chunks Filters By Document Id (no description in the source; shown from the name)
ContentSanitizerTest.java — 14 tests
No file-level description in the source.
nullAndEmptyTextPassThroughSanitize
Null And Empty Text Pass Through Sanitize (no description in the source; shown from the name)normalTextIsUnaffected
Normal Text Is Unaffected (no description in the source; shown from the name)newlinesAndTabsArePreserved
Newlines And Tabs Are Preserved (no description in the source; shown from the name)nullBytesAreStripped
Null Bytes Are Stripped (no description in the source; shown from the name)otherControlCharactersAreStripped
Other Control Characters Are Stripped (no description in the source; shown from the name)zeroWidthCharactersAreStripped
Zero Width Characters Are Stripped (no description in the source; shown from the name)detectsCommonInjectionPhrases
Detects Common Injection Phrases (no description in the source; shown from the name)detectionIsCaseInsensitive
Detection Is Case Insensitive (no description in the source; shown from the name)ordinaryTextHasNoMatches
Ordinary Text Has No Matches (no description in the source; shown from the name)nullAndEmptyTextReturnNoMatches
Null And Empty Text Return No Matches (no description in the source; shown from the name)checkLengthWithinDefaultLimit
Check Length Within Default Limit (no description in the source; shown from the name)checkLengthExceedsDefaultLimit
Check Length Exceeds Default Limit (no description in the source; shown from the name)checkLengthExactBoundaryIsAllowed
Check Length Exact Boundary Is Allowed (no description in the source; shown from the name)checkLengthCountsCodePointsNotUtf16Units
Check Length Counts Code Points Not Utf16 Units (no description in the source; shown from the name)
SchemaManagerTest.java — 5 tests
Real integration test against the same live throwaway database used by ConnectionPoolTest (ragleap_java_test) - not mocked.
getCoreSchemaSqlInterpolatesDimensionsIntoBothVectorAndHalfvecCasts
Get Core Schema Sql Interpolates Dimensions Into Both Vector And Halfvec Casts (no description in the source; shown from the name)getSchemaSqlCombinesCoreAndMemory
Get Schema Sql Combines Core And Memory (no description in the source; shown from the name)initSchemaActuallyCreatesRealTablesOnRealPostgres
Init Schema Actually Creates Real Tables On Real Postgres (no description in the source; shown from the name)initSchemaIsIdempotentSafeToCallTwice
Init Schema Is Idempotent Safe To Call Twice (no description in the source; shown from the name)hnswIndexIsActuallyCreatedOnRealPostgres
Hnsw Index Is Actually Created On Real Postgres (no description in the source; shown from the name)
StructuredOutputValidatorTest.java — 9 tests
No file-level description in the source.
validObjectPassesSchemaValidation
Valid Object Passes Schema Validation (no description in the source; shown from the name)objectMissingRequiredFieldFailsValidation
Object Missing Required Field Fails Validation (no description in the source; shown from the name)malformedJsonReturnsNullParsedAndInvalid
Malformed Json Returns Null Parsed And Invalid (no description in the source; shown from the name)nestedStructureIsGenuinelyValidatedNotJustTopLevelType
Nested Structure Is Genuinely Validated Not Just Top Level Type (no description in the source; shown from the name)invalidSchemaItselfHandledGracefullyNotThrown
Invalid Schema Itself Handled Gracefully Not Thrown (no description in the source; shown from the name)parseAndValidateObjectAcceptsAlreadyParsedNode
Parse And Validate Object Accepts Already Parsed Node (no description in the source; shown from the name)basicTypeCheckOnlyMatchesObjectType
Basic Type Check Only Matches Object Type (no description in the source; shown from the name)basicTypeCheckOnlyMatchesArrayType
Basic Type Check Only Matches Array Type (no description in the source; shown from the name)basicTypeCheckOnlyDoesNotCatchNestedViolations
Basic Type Check Only Does Not Catch Nested Violations (no description in the source; shown from the name)
FaissBackendTest.java — 12 tests
Real tests for FaissBackend - genuine in-memory index + real SQLite sidecar, no mocking of the backend itself.
insertAndSearchRoundtrip
Insert And Search Roundtrip (no description in the source; shown from the name)denseSearchFindsCorrectDocument
Dense Search Finds Correct Document (no description in the source; shown from the name)doesNotSupportSparse
Does Not Support Sparse (no description in the source; shown from the name)hybridModeGracefullyDegradesToDense
Hybrid Mode Gracefully Degrades To Dense (no description in the source; shown from the name)listDocumentsReturnsAllInserted
List Documents Returns All Inserted (no description in the source; shown from the name)listDocumentsPagination
List Documents Pagination (no description in the source; shown from the name)deleteDocumentRemovesItAndItsVector
Delete Document Removes It And Its Vector (no description in the source; shown from the name)deleteUnknownDocumentReturnsFalse
Delete Unknown Document Returns False (no description in the source; shown from the name)metadataFilterPostFiltersCorrectly
Metadata Filter Post Filters Correctly (no description in the source; shown from the name)dimensionMismatchGuardReturnsEmpty
Dimension Mismatch Guard Returns Empty (no description in the source; shown from the name)getDocumentFilenameReturnsFilenameOrEmpty
Get Document Filename Returns Filename Or Empty (no description in the source; shown from the name)persistenceAcrossBackendInstances
Persistence Across Backend Instances (no description in the source; shown from the name)
FaissDimensionValidationTest.java — 1 tests
A wrong-length embedding must be rejected before anything is stored (found by the failure-mode matrix, issue 565).
wrongDimensionInsertIsRejectedAndTheChunkCanBeRetried
Wrong Dimension Insert Is Rejected And The Chunk Can Be Retried (no description in the source; shown from the name)
FaissScoreScaleTest.java — 1 tests
Regression test for the FAISS score scale (found by the cross-backend benchmark, issue 565): scores sit on the same [0, 1] scale as pgvector, Qdrant and Weaviate, where an identical vector scores 1.0, an orthogonal one 0.5 and an opposite one 0.0.
scoresAreOnTheZeroToOneScaleForIdenticalOrthogonalAndOppositeVectors
Scores Are On The Zero To One Scale For Identical Orthogonal And Opposite Vectors (no description in the source; shown from the name)
LiveDimensionValidationTest.java — 2 tests
A wrong-length embedding must be rejected before the local sidecar row or the server is touched, so the same chunk can be retried (found by the failure-mode matrix, issue 565).
qdrantRejectsAWrongDimensionBeforeWritingAndAllowsARetry
Qdrant Rejects AWrong Dimension Before Writing And Allows ARetry (no description in the source; shown from the name)weaviateRejectsAWrongDimensionBeforeWritingAndAllowsARetry
Weaviate Rejects AWrong Dimension Before Writing And Allows ARetry (no description in the source; shown from the name)
LiveOrphanRowTest.java — 2 tests
When the server rejects a chunk write, the local row must not be left behind, so the same chunk can be retried (found by the failure-mode matrix, issue 565).
qdrantRemovesTheLocalRowWhenTheServerWriteFailsSoTheChunkCanBeRetried
Qdrant Removes The Local Row When The Server Write Fails So The Chunk Can Be Retried (no description in the source; shown from the name)weaviateRemovesTheLocalRowWhenTheServerWriteFailsSoTheChunkCanBeRetried
Weaviate Removes The Local Row When The Server Write Fails So The Chunk Can Be Retried (no description in the source; shown from the name)
MilvusBackendTest.java — 18 tests
Tests for MilvusBackend - NOT live-verified against a real Milvus/Zilliz Cloud instance, same honest caveat as the Python MilvusBackend and this class's own javadoc.
requiresPersistDirectory
Requires Persist Directory (no description in the source; shown from the name)requiresUri
Requires Uri (no description in the source; shown from the name)vectorKeyConstruction
Vector Key Construction (no description in the source; shown from the name)buildFilterExprSingleCondition
Build Filter Expr Single Condition (no description in the source; shown from the name)buildFilterExprMultipleConditionsAnded
Build Filter Expr Multiple Conditions Anded (no description in the source; shown from the name)buildFilterExprNumericValueNotQuoted
Build Filter Expr Numeric Value Not Quoted (no description in the source; shown from the name)buildFilterExprEmptyWhenNoFilter
Build Filter Expr Empty When No Filter (no description in the source; shown from the name)initSchemaChecksHasThenCreatesWhenMissing
Init Schema Checks Has Then Creates When Missing (no description in the source; shown from the name)initSchemaSkipsCreateWhenCollectionAlreadyExists
Init Schema Skips Create When Collection Already Exists (no description in the source; shown from the name)insertChunkSendsCorrectRequestBody
Insert Chunk Sends Correct Request Body (no description in the source; shown from the name)searchDenseSkipsOrphanedHits
Search Dense Skips Orphaned Hits (no description in the source; shown from the name)searchDenseNormalizesCosineSimilarityToUnitRange
Search Dense Normalizes Cosine Similarity To Unit Range (no description in the source; shown from the name)deleteDocumentSendsFilterWithVectorKeys
Delete Document Sends Filter With Vector Keys (no description in the source; shown from the name)deleteUnknownDocumentReturnsFalse
Delete Unknown Document Returns False (no description in the source; shown from the name)supportsSparseIsFalse
Supports Sparse Is False (no description in the source; shown from the name)dimensionMismatchGuardReturnsEmpty
Dimension Mismatch Guard Returns Empty (no description in the source; shown from the name)getDocumentFilenameReturnsFilenameOrEmpty
Get Document Filename Returns Filename Or Empty (no description in the source; shown from the name)listDocumentsAndPagination
List Documents And Pagination (no description in the source; shown from the name)
PgVectorBackendTest.java — 16 tests
Real integration test against the live ragleap_java_test database - NOT mocked.
insertAndRetrieveDocumentFilename
Insert And Retrieve Document Filename (no description in the source; shown from the name)getDocumentFilenameEmptyForNonexistentDocument
Get Document Filename Empty For Nonexistent Document (no description in the source; shown from the name)insertChunkAndSearchDenseFindsExactMatchFirst
Insert Chunk And Search Dense Finds Exact Match First (no description in the source; shown from the name)searchDenseRespectsTopK
Search Dense Respects Top K (no description in the source; shown from the name)searchDenseWithMetadataFilterOnlyReturnsMatchingChunks
Search Dense With Metadata Filter Only Returns Matching Chunks (no description in the source; shown from the name)searchDenseReturnsEmptyForEmptyEmbedding
Search Dense Returns Empty For Empty Embedding (no description in the source; shown from the name)listDocumentsReturnsMostRecentFirstWithChunkCounts
List Documents Returns Most Recent First With Chunk Counts (no description in the source; shown from the name)deleteDocumentReturnsTrueAndCascadesChunks
Delete Document Returns True And Cascades Chunks (no description in the source; shown from the name)deleteDocumentReturnsFalseForNonexistentDocument
Delete Document Returns False For Nonexistent Document (no description in the source; shown from the name)supportsSparseNowReturnsTrue
Supports Sparse Now Returns True (no description in the source; shown from the name)searchSparseFindsMatchingChunkByKeyword
Search Sparse Finds Matching Chunk By Keyword (no description in the source; shown from the name)searchSparseReturnsEmptyForBlankQuery
Search Sparse Returns Empty For Blank Query (no description in the source; shown from the name)searchSparseWithMetadataFilterOnlyReturnsMatchingChunks
Search Sparse With Metadata Filter Only Returns Matching Chunks (no description in the source; shown from the name)searchHybridCombinesDenseAndSparseWithRrfFusion
Search Hybrid Combines Dense And Sparse With Rrf Fusion (no description in the source; shown from the name)searchHybridRespectsTopK
Search Hybrid Respects Top K (no description in the source; shown from the name)searchHybridReturnsEmptyWhenNeitherDenseNorSparseMatch
Search Hybrid Returns Empty When Neither Dense Nor Sparse Match (no description in the source; shown from the name)
PineconeBackendTest.java — 22 tests
Tests for PineconeBackend - NOT live-verified against a real Pinecone account (see the class's own javadoc for exactly what was and was not confirmed).
requiresPersistDirectory
Requires Persist Directory (no description in the source; shown from the name)requiresApiKey
Requires Api Key (no description in the source; shown from the name)vectorIdConstruction
Vector Id Construction (no description in the source; shown from the name)buildFilterTranslatesToPineconeEqSyntax
Build Filter Translates To Pinecone Eq Syntax (no description in the source; shown from the name)buildFilterNullWhenNoFilter
Build Filter Null When No Filter (no description in the source; shown from the name)initSchemaCreatesIndexWhenMissingWithPinnedVersionAndAuthHeaders
Init Schema Creates Index When Missing With Pinned Version And Auth Headers (no description in the source; shown from the name)initSchemaSkipsCreateWhenIndexAlreadyExists
Init Schema Skips Create When Index Already Exists (no description in the source; shown from the name)initSchemaPollsUntilIndexReady
Init Schema Polls Until Index Ready (no description in the source; shown from the name)insertChunkUpsertsCorrectBodyAndStoresTextInSqlite
Insert Chunk Upserts Correct Body And Stores Text In Sqlite (no description in the source; shown from the name)searchDenseReturnsChunksWithTextFromSqlite
Search Dense Returns Chunks With Text From Sqlite (no description in the source; shown from the name)searchDenseNormalizesCosineSimilarityToUnitRange
Search Dense Normalizes Cosine Similarity To Unit Range (no description in the source; shown from the name)searchDenseSkipsOrphanedVectors
Search Dense Skips Orphaned Vectors (no description in the source; shown from the name)searchDenseSendsNativeMetadataFilter
Search Dense Sends Native Metadata Filter (no description in the source; shown from the name)dimensionMismatchGuardReturnsEmptyWithoutCallingPinecone
Dimension Mismatch Guard Returns Empty Without Calling Pinecone (no description in the source; shown from the name)searchBeforeInitSchemaReturnsEmpty
Search Before Init Schema Returns Empty (no description in the source; shown from the name)insertChunkBeforeInitSchemaFailsWithoutLeavingOrphanRow
Insert Chunk Before Init Schema Fails Without Leaving Orphan Row (no description in the source; shown from the name)apiErrorSurfacesAsSqlException
Api Error Surfaces As Sql Exception (no description in the source; shown from the name)deleteDocumentSendsVectorIds
Delete Document Sends Vector Ids (no description in the source; shown from the name)deleteUnknownDocumentReturnsFalse
Delete Unknown Document Returns False (no description in the source; shown from the name)supportsSparseIsFalse
Supports Sparse Is False (no description in the source; shown from the name)getDocumentFilenameReturnsFilenameOrEmpty
Get Document Filename Returns Filename Or Empty (no description in the source; shown from the name)listDocumentsAndPagination
List Documents And Pagination (no description in the source; shown from the name)
QdrantBackendTest.java — 16 tests
Real tests for QdrantBackend - genuine REST calls against a real, already-running Qdrant instance (localhost:6333), not mocked.
requiresPersistDirectory
Requires Persist Directory (no description in the source; shown from the name)requiresUrl
Requires Url (no description in the source; shown from the name)insertAndSearchRoundtrip
Insert And Search Roundtrip (no description in the source; shown from the name)denseSearchFindsCorrectDocument
Dense Search Finds Correct Document (no description in the source; shown from the name)doesNotSupportSparse
Does Not Support Sparse (no description in the source; shown from the name)hybridModeGracefullyDegradesToDense
Hybrid Mode Gracefully Degrades To Dense (no description in the source; shown from the name)listDocumentsReturnsAllInserted
List Documents Returns All Inserted (no description in the source; shown from the name)listDocumentsPagination
List Documents Pagination (no description in the source; shown from the name)deleteDocumentRemovesItAndItsVector
Delete Document Removes It And Its Vector (no description in the source; shown from the name)deleteUnknownDocumentReturnsFalse
Delete Unknown Document Returns False (no description in the source; shown from the name)metadataFilterFiltersServerSideCorrectly
Metadata Filter Filters Server Side Correctly (no description in the source; shown from the name)dimensionMismatchGuardReturnsEmpty
Dimension Mismatch Guard Returns Empty (no description in the source; shown from the name)getDocumentFilenameReturnsFilenameOrEmpty
Get Document Filename Returns Filename Or Empty (no description in the source; shown from the name)similarityScoreNormalizedToUnitRange
Similarity Score Normalized To Unit Range (no description in the source; shown from the name)deterministicIdStableAcrossDeleteAndReinsert
Deterministic Id Stable Across Delete And Reinsert (no description in the source; shown from the name)persistenceAcrossBackendInstances
Persistence Across Backend Instances (no description in the source; shown from the name)
WeaviateBackendTest.java — 17 tests
Real tests for WeaviateBackend - genuine REST/GraphQL calls against a real, already-running Weaviate instance (localhost:8081), not mocked.
requiresPersistDirectory
Requires Persist Directory (no description in the source; shown from the name)requiresUrl
Requires Url (no description in the source; shown from the name)collectionNameNormalizedToUppercaseFirstLetter
Collection Name Normalized To Uppercase First Letter (no description in the source; shown from the name)insertAndSearchRoundtrip
Insert And Search Roundtrip (no description in the source; shown from the name)denseSearchFindsCorrectDocument
Dense Search Finds Correct Document (no description in the source; shown from the name)doesNotSupportSparse
Does Not Support Sparse (no description in the source; shown from the name)hybridModeGracefullyDegradesToDense
Hybrid Mode Gracefully Degrades To Dense (no description in the source; shown from the name)listDocumentsReturnsAllInserted
List Documents Returns All Inserted (no description in the source; shown from the name)listDocumentsPagination
List Documents Pagination (no description in the source; shown from the name)deleteDocumentRemovesItAndItsVector
Delete Document Removes It And Its Vector (no description in the source; shown from the name)deleteUnknownDocumentReturnsFalse
Delete Unknown Document Returns False (no description in the source; shown from the name)metadataFilterFiltersServerSideCorrectly
Metadata Filter Filters Server Side Correctly (no description in the source; shown from the name)dimensionMismatchGuardReturnsEmpty
Dimension Mismatch Guard Returns Empty (no description in the source; shown from the name)getDocumentFilenameReturnsFilenameOrEmpty
Get Document Filename Returns Filename Or Empty (no description in the source; shown from the name)similarityScoreDerivedFromDistanceCorrectly
Similarity Score Derived From Distance Correctly (no description in the source; shown from the name)deterministicIdStableAcrossDeleteAndReinsert
Deterministic Id Stable Across Delete And Reinsert (no description in the source; shown from the name)persistenceAcrossBackendInstances
Persistence Across Backend Instances (no description in the source; shown from the name)
WeaviateMissingPropertiesTest.java — 4 tests
Weaviate creates a property only when the first object that has it is stored.
searchOnACollectionWithNoDataReturnsNoResults
Search On ACollection With No Data Returns No Results (no description in the source; shown from the name)searchWorksOnceTheFirstChunkIsStored
Search Works Once The First Chunk Is Stored (no description in the source; shown from the name)filterOnAKeyNoChunkHasReturnsNoResults
Filter On AKey No Chunk Has Returns No Results (no description in the source; shown from the name)aMissingKeyIsNotRememberedAsMissingOnceAChunkWithItIsStored
A Missing Key Is Not Remembered As Missing Once AChunk With It Is Stored (no description in the source; shown from the name)
WeaviateScoreScaleTest.java — 1 tests
Regression test for the Weaviate score scale (found by the cross-backend benchmark, issue 565): scores must be on the same [0, 1] scale as pgvector and Qdrant, where an identical vector scores 1.0, an orthogonal one 0.5 and an opposite one 0.0.
scoresAreOnTheZeroToOneScaleForIdenticalOrthogonalAndOppositeVectors
Scores Are On The Zero To One Scale For Identical Orthogonal And Opposite Vectors (no description in the source; shown from the name)