Updated Drupal to 8.6. This goes with the following updates because it's possible...
[yaffs-website] / web / core / modules / file / tests / src / Kernel / Plugin / migrate / source / d7 / FileTest.php
index 8ae0ec41fa16257c0c684b4aa43f217199304309..b588ad789ce5ad19fc99c6be45f4b8dd7b8a57d1 100644 (file)
@@ -84,15 +84,14 @@ class FileTest extends MigrateSqlSourceTestBase {
       ],
     ];
 
-    // The expected results will include only the first three files, since we
-    // are configuring the plugin to filter out the file with the null URI
-    // scheme.
-    $tests[0]['expected_data'] = array_slice($tests[0]['source_data']['file_managed'], 0, 3);
+    // The expected results will include only the first two files, since the
+    // plugin will filter out files with either the null URI scheme or the
+    // temporary scheme.
+    $tests[0]['expected_data'] = array_slice($tests[0]['source_data']['file_managed'], 0, 2);
 
     // The filepath property will vary by URI scheme.
     $tests[0]['expected_data'][0]['filepath'] = 'sites/default/files/cube.jpeg';
     $tests[0]['expected_data'][1]['filepath'] = '/path/to/private/files/cube.jpeg';
-    $tests[0]['expected_data'][2]['filepath'] = '/tmp/cube.jpeg';
 
     // Do an automatic count.
     $tests[0]['expected_count'] = NULL;
@@ -102,10 +101,61 @@ class FileTest extends MigrateSqlSourceTestBase {
       'constants' => [
         'source_base_path' => '/path/to/files',
       ],
-      // Only return files which use one of these URI schemes.
       'scheme' => ['public', 'private', 'temporary'],
     ];
 
+    // Test getting only public files.
+    $tests[1]['source_data'] = $tests[0]['source_data'];
+
+    $tests[1]['expected_data'] = [
+      [
+        'fid' => '1',
+        'uid' => '1',
+        'filename' => 'cube.jpeg',
+        'uri' => 'public://cube.jpeg',
+        'filemime' => 'image/jpeg',
+        'filesize' => '3620',
+        'status' => '1',
+        'timestamp' => '1421727515',
+      ],
+    ];
+    // Do an automatic count.
+    $tests[1]['expected_count'] = NULL;
+
+    // Set up plugin configuration.
+    $tests[1]['configuration'] = [
+      'constants' => [
+        'source_base_path' => '/path/to/files',
+      ],
+      'scheme' => ['public'],
+    ];
+
+    // Test getting only public files when configuration scheme is not an array.
+    $tests[2]['source_data'] = $tests[0]['source_data'];
+
+    $tests[2]['expected_data'] = [
+      [
+        'fid' => '1',
+        'uid' => '1',
+        'filename' => 'cube.jpeg',
+        'uri' => 'public://cube.jpeg',
+        'filemime' => 'image/jpeg',
+        'filesize' => '3620',
+        'status' => '1',
+        'timestamp' => '1421727515',
+      ],
+    ];
+    // Do an automatic count.
+    $tests[2]['expected_count'] = NULL;
+
+    // Set up plugin configuration.
+    $tests[2]['configuration'] = [
+      'constants' => [
+        'source_base_path' => '/path/to/files',
+      ],
+      'scheme' => 'public',
+    ];
+
     return $tests;
   }