Browse Source

Fixes reversed behaviour by ignore (#6041)

Kasimir Cash 2 years ago
parent
commit
9b1f971333
2 changed files with 12 additions and 12 deletions
  1. 8 8
      cli/i18n/I18nData.php
  2. 4 4
      tests/cli/i18n/I18nDataTest.php

+ 8 - 8
cli/i18n/I18nData.php

@@ -288,27 +288,27 @@ class I18nData {
 	}
 
 	/**
-	 * Ignore a key from a language, or reverse it.
+	 * Ignore a key from a language, or revert an existing ignore on a key.
 	 */
-	public function ignore(string $key, string $language, bool $reverse = false): void {
+	public function ignore(string $key, string $language, bool $revert = false): void {
 		$value = $this->data[$language][$this->getFilenamePrefix($key)][$key];
-		if ($reverse) {
-			$value->markAsIgnore();
-		} else {
+		if ($revert) {
 			$value->unmarkAsIgnore();
+		} else {
+			$value->markAsIgnore();
 		}
 	}
 
 	/**
-	 * Ignore all unmodified keys from a language, or reverse it.
+	 * Ignore all unmodified keys from a language, or revert all existing ignores on unmodified keys.
 	 */
-	public function ignore_unmodified(string $language, bool $reverse = false): void {
+	public function ignore_unmodified(string $language, bool $revert = false): void {
 		$my_language = $this->getLanguage($language);
 		foreach ($this->getReferenceLanguage() as $file => $ref_language) {
 			foreach ($ref_language as $key => $ref_value) {
 				if (array_key_exists($key, $my_language[$file])) {
 					if ($ref_value->equal($my_language[$file][$key])) {
-						$this->ignore($key, $language, $reverse);
+						$this->ignore($key, $language, $revert);
 					}
 				}
 			}

+ 4 - 4
tests/cli/i18n/I18nDataTest.php

@@ -679,9 +679,9 @@ class I18nDataTest extends PHPUnit\Framework\TestCase {
 		$value = $this->getMockBuilder(I18nValue::class)
 			->disableOriginalConstructor()
 			->getMock();
-		$value->expects(self::exactly(2))
-			->method('unmarkAsIgnore');
 		$value->expects(self::once())
+			->method('unmarkAsIgnore');
+		$value->expects(self::exactly(2))
 			->method('markAsIgnore');
 
 		$rawData = array_merge($this->referenceData, [
@@ -701,9 +701,9 @@ class I18nDataTest extends PHPUnit\Framework\TestCase {
 		$value = $this->getMockBuilder(I18nValue::class)
 			->disableOriginalConstructor()
 			->getMock();
-		$value->expects(self::exactly(2))
+		$value->expects(self::once())
 			->method('unmarkAsIgnore');
-			$value->expects(self::once())
+			$value->expects(self::exactly(2))
 			->method('markAsIgnore');
 
 		$this->value->expects(self::atLeast(2))