Example #1
0
  def test_correct(self):
    reply = self.query('/login/login', data = {'username': self.config.get('online', 'username'), 'password': self.config.get('online', 'password')})

    cmp_json_dicts(reply, {
      'status':			303,
      'redirect':		{
        'url':			self.config.get('online', 'root_url') + '/home/'
      }
    })
Example #2
0
  def test_wrong_password(self):
    reply = self.query('/login/login', data = {'username': self.config.get('online', 'username'), 'password': '******'})

    cmp_json_dicts(reply, {
      'status':			401,
      'error':			{
        'message':		'Invalid username or password',
        'params':		{}
      }
    })
Example #3
0
 def test_proper(self):
   reply = self.query('/settings/email', data = {'email': self.config.get('online', 'email')})
   cmp_json_dicts(reply, {
     'status':			200,
     'form':			{
       'updated_fields':	{
         'email':		self.config.get('online', 'email')
       },
       'invalid_field':	None,
       'orig_fields':		None
     }
   })
Example #4
0
  def test_random(self):
    i = random.randint(0, 2)

    reply = self.query('/settings/after_pass_turn', data = {'action': i})
    cmp_json_dicts(reply, {
      'status':			200,
      'form':			{
        'updated_fields':	{
          'action':		i
        },
        'invalid_field':	None,
        'orig_fields':		None
      }
    })
Example #5
0
  def test_random(self):
    i = random.randint(0, 1)

    reply = self.query('/settings/sound', data = {'sound': i})
    cmp_json_dicts(reply, {
      'status':			200,
      'form':			{
        'updated_fields':	{
          'sound':		i
        },
        'invalid_field':	None,
        'orig_fields':		None
      }
    })
Example #6
0
 def test_empty_submit(self):
   reply = self.query('/settings/email')
   cmp_json_dicts(reply, {
     'status':			400,
     'form':			{
       'updated_fields':	None,
       'invalid_field':	'email',
       'orig_fields':		None
     },
     'error':			{
       'message':		'Please enter a value',
       'params':		{}
     }
   })
Example #7
0
  def test_random(self):
    i = self.get_rand_input()

    reply = self.query('/settings/per_page', data = {'per_page': i})
    cmp_json_dicts(reply, {
      'status':			200,
      'form':			{
        'updated_fields':	{
          'per_page':		i
        },
        'invalid_field':	None,
        'orig_fields':		None
      }
    })
Example #8
0
  def test_empty_username(self):
    reply = self.query('/login/login', data = {'password': self.config.get('online', 'password')})

    cmp_json_dicts(reply, {
      'status':			400,
      'form':			{
        'updated_fields':	None,
        'invalid_field':	'username',
        'orig_fields':		None
      },
      'error':			{
        'message':		'Please enter a value',
        'params':		{}
      }
    })
Example #9
0
 def test_empty_skin(self):
   reply = self.query('/settings/board_skin', data = {'skin': ''})
   cmp_json_dicts(reply, {
     'status':			400,
     'form':			{
       'updated_fields':	None,
       'invalid_field':	'skin',
       'orig_fields':		{
         'skin':		''
       }
     },
     'error':			{
       'message':		'Please enter a value',
       'params':		{}
     }
   })
Example #10
0
  def test_random(self):
    skins = ['simple', 'real']
    i = random.randint(0, 1)
    skin = skins[i]

    reply = self.query('/settings/board_skin', data = {'skin': skin})
    cmp_json_dicts(reply, {
      'status':			200,
      'form':			{
        'updated_fields':	{
          'skin':		skin
        },
        'invalid_field':	None,
        'orig_fields':		None
      }
    })
Example #11
0
 def test_malformed_float(self):
   reply = self.query('/settings/after_pass_turn', data = {'action': 3.14})
   cmp_json_dicts(reply, {
     'status':			400,
     'form':			{
       'updated_fields':	None,
       'invalid_field':	'action',
       'orig_fields':		{
         'action':		'3.14'
       }
     },
     'error':			{
       'message':		'Please enter an integer value',
       'params':		{
       }
     }
   })
Example #12
0
 def test_malformed_float(self):
   reply = self.query('/settings/email', data = {'email': 3.14})
   cmp_json_dicts(reply, {
     'status':			400,
     'form':			{
       'updated_fields':	None,
       'invalid_field':	'email',
       'orig_fields':		{
         'email':		'3.14'
       }
     },
     'error':			{
       'message':		'An email address must contain a single @',
       'params':		{
       }
     }
   })
