mirror of
https://github.com/ksyasuda/SubMiner.git
synced 2026-03-02 18:22:42 -08:00
Overlay 2.0 (#12)
This commit is contained in:
@@ -209,6 +209,24 @@ test('AnkiIntegration.refreshKnownWordCache deduplicates concurrent refreshes',
|
||||
}
|
||||
});
|
||||
|
||||
test('AnkiIntegration does not allocate proxy server when proxy transport is disabled', () => {
|
||||
const integration = new AnkiIntegration(
|
||||
{
|
||||
enabled: true,
|
||||
proxy: {
|
||||
enabled: false,
|
||||
},
|
||||
} as never,
|
||||
{} as never,
|
||||
{} as never,
|
||||
);
|
||||
|
||||
const privateState = integration as unknown as {
|
||||
proxyServer: unknown | null;
|
||||
};
|
||||
assert.equal(privateState.proxyServer, null);
|
||||
});
|
||||
|
||||
test('FieldGroupingMergeCollaborator synchronizes ExpressionAudio from merged SentenceAudio', async () => {
|
||||
const collaborator = createFieldGroupingMergeCollaborator();
|
||||
|
||||
@@ -266,3 +284,35 @@ test('FieldGroupingMergeCollaborator uses generated media fallback when source l
|
||||
|
||||
assert.equal(merged.SentenceAudio, '<span data-group-id="22">[sound:generated.mp3]</span>');
|
||||
});
|
||||
|
||||
test('FieldGroupingMergeCollaborator deduplicates identical sentence, audio, and image values when merging into a new duplicate card', async () => {
|
||||
const collaborator = createFieldGroupingMergeCollaborator();
|
||||
|
||||
const merged = await collaborator.computeFieldGroupingMergedFields(
|
||||
202,
|
||||
101,
|
||||
{
|
||||
noteId: 202,
|
||||
fields: {
|
||||
Sentence: { value: 'same sentence' },
|
||||
SentenceAudio: { value: '[sound:same.mp3]' },
|
||||
Picture: { value: '<img src="same.png">' },
|
||||
ExpressionAudio: { value: '[sound:same.mp3]' },
|
||||
},
|
||||
},
|
||||
{
|
||||
noteId: 101,
|
||||
fields: {
|
||||
Sentence: { value: 'same sentence' },
|
||||
SentenceAudio: { value: '[sound:same.mp3]' },
|
||||
Picture: { value: '<img src="same.png">' },
|
||||
},
|
||||
},
|
||||
false,
|
||||
);
|
||||
|
||||
assert.equal(merged.Sentence, '<span data-group-id="202">same sentence</span>');
|
||||
assert.equal(merged.SentenceAudio, '<span data-group-id="202">[sound:same.mp3]</span>');
|
||||
assert.equal(merged.Picture, '<img data-group-id="202" src="same.png">');
|
||||
assert.equal(merged.ExpressionAudio, merged.SentenceAudio);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user