def test_when_device_does_not_exist_and_there_is_no_asset_identity(self): device = DeviceFactory() util._create_device = lambda x: device util.create_deployments([self.data], self.user, self.mass_deployment) deployments = Deployment.objects.all() self.assertEqual(deployments.count(), 1) self.assertEqual(deployments[0].device, device)
def test_when_device_does_not_exist_and_asset_identity_is_given(self): device = DeviceFactory() device_info = DeviceInfoFactory(ralph_device_id=device.id) asset = AssetFactory( barcode="testbarcode", device_info=device_info, ) self.data.update({"asset_identity": asset.barcode}) util.create_deployments([self.data], self.user, self.mass_deployment) deployments = Deployment.objects.all() self.assertEqual(deployments.count(), 1) self.assertEqual(deployments[0].device, device)
def post(self, *args, **kwargs): mass_deployment = get_object_or_404( MassDeploymentModel, id=kwargs.get('deployment'), is_done=False, ) self.form = MassDeploymentForm(self.request.POST) if self.form.is_valid(): create_deployments( self.form.cleaned_data['csv'], self.request.user, mass_deployment, ) mass_deployment.generated_csv = self.form.data['csv'].strip() mass_deployment.is_done = True mass_deployment.save() messages.success(self.request, "Deployment initiated.") return HttpResponseRedirect('/') messages.error(self.request, "Please correct the errors.") return super(MassDeployment, self).get(*args, **kwargs)
def test_when_everything_works_fine(self): EthernetFactory(mac="000000000000") util.create_deployments([self.data], self.user, self.mass_deployment) self.assertEqual(Deployment.objects.count(), 1)