@Test(expected = NotFoundException.class) public void testNullPerson() { Consumer c = mock(Consumer.class); Owner o = mock(Owner.class); UserServiceAdapter usa = mock(UserServiceAdapter.class); UserPrincipal up = mock(UserPrincipal.class); OwnerCurator oc = mock(OwnerCurator.class); ConsumerTypeCurator ctc = mock(ConsumerTypeCurator.class); ConsumerType cType = new ConsumerType(ConsumerTypeEnum.PERSON); when(o.getKey()).thenReturn("testOwner"); when(oc.lookupByKey(eq("testOwner"))).thenReturn(o); when(c.getType()).thenReturn(cType); when(c.getName()).thenReturn("testConsumer"); when(ctc.lookupByLabel(eq("person"))).thenReturn(cType); when(up.canAccess(eq(o), eq(SubResource.CONSUMERS), eq(Access.CREATE))).thenReturn(true); // usa.findByLogin() will return null by default no need for a when ConsumerResource cr = new ConsumerResource( null, ctc, null, null, null, null, null, i18n, null, null, null, null, usa, null, null, oc, null, null, null, null, null, null, new CandlepinCommonTestConfig(), null, null, null, consumerBindUtil, productCurator, null); cr.create(c, up, null, "testOwner", null, true); }
@Test public void hypervisorCheckInCreatesNewConsumer() throws Exception { Owner owner = new Owner("admin"); Map<String, List<GuestId>> hostGuestMap = new HashMap<String, List<GuestId>>(); hostGuestMap.put("test-host", Arrays.asList(new GuestId("GUEST_A"), new GuestId("GUEST_B"))); when(consumerCurator.findByUuid(eq("test-host"))).thenReturn(null); when(ownerCurator.lookupByKey(eq(owner.getKey()))).thenReturn(owner); when(principal.canAccess(eq(owner), eq(Access.ALL))).thenReturn(true); when(consumerTypeCurator.lookupByLabel(eq(ConsumerTypeEnum.HYPERVISOR.getLabel()))) .thenReturn(hypervisorType); when(idCertService.generateIdentityCert(any(Consumer.class))) .thenReturn(new IdentityCertificate()); HypervisorCheckInResult result = hypervisorResource.hypervisorCheckIn(hostGuestMap, principal, owner.getKey()); Set<Consumer> created = result.getCreated(); assertEquals(1, created.size()); Consumer c1 = created.iterator().next(); assertEquals("test-host", c1.getUuid()); assertEquals(2, c1.getGuestIds().size()); assertEquals("GUEST_A", c1.getGuestIds().get(0).getGuestId()); assertEquals("GUEST_B", c1.getGuestIds().get(1).getGuestId()); assertEquals("x86_64", c1.getFact("uname.machine")); assertEquals("hypervisor", c1.getType().getLabel()); }
/** @return */ private Owner getOwner() { // just grab the first one return principal.getOwners().get(0); }