Example #1
0
    def setUp(self):
        self.client = Client()
        self.user = User.objects.create_user('testuser', '*****@*****.**',
                                             'testpass')
        self.user1 = User.objects.create_user('testuser1', '*****@*****.**',
                                              'testpass1')
        self.client.login(username='******', password='******')

        self.object_client = models.Client(name='test1',
                                           loyal=True,
                                           owner=self.user)
        self.object_client.save()

        self.object_contact = models.Contact(first_name='test1',
                                             last_name='test',
                                             email='*****@*****.**',
                                             phone='123',
                                             client=self.object_client,
                                             owner=self.user)
        self.object_contact.save()

        self.object_activity = models.Activity(title='test',
                                               text='test',
                                               contact=self.object_contact,
                                               client=self.object_client,
                                               owner=self.user)
        self.object_activity.save()
Example #2
0
def clients_get_all():

    clientsList = models.Client().get_all()

    return jsonify(
        {'clients':
         models.ClientSchema(many=True).dump(clientsList).data}), 200
Example #3
0
def populate_vacancy():
    for seed in vacancy_csv:
        seed_split = seed.split(',')
        client = models.Client(seed_split[0], seed_split[1], seed_split[2], int(seed_split[3]))
        vacancy = models.Vacancy(client)

        vacancies.append(vacancy)
Example #4
0
    def setUp(self):
        self.client = Client()
        self.user = User.objects.create_user('testuser', '*****@*****.**',
                                             'testpass')
        self.user1 = User.objects.create_user('testuser1', '*****@*****.**',
                                              'testpass1')
        self.client.login(username='******', password='******')

        self.object_client = models.Client(name='test1',
                                           loyal=True,
                                           owner=self.user)
        self.object_client.save()

        self.object_client1 = models.Client(name='test123',
                                            loyal=True,
                                            owner=self.user1)
        self.object_client1.save()
Example #5
0
    def test_distinct_activity(self):
        self.object_contact = models.Contact(first_name='test1',
                                             last_name='test',
                                             email='*****@*****.**',
                                             phone='123',
                                             owner=self.user)

        self.object_client = models.Client(name='test1',
                                           loyal=True,
                                           owner=self.user)

        self.object_contact.save()
        self.object_client.save()

        self.object = models.Activity(title='test',
                                      text='test',
                                      contact=self.object_contact,
                                      client=self.object_client,
                                      owner=self.user)
        self.object1 = models.Activity(title='test',
                                       text='test',
                                       contact=self.object_contact,
                                       client=self.object_client)

        self.object.save()
        self.object1.save()

        #Недоступность активности без аутентификации
        response = self.client.get(reverse('crm:activity', kwargs={'pk': 1}))
        self.assertIn("You don't have rights to view this activity",
                      response.content)
        self.assertNotIn('activity', response.context)

        response = self.client.get(reverse('crm:activity', kwargs={'pk': 2}))
        self.assertIn("You don't have rights to view this activity",
                      response.content)
        self.assertNotIn('activity', response.context)

        #Попытка обращения к несуществующей активности без аутентификации
        response = self.client.get(reverse('crm:activity', kwargs={'pk': 3}))
        self.assertTrue(response.content.startswith('<h1>Not Found</h1>'))

        self.client.login(username='******', password='******')
        #Успешная попытка получения информации о активносте принадлежащем пользователю
        response = self.client.get(reverse('crm:activity', kwargs={'pk': 1}))
        self.assertNotIn("You don't have rights to view this activity",
                         response.content)
        self.assertIn('activity', response.context)

        #Не успешная попытка получения информации об активности не принадлежащей пользователю
        response = self.client.get(reverse('crm:activity', kwargs={'pk': 2}))
        self.assertIn("You don't have rights to view this activity",
                      response.content)
        self.assertNotIn('activity', response.context)

        #Попытка обращения к несуществующей активности с аутентификацией
        response = self.client.get(reverse('crm:activity', kwargs={'pk': 3}))
        self.assertTrue(response.content.startswith('<h1>Not Found</h1>'))
