'Re-order', 'new_order' => [$B, $A, $C], 'expected' => [$B, $A, $C], ], [ 'name' => 'Nothing to re-order', 'new_order' => [], 'expected' => $all, ], [ 'name' => 'Bad input: non-numeric strings', 'new_order' => [$C, 'foo', $A, $B, 'bar'], 'expected' => [$C, $A, $B], ], [ 'name' => 'Bad input: string numbers', 'new_order' => [$C, $A, (string) $B], 'expected' => [$C, $A, $B], ], ]; foreach ($use_cases as $use_case) { sql_reorder_records('collection', $use_case['new_order']); if ($get_collections_order($all) !== $use_case['expected']) { echo "Use case: {$use_case['name']} - "; return false; } // Reset order to the initial one sql_reorder_records('collection', $all); } // Tear down unset($get_collections_order, $A, $B, $C, $use_cases); return true;