Пример #1
0
    def test_model_cannot_create_a_contact_with_same_email(self):
        """Testing if contact model can create an object"""
        old_count = Contact.objects.count()
        self.contact.save()

        self.contact_email = "*****@*****.**"
        self.contact_name = "Onsite test1"
        with self.assertRaises(IntegrityError):
            self.contact1 = Contact(name=self.contact_name,
                                    email=self.contact_email)
            self.contact1.save()
Пример #2
0
def contacts(request):
    if not request.user.is_authenticated:
        return HttpResponse(status=401)
    
    person = request.user.person

    if request.method == "POST":
        body_unicode = request.body.decode('utf-8')
        data = json.loads(body_unicode)

        contact = Contact(number=data["number"], name=data["name"], img=data["img"])
        contact.save()
        request.user.person.contacts.add(contact)

    if request.method == "PUT":
        body_unicode = request.body.decode('utf-8')
        data = json.loads(body_unicode)
        contact = Contact.objects.get(pk=data['pk'])
        contact.number = data["number"]
        contact.name = data["name"]
        contact.save()

    contacts = Contact.objects.filter(person=person)
    serializable = [{
        "name": contact.name, 
        "number": contact.number, 
        "img": contact.img
        } for contact in contacts]
    data = json.dumps(serializable)

    return HttpResponse(data)
Пример #3
0
 def create(self, validated_data):
     client_data = copy.deepcopy(validated_data)
     del client_data['contacts']
     contact_list_data = validated_data['contacts']
     company = Company(**client_data)
     company.save()
     for contact_data in contact_list_data:
         contact = Contact(**contact_data)
         contact.save()
         companycontact = CompanyContact()
         companycontact.company = company
         companycontact.contact = contact
         companycontact.save()
     return company
Пример #4
0
def add_contact(request):
    data = request.POST
    contact = Contact()
    contact.name = data.get('name', '')
    contact.phone = data.get('phone', '')
    contact.avatar = data.get('avatar', '')
    contact.save()
    return JsonResponse(contact.to_json(), status=201)
Пример #5
0
def contact(request):
    email = request.POST.get('email')
    title = request.POST.get('title')
    content = request.POST.get('content')
    try:
        contact = Contact(email=email, title=title, content=content)
        contact.save()
        try:
            msg = EmailMultiAlternatives(title, content,
                                         settings.EMAIL_HOST_USER, [email])
            msg.attach_alternative(content, "text/html")
            msg.send()
            response = {'result': 1, 'message': 'ok'}
        except Exception as e:
            response = {'result': -1, 'message': 'Can not send mail'}
    except:
        response = {'result': 0, 'message': 'Error Token'}
    return JsonResponse(response)
Пример #6
0
class ModelTestCase(TestCase):
    """Test suite for contact model."""
    def setUp(self):
        """Setting up basic test requiments"""
        self.contact_email = "*****@*****.**"
        self.contact_name = "Onsite test"
        self.contact = Contact(name=self.contact_name,
                               email=self.contact_email)

    def test_model_can_create_a_contact(self):
        """Testing if contact model can create an object"""
        old_count = Contact.objects.count()
        self.contact.save()
        new_count = Contact.objects.count()
        self.assertEqual(old_count + 1, new_count)

    def test_model_cannot_create_a_contact_with_same_email(self):
        """Testing if contact model can create an object"""
        old_count = Contact.objects.count()
        self.contact.save()

        self.contact_email = "*****@*****.**"
        self.contact_name = "Onsite test1"
        with self.assertRaises(IntegrityError):
            self.contact1 = Contact(name=self.contact_name,
                                    email=self.contact_email)
            self.contact1.save()

    def test_model_can_read_a_contact(self):
        """Testing if contact model can read an object"""
        self.contact.save()
        contact = Contact.objects.get(email=self.contact_email)
        self.assertEqual(self.contact_email, contact.email)
        self.assertEqual(self.contact_name, contact.name)

    # TODO: Add model test for Update, Delete

    def test_model_can_update_a_contact(self):
        """ Test for updating a contact """
        pass

    def test_model_can_delete_a_contact(self):
        """ Test for deleting a contact """
        pass
def handle_contact():
    """
    Create contact
    """
    # POST request
    if request.method == 'POST':
        body = request.get_json()
        if body is None:
            raise APIException(
                "You need to specify the request body as a json object",
                status_code=400)
        contact = Contact(name=body['name'],
                          email=body['email'],
                          phone=body['phone'],
                          address=body['address'])
        db.session.add(contact)
        db.session.commit()
        return "ok", 200
    # GET request
    if request.method == 'GET':
        contact = Contact.query.all()
        contact = list(map(lambda x: x.serialize(), contact))
        return jsonify(contact), 200
    return "Invalid Method", 404
Пример #8
0
 def create(self, validated_data):
     contact = Contact(**validated_data)
     contact.save()
     return contact
Пример #9
0
 def setUp(self):
     """Setting up basic test requiments"""
     self.contact_email = "*****@*****.**"
     self.contact_name = "Onsite test"
     self.contact = Contact(name=self.contact_name,
                            email=self.contact_email)
Пример #10
0
 def create(self, *args, **kwargs):
     contact_object = Contact(**kwargs)
     contact_object.save()
     return contact_object
Пример #11
0
 def create(self, validated_data):
     # {'name': 'new Contact 3'}
     # name='new Contact 3'
     contact = Contact(**validated_data)
     Contact.save()
     return contact