Example #6
0
    def test_delete_client(self):
        self.object_contact = models.Contact(first_name='test1',
                                             last_name='test',
                                             email='*****@*****.**',
                                             phone='123',
                                             client=self.object_client,
                                             owner=self.user)
        self.object_contact.save()

        self.object = models.Activity(title='test',
                                      text='test',
                                      contact=self.object_contact,
                                      client=self.object_client,
                                      owner=self.user)
        self.object.save()

        #Неуспешное удаление, есть активность
        initial_data = {'action': 'Delete'}
        self.assertRaises(ProtectedError,
                          self.client.post,
                          path=reverse('crm:client', kwargs={'pk': 1}),
                          data=initial_data)

        #Создаем еще клиента
        self.object_client1 = models.Client(name='test1',
                                            loyal=True,
                                            owner=self.user)
        self.object_client1.save()

        self.client.login(username='******',
                          password='******')  #Перелогиниваемся

        #Пробуем удалить - неуспешно, не клиент текущего пользователя
        data_correct_input = {'action': 'Delete'}
        response = self.client.post(reverse('crm:client', kwargs={'pk': 2}),
                                    data_correct_input)
        self.assertRedirects(response, reverse('crm:client', kwargs={'pk': 2}))
        self.assertEqual(response.status_code, 302)
        self.assertTrue(models.Client.objects.get(pk=2))

        self.client.login(username='******',
                          password='******')  #Перелогиниваемся

        #Успешное удаление
        initial_data = {'action': 'Delete'}
        response = self.client.post(reverse('crm:client', kwargs={'pk': 2}),
                                    initial_data)

        self.assertEqual(
            self.client.session['deleted_data'],
            'Name: test1, Id: 2')  #Проверяем, что сохранили информацию
        self.assertEqual(response.status_code, 302)
        self.assertRedirects(response, reverse('crm:main'))
        self.assertEqual(models.Client.objects.count(), 1)
Example #7
0
    def test_distinct_client(self):
        self.object = models.Client(name='test1', loyal=True, owner=self.user)
        self.object1 = models.Client(name='test2',
                                     loyal=True,
                                     owner=self.user1)
        self.object.save()
        self.object1.save()

        #Недоступность клиентов без аутентификации
        response = self.client.get(reverse('crm:client', kwargs={'pk': 1}))
        self.assertIn("You don't have rights to view this client",
                      response.content)
        self.assertNotIn('client', response.context)

        response = self.client.get(reverse('crm:client', kwargs={'pk': 2}))
        self.assertIn("You don't have rights to view this client",
                      response.content)
        self.assertNotIn('client', response.context)

        #Попытка обращения к несуществующему клиенту без аутентификации
        response = self.client.get(reverse('crm:client', kwargs={'pk': 3}))
        self.assertTrue(response.content.startswith('<h1>Not Found</h1>'))

        self.client.login(username='******', password='******')

        #Успешная попытка получения информации о клиенте принадлежащем пользователю
        response = self.client.get(reverse('crm:client', kwargs={'pk': 1}))
        self.assertNotIn("You don't have rights to view this client",
                         response.content)
        self.assertIn('client', response.context)

        #Не успешная попытка получения информации о клиента не принадлежащем пользователю
        response = self.client.get(reverse('crm:client', kwargs={'pk': 2}))
        self.assertIn("You don't have rights to view this client",
                      response.content)
        self.assertNotIn('client', response.context)

        #Попытка обращения к несуществующему клиенту с аутентификацией
        response = self.client.get(reverse('crm:client', kwargs={'pk': 3}))
        self.assertTrue(response.content.startswith('<h1>Not Found</h1>'))
