@Test public void testUpdateMsisdnNumberAlreadyInUse() throws Exception { Long firstMsisdn = subscriptionHelper.makeNumber(); Long secondMsisdn = subscriptionHelper.makeNumber(); // create two child subscriptions with different MSISDNs Subscription firstSubscription = subscriptionHelper.mksub( SubscriptionOrigin.MCTS_IMPORT, DateTime.now(), SubscriptionPackType.CHILD, firstMsisdn); String firstChildId = "0123456789"; firstSubscription.getSubscriber().setChild(new MctsChild(firstChildId)); subscriberDataService.update(firstSubscription.getSubscriber()); Subscription secondSubscription = subscriptionHelper.mksub( SubscriptionOrigin.MCTS_IMPORT, DateTime.now(), SubscriptionPackType.CHILD, secondMsisdn); String secondChildId = "9123456789"; secondSubscription.getSubscriber().setChild(new MctsChild(secondChildId)); subscriberDataService.update(secondSubscription.getSubscriber()); // try to set the second child's MSISDN to the same number as the first child's MSISDN Reader reader = createUpdateReaderWithHeaders("1," + secondChildId + ",,,,,,,,,,,,," + firstMsisdn); mctsBeneficiaryUpdateService.updateBeneficiaryData(reader); List<SubscriptionError> errors = subscriptionErrorDataService.findByContactNumber(firstMsisdn); assertEquals(1, errors.size()); }