public IActionResult addChannels([FromBody] ChannelTransferObject channel) { var result = _channelService.addChannel(channel); if (result.ResponseCode == ResponseCode.Success) { return(Ok(result.Result)); } return(BadRequest(result.Error)); }
public ServiceResult <ChannelTransferObject> addChannel(ChannelTransferObject channel) { var newChannel = new Channel { name = channel.name, topic = channel.topic }; _channelRepository.Add(newChannel); _channelRepository.saveChanges(); channel.id = newChannel.id; return(ServiceResult <ChannelTransferObject> .SuccessResult(channel)); }
public void Add_NewChannel_Succeeds(string name, string topic) { var expected = new ChannelTransferObject { name = name, topic = topic }; var builder = new ChannelServiceBuilder(); var mockChannel = builder.GetDefaultChannelRepository(); var mockUserChannel = builder.GetDefaultUserChannelRepository(); mockChannel.Setup(r => r.Add(It.IsAny <Channel>())) .Returns(new Channel { id = 1, name = name, topic = topic }); mockChannel.Setup(r => r.saveChanges()) .Returns(1); mockUserChannel.Setup(r => r.Add(It.IsAny <UserChannel>())) .Returns(new UserChannel { idChannel = 1, userTag = null }); mockUserChannel.Setup(r => r.saveChanges()) .Returns(1); var service = builder.WithChannelRepository(mockChannel.Object, mockUserChannel.Object).Build(); var result = service.addChannel(expected); Assert.Equal(ResponseCode.Success, result.ResponseCode); Assert.Equal(name, result.Result.name); Assert.Equal(topic, result.Result.topic); }