Example #8
0
    def testEntityCD(self):
        logging.debug('Testing entity create & delete...')
        sponsor = models.Sponsor()
        sponsor.name = 'Test Sponsor'
        sponsor.url = 'http://www.redcross.com'
        sponsor.address = '123 blaj blah, blah WA,USA'
        sponsor.phone = '(555)555-555'
        sponsor.put()
        assert sponsor.key()

        test_client = models.Client()
        test_client.set_defaults()
        test_client.displayName = "Bob"
        test_client.fullName = "Bob the builder"
        test_client.story = lorem_ipsum
        test_client.sponsor = sponsor
        test_client.imageURL = "http://www.test.org/img.png"
        test_client.put()
        assert test_client.key()

        test_donor = models.Donor()
        test_donor.address = "123 123 123"
        test_donor.name = "Donor"
        test_donor.phone = "(206)555-5555"
        test_donor.put()
        assert test_donor.key()

        test_user = models.User()
        test_user.user = users.get_current_user()
        test_user.isAdmin = True
        test_user.sponsor = sponsor
        test_user.put()
        assert test_user.key()

        tx = models.Transaction()
        fromAccount = 'stripe'
        toAccount = '%s/%s' % (sponsor.key(), test_client.key())
        amount = 1.00
        type = 'CREDIT'
        note = 'A donation from Bob'
        confirm = False
        tx.put()

        # clean up
        tx.delete()
        test_user.delete()
        test_client.delete()
        sponsor.delete()
        test_donor.delete()

        self.response.out.write("<html><body><p>Test Passed!</p></body></html>")
Example #9
0
    def setUp(self):
        self.object_client = models.Client(name='test', loyal=False)
        self.object_client.save()
        self.object_contact = models.Contact(first_name='test1',
                                             last_name='test',
                                             email='*****@*****.**',
                                             phone='123',
                                             client=self.object_client)
        self.object_contact.save()

        self.object = models.Activity(title='test',
                                      text='test',
                                      contact=self.object_contact,
                                      client=self.object_client)
        self.object.save()
Example #10
0
def clients_create():

    data = request.get_json()

    try:
        client = models.Client(**data)
    except:
        return jsonify({'message': 'Invalid parameter for client'}), 403

    if models.Client.get_one(id=client.id) != None:
        return jsonify({'message': 'Resource already exists'}), 409

    if not client.add():
        return jsonify({'message': 'Something is going wrong'}), 500

    return jsonify({'client': models.ClientSchema().dump(client).data}), 201
Example #11
0
    def test_change_client(self):
        self.object_client1 = models.Client(name='test1',
                                            loyal=True,
                                            owner=self.user)
        self.object_client1.save()

        #Попытка изменения имени клиента на уже существующее
        initial_data = {'name': 'test1', 'loyal': True}
        response = self.client.post(reverse('crm:client', kwargs={'pk': 1}),
                                    initial_data)
        self.assertFalse(response.context['form'].is_valid())
        self.assertFormError(response, 'form', 'name',
                             "Client with this Name already exists.")

        #Попытка передачи пустого имени
        initial_data = {'loyal': True}
        response = self.client.post(reverse('crm:client', kwargs={'pk': 1}),
                                    initial_data)
        self.assertFalse(response.context['form'].is_valid())
        self.assertFormError(response, 'form', 'name',
                             "This field is required.")

        #Попытка передачи пустой формы
        initial_data = {}
        response = self.client.post(reverse('crm:client', kwargs={'pk': 1}),
                                    initial_data)
        self.assertFalse(response.context['form'].is_valid())
        self.assertFormError(response, 'form', 'name',
                             "This field is required.")

        #Попытка изменения не своего клиента
        self.client.login(username='******', password='******')
        initial_data = {'name': 'test2'}
        response = self.client.post(reverse('crm:client', kwargs={'pk': 1}),
                                    initial_data)
        self.assertRedirects(response, reverse('crm:client', kwargs={'pk': 1}))
        self.assertEqual(response.status_code, 302)
        self.assertEqual(models.Client.objects.get(pk=1).name, 'test')

        #Успешная попытка изменения
        self.client.login(username='******', password='******')
        initial_data = {'name': 'test2'}
        response = self.client.post(reverse('crm:client', kwargs={'pk': 1}),
                                    initial_data)
        self.assertRedirects(response, reverse('crm:client', kwargs={'pk': 1}))
        self.assertEqual(response.status_code, 302)
        self.assertEqual(models.Client.objects.get(pk=1).name, 'test2')
