summaryrefslogtreecommitdiff
path: root/modules/simpletest/tests/system_test.module
blob: 188facc96e2d130a2834acd1a5a7e8dd8f0ed9a1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
<?php
// $Id$

/**
 * Implementation of hook_menu().
 */
function system_test_menu() {
  $items['system-test/auth'] = array(
    'page callback' => 'system_test_basic_auth_page',
    'access callback' => TRUE,
    'type' => MENU_CALLBACK,
  );
  $items['system-test/redirect/%'] = array(
    'title' => 'Redirect',
    'page callback' => 'system_test_redirect',
    'page arguments' => array(2),
    'access arguments' => array('access content'),
    'type' => MENU_CALLBACK,
  );
  $items['system-test/redirect-noscheme'] = array(
    'page callback' => 'system_test_redirect_noscheme',
    'access arguments' => array('access content'),
    'type' => MENU_CALLBACK,
  );
  $items['system-test/redirect-noparse'] = array(
    'page callback' => 'system_test_redirect_noparse',
    'access arguments' => array('access content'),
    'type' => MENU_CALLBACK,
  );
  $items['system-test/redirect-invalid-scheme'] = array(
    'page callback' => 'system_test_redirect_invalid_scheme',
    'access arguments' => array('access content'),
    'type' => MENU_CALLBACK,
  );
  $items['system-test/destination'] = array(
    'title' => 'Redirect',
    'page callback' => 'system_test_destination',
    'page arguments' => array(2),
    'access arguments' => array('access content'),
    'type' => MENU_CALLBACK,
  );

  $items['system-test/variable-get'] = array(
    'title' => 'Variable Get',
    'page callback' => 'variable_get',
    'page arguments' => array('simpletest_bootstrap_variable_test', NULL),
    'access arguments' => array('access content'),
    'type' => MENU_CALLBACK,
  );

  return $items;
}

function system_test_basic_auth_page() {
  $output = t('$_SERVER[\'PHP_AUTH_USER\'] is @username.', array('@username' => $_SERVER['PHP_AUTH_USER']));
  $output .= t('$_SERVER[\'PHP_AUTH_PW\'] is @password.', array('@password' => $_SERVER['PHP_AUTH_PW']));
  return $output;
}

function system_test_redirect($code) {
  $code = (int)$code;
  if ($code != 200) {
    header("Location: " . url('system-test/redirect/200', array('absolute' => TRUE)), TRUE, $code);
    exit;
  }
  return '';
}

function system_test_redirect_noscheme() {
  header("Location: localhost/path", TRUE, 301);
  exit;
}

function system_test_redirect_noparse() {
  header("Location: http:///path", TRUE, 301);
  exit;
}

function system_test_redirect_invalid_scheme() {
  header("Location: ftp://localhost/path", TRUE, 301);
  exit;
}

function system_test_destination() {
  return 'The destination: ' . drupal_get_destination();
}

/**
 * Implementation of hook_modules_installed().
 */
function system_test_modules_installed($modules) {
  if (in_array('aggregator', $modules)) {
    drupal_set_message(t('hook_modules_installed fired for aggregator'));
  }
}

/**
 * Implementation of hook_modules_enabled().
 */
function system_test_modules_enabled($modules) {
  if (in_array('aggregator', $modules)) {
    drupal_set_message(t('hook_modules_enabled fired for aggregator'));
  }
}

/**
 * Implementation of hook_modules_disabled().
 */
function system_test_modules_disabled($modules) {
  if (in_array('aggregator', $modules)) {
    drupal_set_message(t('hook_modules_disabled fired for aggregator'));
  }
}

/**
 * Implementation of hook_modules_uninstalled().
 */
function system_test_modules_uninstalled($modules) {
  if (in_array('aggregator', $modules)) {
    drupal_set_message(t('hook_modules_uninstalled fired for aggregator'));
  }
}