def test_fetched_controlled_circuit_owner_is_not_the_controller(self): controller = create_user(email='*****@*****.**') circuit = create_circuit(name='c1', controller=controller) request = self.factory.get(self.url, format='json') force_authenticate(request, controller) response = self.view(request) self.assertCircuitEqual(response.data, circuit)
def setUp(self): self.user = create_user() self.circuit = create_circuit(name='c1') self.circuit.controller = self.user self.circuit.save() self.view = ActivationLogView.as_view() self.factory = APIRequestFactory() self.url = reverse('circuit-activation-log')
def setUp(self): self.user = create_user() self.circuit = create_circuit(name='c1') self.circuit.collaborators.add(self.user) self.view = CircuitScheduleView.as_view() self.factory = APIRequestFactory() self.url = reverse('circuit-schedule', kwargs={'circuit_id': self.circuit.pk})
def setUp(self): self.user = create_user() self.circuit = create_circuit(name='c1') self.circuit.collaborators.add(self.user) self.view = CircuitOneTimeActivationView.as_view() self.factory = APIRequestFactory() self.url = reverse('circuit-one-time-activations', kwargs={'circuit_id': self.circuit.pk})
def setUp(self): self.user = create_user() self.circuit = create_circuit(name='c1') self.circuit.collaborators.add(self.user) self.circuit_not_related = create_circuit(name='c2') self.view = CircuitViewSet.as_view(actions={ 'get': 'retrieve' }) self.factory = APIRequestFactory() self.url = reverse('circuit-detail', kwargs={'pk': self.circuit.pk})
def test_post_circuit_not_owned(self): today = datetime.datetime.now(tz=pytz.UTC) data = { 'amount': 200, 'timestamp': today.strftime('%Y-%m-%dT%H:%M:%S') } user2 = create_user(email="*****@*****.**") request = self.factory.post(self.url, data=data, format='json') force_authenticate(request, user2) response = self.view(request, circuit_id=self.circuit.pk) self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
def test_fetch_circuit_not_owned(self): today = datetime.datetime.now(tz=pytz.UTC) tomorrow = today + datetime.timedelta(days=1) yesterday = today - +datetime.timedelta(days=1) s1 = create_scheduled_activation(self.circuit, timestamp=yesterday) s2 = create_scheduled_activation(self.circuit, timestamp=today) s3 = create_scheduled_activation(self.circuit, timestamp=tomorrow) user2 = create_user(email="*****@*****.**") request = self.factory.get(self.url, format='json') force_authenticate(request, user2) response = self.view(request, circuit_id=self.circuit.pk) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertScheduleEqual(response.data, [s1, s2, s3])
def test_put_circuit_not_owned(self): today = datetime.datetime.now(tz=pytz.UTC) tomorrow = today + datetime.timedelta(days=1) yesterday = today - +datetime.timedelta(days=1) create_scheduled_activation(self.circuit, timestamp=yesterday) create_scheduled_activation(self.circuit, timestamp=today) create_scheduled_activation(self.circuit, timestamp=tomorrow) data = [{'active': False, 'amount': 200, 'time': '21:00:49'}] user2 = create_user(email="*****@*****.**") request = self.factory.put(self.url, data=data, format='json') force_authenticate(request, user2) response = self.view(request, circuit_id=self.circuit.pk) self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
def test_fetch_as_collaborators(self): today = datetime.datetime.now(tz=pytz.UTC) tomorrow = today + datetime.timedelta(days=1) yesterday = today - +datetime.timedelta(days=1) create_scheduled_one_time_activation(self.circuit, timestamp=yesterday) s2 = create_scheduled_one_time_activation(self.circuit, timestamp=today) create_scheduled_one_time_activation(self.circuit, timestamp=tomorrow) user2 = create_user(email="*****@*****.**") self.circuit.collaborators.add(user2) request = self.factory.get(self.url, format='json') force_authenticate(request, user2) response = self.view(request, circuit_id=self.circuit.pk) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertOneTimeActivationsEqual(response.data, [s2])
def test_post_as_collaborator(self): today = datetime.datetime.now(tz=pytz.UTC) data = { 'amount': 200, 'timestamp': today.strftime('%Y-%m-%dT%H:%M:%S') } user2 = create_user(email="*****@*****.**") self.circuit.collaborators.add(user2) request = self.factory.post(self.url, data=data, format='json') force_authenticate(request, user2) response = self.view(request, circuit_id=self.circuit.pk) activation = self.circuit.one_time_activations \ .filter(timestamp__date=datetime.date.today()) \ .order_by('-timestamp') \ .first() self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertOneTimeActivationEqual(data, activation)
def setUp(self): self.user = create_user() self.view = CircuitViewSet.as_view(actions={'get': 'list'}) self.factory = APIRequestFactory() self.url = reverse('circuit-list')
def setUp(self): self.user = create_user() self.view = ControlledCircuitView.as_view() self.factory = APIRequestFactory() self.url = reverse('mine-circuit')