summaryrefslogtreecommitdiff
path: root/modules/simpletest
diff options
context:
space:
mode:
Diffstat (limited to 'modules/simpletest')
-rw-r--r--modules/simpletest/tests/upgrade/drupal-6.upload.database.php102
-rw-r--r--modules/simpletest/tests/upgrade/upgrade.upload.test13
2 files changed, 79 insertions, 36 deletions
diff --git a/modules/simpletest/tests/upgrade/drupal-6.upload.database.php b/modules/simpletest/tests/upgrade/drupal-6.upload.database.php
index 048aee0c4..94733ed4c 100644
--- a/modules/simpletest/tests/upgrade/drupal-6.upload.database.php
+++ b/modules/simpletest/tests/upgrade/drupal-6.upload.database.php
@@ -11,6 +11,10 @@ db_insert('files')->fields(array(
'status',
'timestamp',
))
+/*
+ * This entry is deliberately omitted to test the upgrade routine when facing
+ * possible data corruption.
+ *
->values(array(
'fid' => '1',
'uid' => '1',
@@ -20,7 +24,7 @@ db_insert('files')->fields(array(
'filesize' => '1011',
'status' => '1',
'timestamp' => '1285700240',
-))
+)) */
->values(array(
'fid' => '2',
'uid' => '1',
@@ -132,14 +136,14 @@ db_insert('node')->fields(array(
))
->values(array(
'nid' => '38',
- 'vid' => '51',
+ 'vid' => '50',
'type' => 'page',
'language' => '',
- 'title' => 'node title 38 revision 51',
+ 'title' => 'node title 38 revision 50',
'uid' => '1',
'status' => '1',
- 'created' => '1285700317',
- 'changed' => '1285700600',
+ 'created' => '1285603317',
+ 'changed' => '1285603317',
'comment' => '0',
'promote' => '0',
'moderate' => '0',
@@ -152,7 +156,24 @@ db_insert('node')->fields(array(
'vid' => '52',
'type' => 'page',
'language' => '',
- 'title' => 'node title 39 revision 53',
+ 'title' => 'node title 39 revision 52',
+ 'uid' => '1',
+ 'status' => '1',
+ 'created' => '1285700317',
+ 'changed' => '1285700600',
+ 'comment' => '0',
+ 'promote' => '0',
+ 'moderate' => '0',
+ 'sticky' => '0',
+ 'tnid' => '0',
+ 'translate' => '0',
+))
+->values(array(
+ 'nid' => '40',
+ 'vid' => '53',
+ 'type' => 'page',
+ 'language' => '',
+ 'title' => 'node title 40 revision 53',
'uid' => '1',
'status' => '1',
'created' => '1285709012',
@@ -182,6 +203,17 @@ db_insert('node_revisions')->fields(array(
'vid' => '50',
'uid' => '1',
'title' => 'node title 38 revision 50',
+ 'body' => "Attachments:\r\npowered-blue-80x15.png",
+ 'teaser' => "Attachments:\r\npowered-blue-80x15.png",
+ 'log' => '',
+ 'timestamp' => '1285603317',
+ 'format' => '1',
+))
+->values(array(
+ 'nid' => '39',
+ 'vid' => '51',
+ 'uid' => '1',
+ 'title' => 'node title 39 revision 51',
'body' => "Attachments:\r\npowered-blue-80x15.png\r\npowered-blue-88x31.png\r\npowered-blue-135x42.png",
'teaser' => "Attachments:\r\npowered-blue-80x15.png\r\npowered-blue-88x31.png\r\npowered-blue-135x42.png",
'log' => '',
@@ -189,10 +221,10 @@ db_insert('node_revisions')->fields(array(
'format' => '1',
))
->values(array(
- 'nid' => '38',
- 'vid' => '51',
+ 'nid' => '39',
+ 'vid' => '52',
'uid' => '1',
- 'title' => 'node title 38 revision 51',
+ 'title' => 'node title 39 revision 52',
'body' => "Attachments:\r\npowered-blue-88x31.png\r\npowered-black-80x15.png\r\npowered-black-135x42.png",
'teaser' => "Attachments:\r\npowered-blue-88x31.png\r\npowered-black-80x15.png\r\npowered-black-135x42.png",
'log' => '',
@@ -200,10 +232,10 @@ db_insert('node_revisions')->fields(array(
'format' => '1',
))
->values(array(
- 'nid' => '39',
- 'vid' => '52',
+ 'nid' => '40',
+ 'vid' => '53',
'uid' => '1',
- 'title' => 'node title 39 revision 53',
+ 'title' => 'node title 40 revision 53',
'body' => "Attachments:\r\nforum-hot-new.png\r\nforum-hot.png\r\nforum-sticky.png\r\nforum-new.png",
'teaser' => "Attachments:\r\nforum-hot-new.png\r\nforum-hot.png\r\nforum-sticky.png\r\nforum-new.png",
'log' => '',
@@ -276,7 +308,7 @@ db_insert('upload')->fields(array(
'weight',
))
->values(array(
- 'fid' => '2',
+ 'fid' => '1',
'nid' => '38',
'vid' => '50',
'description' => 'powered-blue-80x15.png',
@@ -284,73 +316,81 @@ db_insert('upload')->fields(array(
'weight' => '0',
))
->values(array(
+ 'fid' => '2',
+ 'nid' => '39',
+ 'vid' => '51',
+ 'description' => 'powered-blue-80x15.png',
+ 'list' => '1',
+ 'weight' => '0',
+))
+->values(array(
'fid' => '3',
- 'nid' => '38',
- 'vid' => '50',
+ 'nid' => '39',
+ 'vid' => '51',
'description' => 'powered-blue-88x31.png',
'list' => '1',
'weight' => '0',
))
->values(array(
'fid' => '4',
- 'nid' => '38',
- 'vid' => '50',
+ 'nid' => '39',
+ 'vid' => '51',
'description' => 'powered-blue-135x42.png',
'list' => '1',
'weight' => '0',
))
->values(array(
'fid' => '3',
- 'nid' => '38',
- 'vid' => '51',
+ 'nid' => '39',
+ 'vid' => '52',
'description' => 'powered-blue-88x31.png',
'list' => '1',
'weight' => '0',
))
->values(array(
'fid' => '5',
- 'nid' => '38',
- 'vid' => '51',
+ 'nid' => '39',
+ 'vid' => '52',
'description' => 'powered-black-80x15.png',
'list' => '1',
'weight' => '0',
))
->values(array(
'fid' => '6',
- 'nid' => '38',
- 'vid' => '51',
+ 'nid' => '39',
+ 'vid' => '52',
'description' => 'powered-black-135x42.png',
'list' => '1',
'weight' => '0',
))
->values(array(
'fid' => '7',
- 'nid' => '39',
- 'vid' => '52',
+ 'nid' => '40',
+ 'vid' => '53',
'description' => 'forum-hot-new.png',
'list' => '1',
'weight' => '-4',
))
->values(array(
'fid' => '8',
- 'nid' => '39',
- 'vid' => '52',
+ 'nid' => '40',
+ 'vid' => '53',
'description' => 'forum-hot.png',
'list' => '1',
'weight' => '-3',
))
->values(array(
'fid' => '10',
- 'nid' => '39',
- 'vid' => '52',
+ 'nid' => '40',
+ 'vid' => '53',
'description' => 'forum-sticky.png',
'list' => '1',
'weight' => '-2',
))
->values(array(
'fid' => '9',
- 'nid' => '39',
- 'vid' => '52',
+ 'nid' => '40',
+ 'vid' => '53',
'description' => 'forum-new.png',
'list' => '1',
'weight' => '-1',
diff --git a/modules/simpletest/tests/upgrade/upgrade.upload.test b/modules/simpletest/tests/upgrade/upgrade.upload.test
index efbff1114..761d6558d 100644
--- a/modules/simpletest/tests/upgrade/upgrade.upload.test
+++ b/modules/simpletest/tests/upgrade/upgrade.upload.test
@@ -20,6 +20,8 @@ class UploadUpgradePathTestCase extends UpgradePathTestCase {
drupal_get_path('module', 'simpletest') . '/tests/upgrade/drupal-6.upload.database.php',
);
parent::setUp();
+ // Set a small batch size to test multiple iterations of the batch.
+ $this->variable_set('upload_update_batch_size', 2);
$this->uninstallModulesExcept(array('upload'));
}
@@ -36,8 +38,11 @@ class UploadUpgradePathTestCase extends UpgradePathTestCase {
$query->fieldCondition('upload');
$entities = $query->execute();
$revisions = $entities['node'];
- // Node revisions 50-52 should have uploaded files.
- $this->assertTrue((isset($revisions[50]) && isset($revisions[51]) && isset($revisions[52])), 'Nodes with uploaded files now contain filefield data.');
+ // Node revision 50 should not have uploaded files, as the entry in {files}
+ // is corrupted.
+ $this->assertFalse((isset($revisions[50])), 'Nodes with missing files do not contain filefield data.');
+ // Node revisions 51-53 should have uploaded files.
+ $this->assertTrue((isset($revisions[51]) && isset($revisions[52]) && isset($revisions[53])), 'Nodes with uploaded files now contain filefield data.');
// The test database lists uploaded filenames in the body of each node with
// uploaded files attached. Make sure all files are there in the same order.
foreach ($revisions as $vid => $revision) {
@@ -58,9 +63,7 @@ class UploadUpgradePathTestCase extends UpgradePathTestCase {
foreach ($files as $file) {
$filenames[] = $file['filename'];
}
-
- $diff = array_diff($filenames, $recorded_filenames);
- $this->assertTrue(empty($diff), 'The uploaded files are present in the same order after the upgrade.');
+ $this->assertIdentical($filenames, $recorded_filenames, 'The uploaded files are present in the same order after the upgrade.');
}
}
}