Example #12
0
    def start_connection(self, host, port):

        # Connection to server
        addr = (host, port)
        print('starting connection to', addr)
        sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        sock.setblocking(False)
        sock.connect_ex(addr)

        # Create Client datatype
        events = selectors.EVENT_READ | selectors.EVENT_WRITE
        myHost, myPort = sock.getsockname()
        data = models.Client(sock, myPort)

        # Add socket to selectors
        self.sel.register(sock, events, data=data)

        return data
Example #13
0
    def store():
        try:
            name = request.json['name']
            username = request.json['username']
            email = request.json['email']
            password = request.json['password']

            new_client = models.Client(name, username, email, password)
            db.session.add(new_client)
            db.session.commit()

            return jsonify({'client_id': new_client.id})
        except IntegrityError as e:
            db.session.rollback()
            return jsonify({'error': e.orig.args[0]}), 400
        except KeyError as e:
            db.session.rollback()
            return jsonify({'error': 'Missing ' + ','.join(e.args)}), 400
Example #14
0
    def buildKodiac(self):
        kodiac = models.Client()
        kodiac.set_defaults()
        kodiac.shortCode = 'kodiak'
        kodiac.name = "Kodiak"
        kodiac.fullName = "Chris"
        kodiac.imageURL = "/images/clients/Kodiak.png"
        kodiac.sponsor = self.sponsors[0]

        kodiac.story = \
"""<p>Meet Chris. His friends call him \"Kodiak\".</p>
<p>He has a bear of a personality and always hugs instead of shaking hands.
Moved to Seattle this past fall, but have been unable to find a job or steady housing.
He is currently living in a men's shelter that doesn't have a kitchen or any refrigeration.
<p>The food stamps he gets can only be used for dry foods - everything which he has to carry in
his backpack.  He wants a hot meal and a new winter coat.</p><p> You can help.</p>
"""

        kodiac.put()
        self.clients.append(kodiac)
Example #15
0
def main() -> None:
    """
    Main client function, it will read command-line, create a models.Client instance
    and call its run() method.

    :return: None
    """

    address, port = read_options()
    context = ssl.create_default_context()
    context.check_hostname = False
    context.load_verify_locations(os.getenv("PATH_TO_CERT"))

    client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    client_socket.connect((address, port))
    client_socket = context.wrap_socket(client_socket)
    print(models.Constants.connected_message(address, port))

    client = models.Client(address, client_socket, context)
    client.run()
Example #16
0
    def test_clients(self):
        self.object = models.Client(name='test1', loyal=True, owner=self.user)
        self.object.save()
        #Проверка доступности клиента без аутентификации
        response = self.client.get(reverse('crm:clients'))
        self.assertIn('No clients are available.', response.content)
        self.assertNotIn('test1', response.content)
        self.assertFalse(response.context['clients_list'])

        #Недоступность чужих клиентов
        self.client.login(username='******', password='******')
        response = self.client.get(reverse('crm:clients'))
        self.assertIn('No clients are available.', response.content)
        self.assertFalse(response.context['clients_list'])

        #Доступность своего клиента
        self.client.login(username='******', password='******')
        response = self.client.get(reverse('crm:clients'))
        self.assertNotIn('No clients are available.', response.content)
        self.assertIn('test1', response.content)
        self.assertTrue(response.context['clients_list'])
Example #17
0
def contacts_create(id):

    data = request.get_json()

    try:
        contact = models.Contact(**data)
    except:
        return jsonify({'message': 'Invalid parameters for contact'}), 403

    if models.Contact.get_one(id=contact.id) != None:
        return jsonify({'message': 'Resource already exists'}), 409

    contact.client = models.Client().get_one(id=id)

    if contact.client == None:
        return jsonify({'message': 'resource not found'}), 404

    if not contact.add():
        return jsonify({'message': 'Something is going wrong'}), 500

    return jsonify({'contact': models.ContactSchema().dump(contact).data}), 201