Example #13
0
 def test_malformed_string(self):
   reply = self.query('/settings/per_page', data = {'per_page': 'foobar'})
   cmp_json_dicts(reply, {
     'status':			400,
     'form':			{
       'updated_fields':	None,
       'invalid_field':	'per_page',
       'orig_fields':		{
         'per_page':		'foobar'
       }
     },
     'error':			{
       'message':		'Please enter an integer value',
       'params':		{
       }
     }
   })
Example #14
0
  def test_invalid_param(self):
    i = random.randint(-20, 20)

    reply = self.query('/settings/email', data = {'__email': '%s' % i})
    cmp_json_dicts(reply, {
      'status':			400,
      'form':			{
        'updated_fields':	None,
        'invalid_field':	None,
        'orig_fields':		{
          '__email':		'%s' % i
        }
      },
      'error':			{
        'message':		'The input field \'__email\' was not expected.',
        'params':		{}
      }
    })
Example #15
0
  def test_malformed_int(self):
    i = random.randint(-20, -10)

    reply = self.query('/settings/sound', data = {'sound': i})
    cmp_json_dicts(reply, {
      'status':			400,
      'form':			{
        'updated_fields':	None,
        'invalid_field':	'sound',
        'orig_fields':		{
          'sound':		'%i' % i
        }
      },
      'error':			{
        'message':		'Value must be one of: 0; 1 (not %i)' % i,
        'params':		{
        }
      }
    })
Example #16
0
  def test_malformed_int(self):
    i = random.randint(-20, 20)

    reply = self.query('/settings/board_skin', data = {'skin': i})
    cmp_json_dicts(reply, {
      'status':			400,
      'form':			{
        'updated_fields':	None,
        'invalid_field':	'skin',
        'orig_fields':		{
          'skin':		'%i' % i
        }
      },
      'error':			{
        'message':		'Value must be one of: real; simple (not u\'%i\')' % i,
        'params':		{
        }
      }
    })
Example #17
0
  def test_malformed_oor(self):
    i = random.randint(-20, -5)

    reply = self.query('/settings/after_pass_turn', data = {'action': i})
    cmp_json_dicts(reply, {
      'status':			400,
      'form':			{
        'updated_fields':	None,
        'invalid_field':	'action',
        'orig_fields':		{
          'action':		'%i' % i
        }
      },
      'error':			{
        'message':		'Value must be one of: 0; 1; 2 (not %i)' % i,
        'params':		{
        }
      }
    })
Example #18
0
  def test_malformed_kind_string(self):
    color = self.get_rand_color()

    reply = self.query('/settings/color', data = {'kind': 'foobar', 'color': color})
    cmp_json_dicts(reply, {
      'status':			400,
      'form':			{
        'updated_fields':	None,
        'invalid_field':	'kind',
        'orig_fields':		{
          'kind':		'foobar',
          'color':		color
        }
      },
      'error':			{
        'message':		'Value must be one of: settlers (not u\'foobar\')',
        'params':		{
        }
      }
    })
Example #19
0
  def test_malformed_color_string(self):
    return

    kind = self.get_rand_kind()
    color = self.get_rand_color()

    reply = self.query('/settings/color', data = {'kind': kind, 'color': 'foobar'})
    cmp_json_dicts(reply, {
      'status':			400,
      'form':			{
        'updated_fields':	None,
        'invalid_field':	'color',
        'orig_fields':		{
          'kind':		kind,
          'color':		'foobar'
        }
      },
      'error':			{
        'message':		'Value must be one of: pink; purple; dark_green; black; brown; light_blue; orange; green; dark_blue; red (not u\'foobar\')',
        'params':		{
        }
      }
    })
Example #20
0
  def test_malformed_int(self):
    while True:
      i = random.randint(-100, 100)
      if i in self.VALID_INPUTS:
        continue
      break

    reply = self.query('/settings/per_page', data = {'per_page': i})
    cmp_json_dicts(reply, {
      'status':			400,
      'form':			{
        'updated_fields':	None,
        'invalid_field':	'per_page',
        'orig_fields':		{
          'per_page':		'%i' % i
        }
      },
      'error':			{
        'message':		'Value must be one of: 10; 20; 30; 40; 50; 60 (not %i)' % i,
        'params':		{
        }
      }
    })