Commit 12bdbbd2 authored by Noel Alonso's avatar Noel Alonso
Browse files

Desplaza control de usuario a la clase aggregate

Adapta tests

Añade nuevos tests para comprobar que no se pueda realizar operaciones
sobre configuraciones de otros usuarios
parent e37f3357
Loading
Loading
Loading
Loading
+29 −4
Original line number Diff line number Diff line
@@ -31,6 +31,7 @@ import es.redmic.commandslib.usersettings.commands.SaveSettingsCommand;
import es.redmic.commandslib.usersettings.commands.UpdateSettingsAccessedDateCommand;
import es.redmic.commandslib.usersettings.commands.UpdateSettingsCommand;
import es.redmic.commandslib.usersettings.statestore.SettingsStateStore;
import es.redmic.restlib.config.UserService;
import es.redmic.usersettingslib.dto.SettingsDTO;
import es.redmic.usersettingslib.events.SettingsEventTypes;
import es.redmic.usersettingslib.events.clone.CloneSettingsEvent;
@@ -49,27 +50,38 @@ public class PersistenceAggregate extends Aggregate {

	private SettingsStateStore settingsStateStore;

	public PersistenceAggregate(SettingsStateStore settingsStateStore) {
	private UserService userService;

	public PersistenceAggregate(SettingsStateStore settingsStateStore, UserService userService) {
		this.settingsStateStore = settingsStateStore;
		this.userService = userService;
	}

	public PartialSaveSettingsEvent process(SaveSettingsCommand cmd) {

		assert settingsStateStore != null;

		String userId = userService.getUserId();

		String id = cmd.getPersistence().getId();

		String historicalEventUserId = null;

		if (exist(id)) {
			Event state = getStateFromHistory(id);
			loadFromHistory(state);
			checkState(id, state.getType());
			historicalEventUserId = state.getUserId();
		}

		this.setAggregateId(id);

		authorshipCheck(userId, historicalEventUserId);

		PartialSaveSettingsEvent evt = new PartialSaveSettingsEvent(cmd.getPersistence());
		evt.setAggregateId(id);
		evt.setVersion(1);
		evt.setUserId(userId);
		return evt;
	}

@@ -77,6 +89,8 @@ public class PersistenceAggregate extends Aggregate {

		assert settingsStateStore != null;

		String userId = userService.getUserId();

		String id = cmd.getPersistence().getId();

		Event state = getStateFromHistory(id);
@@ -85,9 +99,12 @@ public class PersistenceAggregate extends Aggregate {

		checkState(id, state.getType());

		authorshipCheck(userId, state.getUserId());

		PartialSaveSettingsEvent evt = new PartialSaveSettingsEvent(cmd.getPersistence());
		evt.setAggregateId(id);
		evt.setVersion(getVersion() + 1);
		evt.setUserId(userId);
		return evt;
	}

@@ -95,6 +112,8 @@ public class PersistenceAggregate extends Aggregate {

		assert settingsStateStore != null;

		String userId = userService.getUserId();

		String id = cmd.getSettingsId();

		Event state = getStateFromHistory(id);
@@ -103,9 +122,12 @@ public class PersistenceAggregate extends Aggregate {

		checkState(id, state.getType());

		authorshipCheck(userId, state.getUserId());

		CheckDeleteSettingsEvent evt = new CheckDeleteSettingsEvent();
		evt.setAggregateId(id);
		evt.setVersion(getVersion() + 1);
		evt.setUserId(userId);
		return evt;
	}

@@ -113,6 +135,8 @@ public class PersistenceAggregate extends Aggregate {

		assert settingsStateStore != null;

		String userId = userService.getUserId();

		String id = cmd.getPersistence().getId();

		if (exist(id)) {
@@ -125,6 +149,7 @@ public class PersistenceAggregate extends Aggregate {
		CloneSettingsEvent evt = new CloneSettingsEvent(cmd.getPersistence());
		evt.setAggregateId(id);
		evt.setVersion(1);
		evt.setUserId(userId);
		return evt;
	}

@@ -132,6 +157,8 @@ public class PersistenceAggregate extends Aggregate {

		assert settingsStateStore != null;

		String userId = userService.getUserId();

		String id = cmd.getSettingsId();

		Event state = getStateFromHistory(id);
@@ -143,7 +170,7 @@ public class PersistenceAggregate extends Aggregate {
		UpdateSettingsAccessedDateEvent evt = new UpdateSettingsAccessedDateEvent();
		evt.setAggregateId(id);
		evt.setVersion(getVersion() + 1);
		evt.setUserId(state.getUserId());
		evt.setUserId(userId);
		return evt;
	}

@@ -187,8 +214,6 @@ public class PersistenceAggregate extends Aggregate {
			apply((SettingsCancelledEvent) event);
			break;
		default:
			// TODO: añadir exepción
			logger.debug("Evento no manejado ", event.getType());
			throw new ItemLockedException("id", event.getAggregateId());
		}
	}
+26 −2
Original line number Diff line number Diff line
@@ -24,10 +24,12 @@ import org.mapstruct.factory.Mappers;

import es.redmic.brokerlib.avro.common.Event;
import es.redmic.commandslib.aggregate.Aggregate;
import es.redmic.commandslib.exceptions.ItemLockedException;
import es.redmic.commandslib.usersettings.commands.ClearCommand;
import es.redmic.commandslib.usersettings.commands.DeselectCommand;
import es.redmic.commandslib.usersettings.commands.SelectCommand;
import es.redmic.commandslib.usersettings.statestore.SettingsStateStore;
import es.redmic.restlib.config.UserService;
import es.redmic.usersettingslib.dto.SettingsDTO;
import es.redmic.usersettingslib.events.SettingsEventTypes;
import es.redmic.usersettingslib.events.clearselection.PartialClearSelectionEvent;
@@ -44,27 +46,39 @@ public class SelectionAggregate extends Aggregate {

	private SettingsStateStore settingsStateStore;

	public SelectionAggregate(SettingsStateStore settingsStateStore) {
	private UserService userService;

	public SelectionAggregate(SettingsStateStore settingsStateStore, UserService userService) {
		this.settingsStateStore = settingsStateStore;
		this.userService = userService;
	}

	public PartialSelectEvent process(SelectCommand cmd) {

		assert settingsStateStore != null;

		String userId = userService.getUserId();

		String id = cmd.getSelection().getId();

		String historicalEventUserId = null;

		if (exist(id)) {
			Event state = getStateFromHistory(id);
			loadFromHistory(state);
			checkState(id, state.getType());
			historicalEventUserId = state.getUserId();
		}

		authorshipCheck(userId, historicalEventUserId);

		this.setAggregateId(id);

		PartialSelectEvent evt = new PartialSelectEvent(cmd.getSelection());
		evt.setAggregateId(id);
		evt.setVersion(1);
		evt.setUserId(userId);

		return evt;
	}

@@ -72,6 +86,8 @@ public class SelectionAggregate extends Aggregate {

		assert settingsStateStore != null;

		String userId = userService.getUserId();

		String id = cmd.getSelection().getId();

		Event state = getStateFromHistory(id);
@@ -80,9 +96,12 @@ public class SelectionAggregate extends Aggregate {

		checkState(id, state.getType());

		authorshipCheck(userId, state.getUserId());

		PartialDeselectEvent evt = new PartialDeselectEvent(cmd.getSelection());
		evt.setAggregateId(id);
		evt.setVersion(getVersion() + 1);
		evt.setUserId(userId);
		return evt;
	}

@@ -90,6 +109,8 @@ public class SelectionAggregate extends Aggregate {

		assert settingsStateStore != null;

		String userId = userService.getUserId();

		String id = cmd.getSelection().getId();

		Event state = getStateFromHistory(id);
@@ -98,9 +119,12 @@ public class SelectionAggregate extends Aggregate {

		checkState(id, state.getType());

		authorshipCheck(userId, state.getUserId());

		PartialClearSelectionEvent evt = new PartialClearSelectionEvent(cmd.getSelection());
		evt.setAggregateId(id);
		evt.setVersion(getVersion() + 1);
		evt.setUserId(userId);
		return evt;
	}

@@ -144,7 +168,7 @@ public class SelectionAggregate extends Aggregate {
			apply((SettingsCancelledEvent) event);
			break;
		default:
			logger.debug("Evento no manejado ", event.getType());
			throw new ItemLockedException("id", event.getAggregateId());
		}
	}

+8 −80
Original line number Diff line number Diff line
@@ -137,10 +137,7 @@ public class SettingsCommandHandler extends CommandHandler {

	public SettingsDTO select(SelectCommand cmd) {

		SelectionAggregate agg = new SelectionAggregate(settingsStateStore);

		// Se procesa el comando, obteniendo el evento generado
		logger.debug("Procesando SelectCommand");
		SelectionAggregate agg = new SelectionAggregate(settingsStateStore, userService);

		PartialSelectEvent event = agg.process(cmd);

@@ -148,16 +145,9 @@ public class SettingsCommandHandler extends CommandHandler {
		if (event == null)
			return null;

		String userId = userService.getUserId();

		event.setUserId(userId);
		event.getSelection().setUserId(userId);

		// Se aplica el evento
		agg.apply(event);

		logger.debug("Aplicado evento: " + event.getType());

		// Crea la espera hasta que se responda con evento completado
		CompletableFuture<SettingsDTO> completableFuture = getCompletableFeature(event.getSessionId());

@@ -170,10 +160,7 @@ public class SettingsCommandHandler extends CommandHandler {

	public SettingsDTO deselect(DeselectCommand cmd) {

		SelectionAggregate agg = new SelectionAggregate(settingsStateStore);

		// Se procesa el comando, obteniendo el evento generado
		logger.debug("Procesando DeselectCommand");
		SelectionAggregate agg = new SelectionAggregate(settingsStateStore, userService);

		PartialDeselectEvent event = agg.process(cmd);

@@ -181,19 +168,9 @@ public class SettingsCommandHandler extends CommandHandler {
		if (event == null)
			return null;

		String userId = userService.getUserId();

		event.setUserId(userId);
		event.getSelection().setUserId(userId);

		event.setUserId(userId);
		event.getSelection().setUserId(userId);

		// Se aplica el evento
		agg.apply(event);

		logger.debug("Aplicado evento: " + event.getType());

		// Crea la espera hasta que se responda con evento completado
		CompletableFuture<SettingsDTO> completableFuture = getCompletableFeature(event.getSessionId());

@@ -206,10 +183,7 @@ public class SettingsCommandHandler extends CommandHandler {

	public SettingsDTO clear(ClearCommand cmd) {

		SelectionAggregate agg = new SelectionAggregate(settingsStateStore);

		// Se procesa el comando, obteniendo el evento generado
		logger.debug("Procesando ClearCommand");
		SelectionAggregate agg = new SelectionAggregate(settingsStateStore, userService);

		PartialClearSelectionEvent event = agg.process(cmd);

@@ -217,16 +191,9 @@ public class SettingsCommandHandler extends CommandHandler {
		if (event == null)
			return null;

		String userId = userService.getUserId();

		event.setUserId(userId);
		event.getSelection().setUserId(userId);

		// Se aplica el evento
		agg.apply(event);

		logger.debug("Aplicado evento: " + event.getType());

		// Crea la espera hasta que se responda con evento completado
		CompletableFuture<SettingsDTO> completableFuture = getCompletableFeature(event.getSessionId());

@@ -239,10 +206,7 @@ public class SettingsCommandHandler extends CommandHandler {

	public SettingsDTO save(SaveSettingsCommand cmd) {

		PersistenceAggregate agg = new PersistenceAggregate(settingsStateStore);

		// Se procesa el comando, obteniendo el evento generado
		logger.debug("Procesando SaveSettingsCommand");
		PersistenceAggregate agg = new PersistenceAggregate(settingsStateStore, userService);

		PartialSaveSettingsEvent event = agg.process(cmd);

@@ -250,16 +214,9 @@ public class SettingsCommandHandler extends CommandHandler {
		if (event == null)
			return null;

		String userId = userService.getUserId();

		event.setUserId(userId);
		event.getPersistence().setUserId(userId);

		// Se aplica el evento
		agg.apply(event);

		logger.debug("Aplicado evento: " + event.getType());

		// Crea la espera hasta que se responda con evento completado
		CompletableFuture<SettingsDTO> completableFuture = getCompletableFeature(event.getSessionId());

@@ -272,10 +229,7 @@ public class SettingsCommandHandler extends CommandHandler {

	public SettingsDTO update(UpdateSettingsCommand cmd) {

		PersistenceAggregate agg = new PersistenceAggregate(settingsStateStore);

		// Se procesa el comando, obteniendo el evento generado
		logger.debug("Procesando UpdateSettingsCommand");
		PersistenceAggregate agg = new PersistenceAggregate(settingsStateStore, userService);

		PartialSaveSettingsEvent event = agg.process(cmd);

@@ -283,16 +237,9 @@ public class SettingsCommandHandler extends CommandHandler {
		if (event == null)
			return null;

		String userId = userService.getUserId();

		event.setUserId(userId);
		event.getPersistence().setUserId(userId);

		// Se aplica el evento
		agg.apply(event);

		logger.debug("Aplicado evento: " + event.getType());

		// Crea la espera hasta que se responda con evento completado
		CompletableFuture<SettingsDTO> completableFuture = getCompletableFeature(event.getSessionId());

@@ -305,10 +252,7 @@ public class SettingsCommandHandler extends CommandHandler {

	public SettingsDTO delete(DeleteSettingsCommand cmd) {

		PersistenceAggregate agg = new PersistenceAggregate(settingsStateStore);

		// Se procesa el comando, obteniendo el evento generado
		logger.debug("Procesando UpdateSettingsCommand");
		PersistenceAggregate agg = new PersistenceAggregate(settingsStateStore, userService);

		CheckDeleteSettingsEvent event = agg.process(cmd);

@@ -316,13 +260,9 @@ public class SettingsCommandHandler extends CommandHandler {
		if (event == null)
			return null;

		event.setUserId(userService.getUserId());

		// Se aplica el evento
		agg.apply(event);

		logger.debug("Aplicado evento: " + event.getType());

		// Crea la espera hasta que se responda con evento completado
		CompletableFuture<SettingsDTO> completableFuture = getCompletableFeature(event.getSessionId());

@@ -335,10 +275,7 @@ public class SettingsCommandHandler extends CommandHandler {

	public SettingsDTO clone(CloneSettingsCommand cmd) {

		PersistenceAggregate agg = new PersistenceAggregate(settingsStateStore);

		// Se procesa el comando, obteniendo el evento generado
		logger.debug("Procesando CloneSettingsCommand");
		PersistenceAggregate agg = new PersistenceAggregate(settingsStateStore, userService);

		CloneSettingsEvent event = agg.process(cmd);

@@ -346,15 +283,9 @@ public class SettingsCommandHandler extends CommandHandler {
		if (event == null)
			return null;

		String userId = userService.getUserId();
		event.setUserId(userId);
		event.getPersistence().setUserId(userId);

		// Se aplica el evento
		agg.apply(event);

		logger.debug("Aplicado evento: " + event.getType());

		// Crea la espera hasta que se responda con evento completado
		CompletableFuture<SettingsDTO> completableFuture = getCompletableFeature(event.getSessionId());

@@ -369,10 +300,7 @@ public class SettingsCommandHandler extends CommandHandler {

	public void updateSettingsAccessedDate(UpdateSettingsAccessedDateCommand cmd) {

		PersistenceAggregate agg = new PersistenceAggregate(settingsStateStore);

		// Se procesa el comando, obteniendo el evento generado
		logger.debug("Procesando UpdateSettingsAccessedDateCommand");
		PersistenceAggregate agg = new PersistenceAggregate(settingsStateStore, userService);

		UpdateSettingsAccessedDateEvent event = agg.process(cmd);

+3 −3
Original line number Diff line number Diff line
@@ -444,7 +444,6 @@ public class SettingsEventStreams extends BaseStreams {
	private Event getSaveSettingsEvent(PartialSaveSettingsEvent partialEvent, SettingsEvent snapshotEvent) {

		if (snapshotEvent == null) {
			// TODO: generar nueva excepción. Si es necesario, añadir argumentos
			return SettingsEventFactory.getEvent(partialEvent, SettingsEventTypes.SAVE_FAILED,
					ExceptionType.SETTINGS_TO_SAVE_NOT_FOUND_EXCEPTION.toString(), null);
		}
@@ -543,7 +542,6 @@ public class SettingsEventStreams extends BaseStreams {
	private Event getSaveSettingsByCloneEvent(CloneSettingsEvent cloneEvent, SettingsEvent snapshotEvent) {

		if (snapshotEvent == null) {
			// TODO: generar nueva excepción. Si es necesario, añadir argumentos
			return SettingsEventFactory.getEvent(cloneEvent, SettingsEventTypes.SAVE_FAILED,
					ExceptionType.SETTINGS_TO_CLONE_NOT_FOUND_EXCEPTION.toString(), null);
		}
@@ -579,11 +577,13 @@ public class SettingsEventStreams extends BaseStreams {
			UpdateSettingsAccessedDateEvent updateAccessedDateEvent, SettingsEvent snapshotEvent) {

		if (snapshotEvent == null) {
			// TODO: generar nueva excepción. Si es necesario, añadir argumentos
			return SettingsEventFactory.getEvent(updateAccessedDateEvent, SettingsEventTypes.SAVE_FAILED,
					ExceptionType.SETTINGS_TO_SAVE_NOT_FOUND_EXCEPTION.toString(), null);
		}

		// Cambia la autoría para que permita el guardado
		updateAccessedDateEvent.setUserId(snapshotEvent.getUserId());

		SettingsDTO sourceSettings = snapshotEvent.getSettings();

		sourceSettings.setAccessed(DateTime.now());
+159 −3
Original line number Diff line number Diff line
@@ -110,6 +110,8 @@ public class SettingsRestBase extends DocumentationCommandBaseTest {

	private String userId = "13";

	private String otherUserId = "15";

	@BeforeClass
	public static void setup() {

@@ -225,6 +227,39 @@ public class SettingsRestBase extends DocumentationCommandBaseTest {
		assertEquals(event.getSettings().getService(), serviceName);
	}

	// Envía un selectRequestl para una selección existente y debe provocar una
	// excepción por intentar modificar settings de otros usuarios
	@Test
	public void selectRequest_ThrowSettingsChangeForbiddenException_IfSettingsIsFromAnotherUser() throws Exception {

		String CODE = UUID.randomUUID().toString();

		// Envía selected para meterlo en el stream
		SelectedEvent selectedEvent = SettingsDataUtil.getSelectedEvent(CODE);
		selectedEvent.getSettings().setName(null);
		selectedEvent.getSettings().setService(serviceName);
		selectedEvent.getSettings().setUserId(otherUserId);
		selectedEvent.setUserId(otherUserId);

		when(settingsStateStore.get(anyString())).thenReturn(selectedEvent);

		SelectionDTO selectionDTO = SettingsDataUtil.getSelectionDTO(CODE);
		selectionDTO.setService(null);
		selectionDTO.setUserId(null);

		// @formatter:off
		
		String id = SettingsDataUtil.PREFIX + CODE;
		
		this.mockMvc
				.perform(put(SETTINGS_PATH + "/select/" + id)
						.header("Authorization", "Bearer " + getTokenOAGUser())
						.content(mapper.writeValueAsString(selectionDTO))
						.contentType(MediaType.APPLICATION_JSON)
						.accept(MediaType.APPLICATION_JSON))
				.andExpect(status().isForbidden());
	}

	@Test
	public void deselectRequest_ReturnSelection_IfWasSuccess() throws Exception {

@@ -273,6 +308,39 @@ public class SettingsRestBase extends DocumentationCommandBaseTest {
		assertEquals(serviceName, event.getSettings().getService());
	}

	// Envía un deselectRequestl para una selección existente y debe provocar una
	// excepción por intentar modificar settings de otros usuarios
	@Test
	public void deselectRequest_ThrowSettingsChangeForbiddenException_IfSettingsIsFromAnotherUser() throws Exception {

		String CODE = UUID.randomUUID().toString();

		// Envía selected para meterlo en el stream
		SelectedEvent selectedEvent = SettingsDataUtil.getSelectedEvent(CODE);
		selectedEvent.getSettings().setName(null);
		selectedEvent.getSettings().setService(serviceName);
		selectedEvent.getSettings().setUserId(otherUserId);
		selectedEvent.setUserId(otherUserId);

		when(settingsStateStore.get(anyString())).thenReturn(selectedEvent);

		SelectionDTO selectionDTO = SettingsDataUtil.getSelectionDTO(CODE);
		selectionDTO.setService(null);
		selectionDTO.setUserId(null);

		// @formatter:off
		
		String id = SettingsDataUtil.PREFIX + CODE;
		
		this.mockMvc
				.perform(put(SETTINGS_PATH + "/deselect/" + id)
						.header("Authorization", "Bearer " + getTokenOAGUser())
						.content(mapper.writeValueAsString(selectionDTO))
						.contentType(MediaType.APPLICATION_JSON)
						.accept(MediaType.APPLICATION_JSON))
				.andExpect(status().isForbidden());
	}

	@Test
	public void clearRequest_ReturnSelection_IfWasSuccess() throws Exception {

@@ -322,6 +390,41 @@ public class SettingsRestBase extends DocumentationCommandBaseTest {
		assertEquals(serviceName, event.getSettings().getService());
	}

	// Envía un clearSelectionRequest para una selección existente y debe provocar
	// una
	// excepción por intentar modificar settings de otros usuarios
	@Test
	public void clearSelectionRequest_ThrowSettingsChangeForbiddenException_IfSettingsIsFromAnotherUser()
			throws Exception {

		String CODE = UUID.randomUUID().toString();

		// Envía selected para meterlo en el stream
		SelectedEvent selectedEvent = SettingsDataUtil.getSelectedEvent(CODE);
		selectedEvent.getSettings().setName(null);
		selectedEvent.getSettings().setService(serviceName);
		selectedEvent.getSettings().setUserId(otherUserId);
		selectedEvent.setUserId(otherUserId);

		when(settingsStateStore.get(anyString())).thenReturn(selectedEvent);

		SelectionDTO selectionDTO = SettingsDataUtil.getSelectionDTO(CODE);
		selectionDTO.setService(null);
		selectionDTO.setUserId(null);

		// @formatter:off
		
		String id = SettingsDataUtil.PREFIX + CODE;
		
		this.mockMvc
				.perform(put(SETTINGS_PATH + "/clearselection/" + id)
						.header("Authorization", "Bearer " + getTokenOAGUser())
						.content(mapper.writeValueAsString(selectionDTO))
						.contentType(MediaType.APPLICATION_JSON)
						.accept(MediaType.APPLICATION_JSON))
				.andExpect(status().isForbidden());
	}

	@Test
	public void saveRequest_ReturnSavedItem_IfWasSuccess() throws Exception {

@@ -420,6 +523,34 @@ public class SettingsRestBase extends DocumentationCommandBaseTest {
		assertEquals(serviceName, event.getSettings().getService());
	}

	@Test
	public void updateRequest_ThrowSettingsChangeForbiddenException_IfSettingsIsFromAnotherUser() throws Exception {

		String CODE = UUID.randomUUID().toString();

		SettingsSavedEvent evt = SettingsDataUtil.getSettingsSavedEvent(CODE);
		evt.getSettings().setService(serviceName);
		evt.getSettings().setUserId(otherUserId);
		evt.setUserId(otherUserId);

		when(settingsStateStore.get(anyString())).thenReturn(evt);

		PersistenceDTO persistenceDTO = SettingsDataUtil.getPersistenceDTO(CODE);
		persistenceDTO.setSettingsId(evt.getAggregateId());

		// @formatter:off
		
		String id = SettingsDataUtil.PREFIX + CODE;
		
		this.mockMvc
				.perform(put(SETTINGS_PATH + "/" + id)
						.header("Authorization", "Bearer " + getTokenOAGUser())
						.content(mapper.writeValueAsString(persistenceDTO))
						.contentType(MediaType.APPLICATION_JSON)
						.accept(MediaType.APPLICATION_JSON))
				.andExpect(status().isForbidden());
	}

	@Test
	public void deleteRequest_ReturnSuccessItem_IfWasSuccess() throws Exception {

@@ -455,6 +586,33 @@ public class SettingsRestBase extends DocumentationCommandBaseTest {
		assertEquals(expectedEvent.getVersion(), event.getVersion());
	}

	@Test
	public void deleteRequest_ThrowSettingsChangeForbiddenException_IfSettingsIsFromAnotherUser() throws Exception {

		String CODE = UUID.randomUUID().toString();

		SettingsSavedEvent evt = SettingsDataUtil.getSettingsSavedEvent(CODE);
		evt.getSettings().setService(serviceName);
		evt.getSettings().setUserId(otherUserId);
		evt.setUserId(otherUserId);

		when(settingsStateStore.get(anyString())).thenReturn(evt);

		PersistenceDTO persistenceDTO = SettingsDataUtil.getPersistenceDTO(CODE);
		persistenceDTO.setSettingsId(evt.getAggregateId());

		// @formatter:off
		
		String id = SettingsDataUtil.PREFIX + CODE;
		
		this.mockMvc
		.perform(MockMvcRequestBuilders.delete(SETTINGS_PATH + "/" + id)
				.header("Authorization", "Bearer " + getTokenOAGUser())
				.contentType(MediaType.APPLICATION_JSON)
				.accept(MediaType.APPLICATION_JSON))
			.andExpect(status().isForbidden());
	}

	@Test
	public void deleteRequest_ReturnUnauthorized_IfUserIsNotLoggedIn() throws Exception {

@@ -476,8 +634,6 @@ public class SettingsRestBase extends DocumentationCommandBaseTest {
	@Test
	public void cloneRequest_ReturnSavedItem_IfWasSuccess() throws Exception {

		String otherUserId = "15";

		String CODE = UUID.randomUUID().toString();

		SettingsSavedEvent settingsSavedEvent = SettingsDataUtil.getSettingsSavedEvent(CODE);
@@ -560,7 +716,7 @@ public class SettingsRestBase extends DocumentationCommandBaseTest {
			logger.info("Comprobando evento UpdateSettingsAccessedDateEvent por acceso a settings");

			assertEquals(settingsSavedEvent.getAggregateId(), event.getAggregateId());
			assertEquals(settingsSavedEvent.getUserId(), event.getUserId());
			assertEquals(expectedEvent.getUserId(), event.getUserId());
		}
	}

Loading