Example #18
0
    def get(self):

        sponsor = models.Sponsor()
        sponsor.name = random_sentence(3).title()
        sponsor.url = 'http://www.redcross.com/'
        sponsor.address = '123 Streeet Ave. S, Blah WA,USA'
        sponsor.phone = '(555)555-555'
        sponsor.put()
        self.response.out.write("<p>Created  Sponsor:[%s] </p>" %
                                (sponsor.key().id_or_name()))
        for i in range(0, 5):
            test_client = models.Client()
            test_client.set_defaults()
            test_client.displayName = "Bob"
            test_client.fullName = "Bob " + random_sentence(1).title()
            test_client.story = '<p>' + random_sentence(100) + '</p>'
            test_client.sponsor = sponsor
            test_client.imageURL = "http://www.test.org/img%i.png" % i
            test_client.put()
            self.response.out.write("<p>Created Client:[%s]</p>" %
                                    test_client.key().id_or_name())
Example #19
0
    def test_activities(self):
        self.object_contact = models.Contact(first_name='test1',
                                             last_name='test',
                                             email='*****@*****.**',
                                             phone='123',
                                             owner=self.user)

        self.object_client = models.Client(name='test1',
                                           loyal=True,
                                           owner=self.user)

        self.object_contact.save()
        self.object_client.save()

        self.object = models.Activity(title='test1',
                                      text='test',
                                      contact=self.object_contact,
                                      client=self.object_client,
                                      owner=self.user)

        self.object.save()

        #Проверка доступности активности без аутентификации
        response = self.client.get(reverse('crm:activities'))
        self.assertIn('No activities are available', response.content)
        self.assertNotIn('test1', response.content)
        self.assertFalse(response.context['activities_list'])

        #Недоступность чужих активностей
        self.client.login(username='******', password='******')
        response = self.client.get(reverse('crm:activities'))
        self.assertIn('No activities are available', response.content)
        self.assertFalse(response.context['activities_list'])

        #Доступность своей активности
        self.client.login(username='******', password='******')
        response = self.client.get(reverse('crm:activities'))
        self.assertNotIn('No activities are available', response.content)
        self.assertIn('test1', response.content)
        self.assertTrue(response.context['activities_list'])
Example #20
0
def add_clients():
    name = input("Insira o nome: ")
    cpf = input("Insira o CPF: ")
    car_board = input("Insira a placa do carro: ")

    while True:
        try:
            status = int(input("Insira o status: "))

            if status != models.Status.ACTIVE and status != models.Status.INACTIVE:
                raise Exception(
                    'Insira um status valido (1 - ATIVO ou 2 - INATIVO)')
        except Exception as e:
            print(e)
        else:
            break

    client = models.Client(name, cpf, car_board, status)
    try:
        create_client(client)
    except Exception as e:
        print(e)
 def on_post(self, req, resp):
     data = req.media
     db_session = req.context['db_session']
     client = models.Client(**data)
     db_session.add(client)
     db_session.flush()
     for cur_name in {'USD', 'RUB'}:
         cur = db_session.query(
             models.Currency).filter_by(name=cur_name).one()
         acc = models.TransactionAccount(client_id=client.id,
                                         currency_id=cur.id,
                                         balance=0)
         client.transaction_accounts.append(acc)
     db_session.commit()
     resp_payload = {
         'created': {
             'client_account':
             str(client),
             'transaction_accounts':
             [str(acc) for acc in client.transaction_accounts]
         }
     }
     resp.body = json.dumps(resp_payload)
Example #22
0
def populate_clients():
    for seed in clients_csv:
        seed_split = seed.split(',')
        client = models.Client(seed_split[0], seed_split[1], seed_split[2], int(seed_split[3]))
        clients.append(client)
