def test_render_template(self): """ Test render :return: void """ helper = ResponseHelper() rule = '/' + self.rand_str(20) value1 = self.rand_str(20) value2 = self.rand_str(20) value3 = self.rand_str(20) incomplete_result = '%s %s' % (value1, value3) alternate_result = '%s %s %s' % (value1, value2, value3) with self.app.test_request_context(rule): # Assign normal way helper.assign('value1', value1) helper.assign('value3', value3) # Fetch rendered template self.assert_equal(incomplete_result, helper.render_template(self.template)) # Fetch rendered template self.assert_equal(alternate_result, helper.render_template(self.template, {'value2': value2}))
def test_json(self): """ Test json response :return: void """ helper = ResponseHelper() rule = '/' + self.rand_str(20) key1 = self.rand_str(20) value1 = self.rand_str(20) key2 = self.rand_str(20) value2 = self.rand_str(20) with self.app.test_request_context(rule): # Empty json response response = helper.json() # Check self.assert_is_instance(response, Response) self.assert_is_instance(response, FlaskResponse) self.assert_equal('{}', Encoding.normalize(response.response[0])) # Assign helper.assign(key1, value1) helper.assign(key2, value2) # Json response response = helper.json() # Check self.assert_is_instance(response, Response) self.assert_is_instance(response, FlaskResponse) response_json = Encoding.normalize(json.loads(response.response[0])) self.assert_equal(2, len(response_json)) self.assert_in(key1, response_json) self.assert_equal(value1, response_json[key1]) self.assert_in(key2, response_json) self.assert_equal(value2, response_json[key2])
def test_render(self): """ Test render :return: void """ helper = ResponseHelper() rule = '/' + self.rand_str(20) value1 = self.rand_str(20) value2 = self.rand_str(20) value3 = self.rand_str(20) incomplete_result = '%s %s' % (value1, value3) alternate_result = '%s %s %s' % (value1, value2, value3) with self.app.test_request_context(rule): # Assign normal way helper.assign('value1', value1) helper.assign('value3', value3) # Fetch response response = helper.render(self.template) # Check self.assert_is_instance(response, Response) self.assert_is_instance(response, FlaskResponse) self.assert_equal(1, len(response.response)) self.assert_equal(incomplete_result, Encoding.normalize(response.response[0])) # Fetch response with extra assign response = helper.render(self.template, {'value2': value2}) # Check self.assert_is_instance(response, Response) self.assert_is_instance(response, FlaskResponse) self.assert_equal(1, len(response.response)) self.assert_equal(alternate_result, Encoding.normalize(response.response[0]))
def test_assigns(self): """ Test assigns :return: void """ helper = ResponseHelper() key1 = self.rand_str(20) value1 = self.rand_str(20) value1_2 = self.rand_str(20) key2 = self.rand_str(20) value2 = self.rand_str(20) # Empty self.assert_equal(0, len(helper.assigns)) # Assign one helper.assign(key1, value1) self.assert_equal(1, len(helper.assigns)) self.assert_in(key1, helper.assigns) self.assert_equal(value1, helper.assigns[key1]) # Assign second helper.assign(key2, value2) self.assert_equal(2, len(helper.assigns)) self.assert_in(key2, helper.assigns) self.assert_equal(value2, helper.assigns[key2]) # Override helper.assign(key1, value1_2) self.assert_equal(2, len(helper.assigns)) self.assert_in(key1, helper.assigns) self.assert_equal(value1_2, helper.assigns[key1])