diff -u b/drupalci.yml b/drupalci.yml --- b/drupalci.yml +++ b/drupalci.yml @@ -44,13 +44,13 @@ halt-on-fail: false run_tests.functional: types: 'PHPUnit-Functional' - testgroups: '--all' + testgroups: '--all --exclude legacy' suppress-deprecations: true halt-on-fail: false run_tests.javascript: concurrency: 15 types: 'PHPUnit-FunctionalJavascript' - testgroups: '--all' + testgroups: '--all --exclude legacy' suppress-deprecations: true halt-on-fail: false # Run nightwatch testing. diff -u b/lingotek.module b/lingotek.module --- b/lingotek.module +++ b/lingotek.module @@ -36,7 +36,7 @@ function lingotek_module_implements_alter(&$implementations, $hook) { switch ($hook) { // Move our hook_entity_type_alter() implementation to the end of the list. -// case 'entity_update': + case 'entity_update': case 'entity_insert': $group = $implementations['lingotek']; unset($implementations['lingotek']); diff -u b/src/Plugin/LingotekFormComponent/Filter/GnodeGroup.php b/src/Plugin/LingotekFormComponent/Filter/GnodeGroup.php --- b/src/Plugin/LingotekFormComponent/Filter/GnodeGroup.php +++ b/src/Plugin/LingotekFormComponent/Filter/GnodeGroup.php @@ -12,6 +12,7 @@ use Drupal\lingotek\LingotekConfigurationServiceInterface; use Drupal\lingotek\LingotekContentTranslationServiceInterface; use Symfony\Component\DependencyInjection\ContainerInterface; +use Drupal\group\Plugin\Group\Relation\GroupRelationTypeManager; /** * Defines a Lingotek form-filter plugin for the Group Node group. @@ -112,8 +113,8 @@ /** @var \Drupal\group\Entity\Group $group */ $group = $this->entityTypeManager->getStorage('group')->load($value); $groupType = $group->getGroupType(); - /** @var \Drupal\group\Plugin\GroupContentEnablerManagerInterface $groupContentEnablers */ - $groupContentEnablers = \Drupal::service('plugin.manager.group_content_enabler'); + /** @var \Drupal\group\Plugin\Group\Relation\GroupRelationTypeManager $groupContentEnablers */ + $groupContentEnablers = \Drupal::service('group_relation_type.manager'); $definitions = $groupContentEnablers->getDefinitions(); $definitions = array_filter($definitions, function ($definition) { return ($definition['entity_type_id'] === 'node'); diff -u b/tests/src/Functional/LingotekNodeCohesionRepeaterTranslationTest.php b/tests/src/Functional/LingotekNodeCohesionRepeaterTranslationTest.php --- b/tests/src/Functional/LingotekNodeCohesionRepeaterTranslationTest.php +++ b/tests/src/Functional/LingotekNodeCohesionRepeaterTranslationTest.php @@ -288,6 +288,7 @@ JSON; $component = Component::create([ 'id' => '3fedc674', + 'category' => 'cpt-3', 'status' => TRUE, 'label' => 'text', 'json_values' => $json, diff -u b/tests/src/Functional/LingotekNodeCohesionTranslationTest.php b/tests/src/Functional/LingotekNodeCohesionTranslationTest.php --- b/tests/src/Functional/LingotekNodeCohesionTranslationTest.php +++ b/tests/src/Functional/LingotekNodeCohesionTranslationTest.php @@ -298,6 +298,7 @@ $component = Component::create([ 'id' => '3fedc674', 'status' => TRUE, + 'category' => 'cpt-3', 'label' => 'text', 'json_values' => $json, ]); diff -u b/tests/src/FunctionalJavascript/LingotekNodeParagraphsTranslationTest.php b/tests/src/FunctionalJavascript/LingotekNodeParagraphsTranslationTest.php --- b/tests/src/FunctionalJavascript/LingotekNodeParagraphsTranslationTest.php +++ b/tests/src/FunctionalJavascript/LingotekNodeParagraphsTranslationTest.php @@ -123,7 +123,7 @@ // the upload status. $toggle = $page->find('css', 'li.dropbutton-toggle button'); $toggle->click(); - $dropButton = $page->find('css', 'li.check-upload-status.dropbutton__item.dropbutton-action.secondary-action a'); + $dropButton = $page->find('css', '#edit-table > tbody > tr > td:nth-child(4) > div > ul > li:nth-child(2) > a'); $dropButton->click(); // This is a batch process, wait to finish. @@ -226,7 +226,7 @@ // the upload status. $toggle = $page->find('css', 'li.dropbutton-toggle button'); $toggle->click(); - $dropButton = $page->find('css', 'li.check-upload-status.dropbutton__item.dropbutton-action.secondary-action a'); + $dropButton = $page->find('css', '#edit-table > tbody > tr > td:nth-child(4) > div > ul > li:nth-child(2) > a'); $dropButton->click(); // This is a batch process, wait to finish. diff -u b/tests/src/Unit/Plugin/LingotekFormComponent/Filter/GnodeGroupTest.php b/tests/src/Unit/Plugin/LingotekFormComponent/Filter/GnodeGroupTest.php --- b/tests/src/Unit/Plugin/LingotekFormComponent/Filter/GnodeGroupTest.php +++ b/tests/src/Unit/Plugin/LingotekFormComponent/Filter/GnodeGroupTest.php @@ -96,7 +96,7 @@ /** * The group relation manager. * - * @var \Drupal\group\Plugin\GroupContentEnablerManagerInterface|\PHPUnit\Framework\MockObject\MockObject + * @var \Drupal\group\Plugin\GroupRelationTypeManager|\PHPUnit\Framework\MockObject\MockObject */ protected $groupContentEnablerManager; @@ -144,7 +144,7 @@ $container = new Container(); $this->groupContentEnablerManager = $this->createMock(GroupRelationTypeManager::class); - $container->set('plugin.manager.group_content_enabler', $this->groupContentEnablerManager); + $container->set('group_relation_type.manager', $this->groupContentEnablerManager); \Drupal::setContainer($container); } only in patch2: unchanged: --- a/src/Plugin/LingotekFieldProcessor/LingotekTablefieldProcessor.php +++ b/src/Plugin/LingotekFieldProcessor/LingotekTablefieldProcessor.php @@ -28,7 +28,7 @@ class LingotekTablefieldProcessor extends PluginBase implements LingotekFieldPro */ public function extract(ContentEntityInterface &$entity, string $field_name, FieldDefinitionInterface $field_definition, array &$data, array &$visited = [], string $revision_mode = LingotekContentTranslationEntityRevisionResolver::RESOLVE_LATEST_TRANSLATION_AFFECTED) { foreach ($entity->get($field_name) as $index => $field_item) { - $tableValue = $field_item->value; + $tableValue = $field_item->__get('value'); $embedded_data = []; foreach ($tableValue as $row_index => $row) { if ($row_index === 'caption') { only in patch2: unchanged: --- a/tests/fixtures/update/profile-target-save-to-vault-post-update.php +++ b/tests/fixtures/update/profile-target-save-to-vault-post-update.php @@ -10,7 +10,7 @@ use Drupal\Core\Database\Database; $connection = Database::getConnection(); -foreach (['es', 'en', 'fr', 'it'] as $langcode) { +foreach (['es', 'en'] as $langcode) { $connection->insert('config') ->fields([ 'collection' => '', only in patch2: unchanged: --- a/tests/fixtures/update/profile-target-save-to-vault-post-update/lingotek.profile.custom_profile.yml +++ b/tests/fixtures/update/profile-target-save-to-vault-post-update/lingotek.profile.custom_profile.yml @@ -1,11 +1,13 @@ langcode: en +uuid: bb311c63-23f7-4c5d-ae22-b494db729c62 status: true dependencies: { } -id: custom_profile +id: customized label: Custom Profile weight: 0 locked: false auto_upload: false +auto_request: false auto_download: false auto_download_worker: true append_type_to_title: global_setting @@ -55,13 +57,3 @@ language_overrides: custom: workflow: default auto_download: false - fr: - overrides: custom - custom: - workflow: default - auto_download: false - it: - overrides: custom - custom: - workflow: default - auto_download: false only in patch2: unchanged: --- a/tests/src/Functional/Update/LingotekProfileTargetSaveToVaultPostUpdateTest.php +++ b/tests/src/Functional/Update/LingotekProfileTargetSaveToVaultPostUpdateTest.php @@ -17,7 +17,7 @@ class LingotekProfileTargetSaveToVaultPostUpdateTest extends UpdatePathTestBase */ protected function setDatabaseDumpFiles() { $this->databaseDumpFiles = [ - __DIR__ . '/../../../fixtures/update/drupal-88x.lingotek-2x20.standard.php.gz', + __DIR__ . '/../../../fixtures/update/drupal-95x.lingotek-2x20.standard.php.gz', __DIR__ . '/../../../fixtures/update/profile-target-save-to-vault-post-update.php', ]; }