Example #23
0
    def test_change_activity(self):
        self.object_client1 = models.Client(name='test2',
                                            loyal=True,
                                            owner=self.user)
        self.object_client1.save()

        self.object_contact1 = models.Contact(first_name='test2',
                                              last_name='test',
                                              email='*****@*****.**',
                                              phone='123',
                                              client=self.object_client1,
                                              owner=self.user)
        self.object_contact1.save()
        #Пробуем изменить активность выбрав клиента, который не связан с контактом
        data_client_input = {
            'title': 'test',
            'text': 'test',
            'client': 2,
            'contact': 1
        }

        response = self.client.post(reverse('crm:activity', kwargs={'pk': 1}),
                                    data_client_input)
        self.failIf(response.context['form'].is_valid())
        self.assertIn('Chosen contact doesn&#39;t belong to chosen client',
                      response.content)

        #Аналогично пытаемся отправить форму с контактом не связанным с клиентом
        data_contact_input = {
            'title': 'test',
            'text': 'test',
            'client': 1,
            'contact': 2
        }

        response = self.client.post(reverse('crm:activity', kwargs={'pk': 1}),
                                    data_contact_input)
        self.failIf(response.context['form'].is_valid())
        self.assertIn('Chosen contact doesn&#39;t belong to chosen client',
                      response.content)

        #Передаем связанных клиента/контакта, успешно меняем запись
        data_correct_input = {
            'title': 'test',
            'text': 'test',
            'client': 2,
            'contact': 2
        }

        response = self.client.post(reverse('crm:activity', kwargs={'pk': 1}),
                                    data_correct_input)
        self.assertRedirects(response, reverse('crm:activity',
                                               kwargs={'pk': 1}))
        self.assertEqual(response.status_code, 302)

        #Проверяем, что новые значения сохранились в базе данных
        activity = models.Activity.objects.get(pk=1)
        self.assertTrue(activity.client.id == activity.contact.id == 2)

        #Проверяем невозможность изменения отправленной активности
        content = {'action': 'Send'}
        self.client.post(reverse('crm:activity', kwargs={'pk': 1}), content)
        activity = models.Activity.objects.get(pk=1)

        self.assertIsNotNone(
            activity.send_date)  #Проверяем, что дата отправки проставилась

        data_correct_input = {
            'title': 'test',
            'text': 'test',
            'client': 1,
            'contact': 1
        }

        response = self.client.post(reverse('crm:activity', kwargs={'pk': 1}),
                                    data_correct_input)
        self.failIf(response.context['form'].is_valid())
        self.assertFormError(response, 'form', None,
                             "You can't change activity which was sent")

        #Создаем еще одну активность
        self.object2 = models.Activity(title='test1',
                                       text='test1',
                                       contact=self.object_contact,
                                       client=self.object_client,
                                       owner=self.user)
        self.object2.save()

        self.client.login(username='******',
                          password='******')  #Перелогиниваемся

        #Пробуем изменить - неуспешно, так как пользователь - не owner объекта
        data_correct_input = {
            'title': 'test1123',
            'text': 'test',
            'client': 1,
            'contact': 1
        }
        response = self.client.post(reverse('crm:activity', kwargs={'pk': 2}),
                                    data_correct_input)
        self.assertRedirects(response, reverse('crm:activity',
                                               kwargs={'pk': 2}))
        self.assertEqual(response.status_code, 302)
        self.assertEqual(models.Activity.objects.get(pk=2).title, 'test1')

        #Пробуем удалить - неуспешно
        data_correct_input = {'action': 'Delete'}
        response = self.client.post(reverse('crm:activity', kwargs={'pk': 2}),
                                    data_correct_input)
        self.assertRedirects(response, reverse('crm:activity',
                                               kwargs={'pk': 2}))
        self.assertEqual(response.status_code, 302)
        self.assertTrue(models.Activity.objects.get(pk=2))

        self.client.login(username='******',
                          password='******')  #Перелогиниваемся

        #Пробуем изменить - успешно
        data_correct_input = {
            'title': 'test1',
            'text': 'test',
            'client': 2,
            'contact': 2
        }
        response = self.client.post(reverse('crm:activity', kwargs={'pk': 2}),
                                    data_correct_input)
        self.assertRedirects(response, reverse('crm:activity',
                                               kwargs={'pk': 2}))
        self.assertEqual(response.status_code, 302)

        #Пробуем удалить
        data_correct_input = {'action': 'Delete'}
        response = self.client.post(reverse('crm:activity', kwargs={'pk': 2}),
                                    data_correct_input)

        self.assertTrue(self.client.session['deleted_data']
                        )  #Проверяем, что сохранили информацию
        self.assertEqual(response.status_code, 302)
        self.assertRedirects(response, reverse('crm:main'))
        self.assertEqual(models.Activity.objects.count(), 1)
