diff options
| -rw-r--r-- | search/tags.ts | 2 | ||||
| -rw-r--r-- | test/deinflection/test.ts | 7 | 
2 files changed, 6 insertions, 3 deletions
diff --git a/search/tags.ts b/search/tags.ts index fa70fe8..22ea315 100644 --- a/search/tags.ts +++ b/search/tags.ts @@ -198,6 +198,7 @@ export function parseTags(input: string) {  		if (tag == Tag.Inflection.Suffix.Te && [  			Tag.Inflection.Tense.Continuous, // base for continuous tense  			Tag.Inflection.Obligatory, // base for obligatory inflection +			Tag.Inflection.Temporary.ObligatoryParticle, // base for obligatory inflection  			Tag.Inflection.Attempt.Miru, // base for 〜みる attempt  		].includes(lastTag as any)) continue; @@ -210,6 +211,7 @@ export function parseTags(input: string) {  		if (tag == Tag.Inflection.Conditional.Ba && [  			Tag.Inflection.Obligatory,  			Tag.Inflection.Temporary.ObligatoryResult, +			Tag.Inflection.Temporary.ObligatoryParticle,  		].includes(lastTag as any)) continue;  		// normalize multiple Inflection.Negative to single Inflection.Affirmative or Inflection.Negative diff --git a/test/deinflection/test.ts b/test/deinflection/test.ts index 6c1667b..291ed83 100644 --- a/test/deinflection/test.ts +++ b/test/deinflection/test.ts @@ -10,9 +10,10 @@ cases.forEach(({ input, mustHave, mustNotHave, force }) => {  			throw new Error("No parsed terms for input");  		// console.log(terms); -		var result = terms.find(t => t.source == input); +		terms = terms.filter(t => t.source == input);  		if (force) -			result = terms.find(t => t.reading == force.reading && t.writing == force.writing); +			terms = terms.filter(t => t.reading == force.reading && t.writing == force.writing); +		var result = terms[0];  		if (!result)  			throw new Error("No deconjugation found for input"); @@ -26,7 +27,7 @@ cases.forEach(({ input, mustHave, mustNotHave, force }) => {  			if (result.tags.includes(tag))  				throw new Error(`Deconjugation includes unallowed tag ${tag}`); -		console.log(result.writing + " + " + result.tags.filter(tag => tag.startsWith("infl:") && !tag.startsWith("infl:reason:")).join(" + ")); +		// console.log(result.writing + " + " + result.tags.filter(tag => tag.startsWith("infl:") && !tag.startsWith("infl:reason:")).join(" + "));  	});  })  |