def test_page(self): data1 = { "name": "John", "number": "1234567890", "address": "Maple Road, Orange, AB", "email": "*****@*****.**" } data2 = { "name": "Mark", "number": "7264527893", "address": "Scope Road, Peach, EF", "email": "*****@*****.**" } data3 = { "name": "Paul", "number": "5162763528", "address": "Neon Road, Berry, GH", "email": "*****@*****.**" } es.index(index="addressbook", doc_type="contact", id=1, body=data1) es.index(index="addressbook", doc_type="contact", id=2, body=data2) es.index(index="addressbook", doc_type="contact", id=3, body=data3) time.sleep(1) results = elasticsearch_handler.get_contacts(None, 2, None) self.assertEqual(1, len(results))
def test_get_contacts_pass(self): data1 = { "name": "John", "number": "1234567890", "address": "Maple Road, Orange, AB", "email": "*****@*****.**" } data2 = { "name": "Mark", "number": "7264527893", "address": "Scope Road, Peach, EF", "email": "*****@*****.**" } es.index(index="addressbook", doc_type="contact", id=1, body=data1) es.index(index="addressbook", doc_type="contact", id=2, body=data2) time.sleep(1) results = elasticsearch_handler.get_contacts(None, None, None) self.assertEqual(2, len(results)) count = 0 for result in results: get_data = result["_source"] if result["_id"] == "1": self.assertEqual(data1["name"], get_data["name"]) self.assertEqual(data1["number"], get_data["number"]) self.assertEqual(data1["address"], get_data["address"]) self.assertEqual(data1["email"], get_data["email"]) count += 1 elif result["_id"] == "2": self.assertEqual(data2["name"], get_data["name"]) self.assertEqual(data2["number"], get_data["number"]) self.assertEqual(data2["address"], get_data["address"]) self.assertEqual(data2["email"], get_data["email"]) count += 1 self.assertEqual(2, count)
def contact(request): if request.method == "GET": page_size = request.GET.get("pageSize") page = request.GET.get("page") query = request.GET.get("query") response = elasticsearch_handler.get_contacts(page_size, page, query) return HttpResponse(json.dumps(response), content_type="application/json") elif request.method == "POST": data = {} # Check if all the required fields are specified if request.POST.get("name") and request.POST.get("number") and request.POST.get("address") and request.POST.get( "email"): data["name"] = request.POST.get("name") data["number"] = request.POST.get("number") data["address"] = request.POST.get("address") data["email"] = request.POST.get("email") response = elasticsearch_handler.insert_contact(data) return HttpResponse(json.dumps(response), content_type="application/json") # Show error message if all the fields are not specified return HttpResponse(json.dumps({"acknowledged": False, "message": "Required fields not specified."}), content_type="application/json") # Show error message if request is not GET or POST return HttpResponse(json.dumps({"acknowledged": False, "message": "Invalid request."}), content_type="application/json")
def test_get_contacts_fail(self): results = elasticsearch_handler.get_contacts(None, None, None) self.assertEqual(0, len(results))