Example #24
0
    def test_creation_activity(self):
        error = "Select a valid choice. That choice is not one of the available choices."
        #Попытка создания с несуществующим клиентом
        initial_data = {
            'title': 'test',
            'text': 'test',
            'client': 5,
            'contact': 1
        }

        response = self.client.post(reverse('crm:new_activity'), initial_data)
        self.assertFalse(response.context['form'].is_valid())
        self.assertFormError(response, 'form', 'client', error)

        #Попытка создания с несуществующим контактом
        initial_data = {
            'title': 'test',
            'text': 'test',
            'client': 1,
            'contact': 5
        }

        response = self.client.post(reverse('crm:new_activity'), initial_data)
        self.assertFalse(response.context['form'].is_valid())
        self.assertFormError(response, 'form', 'contact', error)

        #Успешная попытка создания
        initial_data = {
            'title': 'test',
            'text': 'test',
            'client': 1,
            'contact': 1
        }

        response = self.client.post(reverse('crm:new_activity'), initial_data)

        self.assertRedirects(response, reverse('crm:activity',
                                               kwargs={'pk': 2}))
        self.assertEqual(response.status_code, 302)

        #Попытка создания с чужим клиентом/контактом
        self.object_client1 = models.Client(name='test2',
                                            loyal=True,
                                            owner=self.user1)
        self.object_client1.save()

        self.object_contact1 = models.Contact(first_name='test2',
                                              last_name='test',
                                              email='*****@*****.**',
                                              phone='123',
                                              client=self.object_client1,
                                              owner=self.user1)
        self.object_contact1.save()
        initial_data = {
            'title': 'test',
            'text': 'test',
            'client': 2,
            'contact': 2
        }

        response = self.client.post(reverse('crm:new_activity'), initial_data)
        self.assertFormError(response, 'form', 'client', error)
Example #25
0
 def setUp(self):
     self.object = models.Client(name='test', loyal=False)
     self.object.save()
Example #26
0
 def test_unique_name(self):
     #Попытка сохранения клиента с существующим именем
     self.object1 = models.Client(name='test', loyal=True)
     self.assertRaises(IntegrityError, self.object1.save)
Example #27
0
 def test_diff_name(self):
     #Сохранение клиента с уникальным именем
     self.object1 = models.Client(name='test1', loyal=True)
     self.object1.save()
     self.assertEqual(models.Client.objects.count(), 2)
Example #28
0
import models
from models import settings
import psutil
import time
import numpy as np

if __name__ == "__main__":
    if input("The current data will be destroyed, is this ok?") == "y":
        cpus = []
        t = 0
        dc = models.DC(cap=settings.MAX_SERVER_LOAD)
        clients = list()
        clients.append(models.Client(2, settings.CLIENT1_BW, dc))
        clients.append(models.Client(3, settings.CLIENT2_BW, dc))
        clients.append(models.Client(4, settings.CLIENT3_BW, dc))
        rp = models.RewardProvider('192.168.0.22', clients, dc)
        try:
            while 1:
                print(
                    "T =", t,
                    " ------------------------------------------------------------------"
                )
                cpus.append(psutil.cpu_percent())
                print("CPU=", np.mean(cpus))
                time.sleep(settings.STEP)
                rp.step()
                t += 1
                print(cpus)
        except:
            print(cpus)