public async Task SetPlugboard_ShouldReturn200Ok_WhenSettingAWiring()
        {
            // Arrange
            var controller = new EnigmaController(
                "http://localhost:61467/",
                "api/Enigma/SetPlugboard",
                String.Empty);

            PlugboardDto plugboardDto = new PlugboardDto()
            {
                Wiring = new Dictionary <char, char>()
                {
                    { 'a', 'b' }
                }
            };

            // Act
            HttpResponseMessage response =
                await controller.ExecutePostSetPlugboard <PlugboardDto, HttpResponseMessage>(plugboardDto);

            // Assert
            HttpStatusCode statusCode = response.StatusCode;

            Assert.AreEqual(HttpStatusCode.OK, statusCode);
        }
Exemple #2
0
        public HttpResponseMessage SetPlugboard([FromBody] PlugboardDto plugboardDto)
        {
            HttpResponseMessage response;
            string json = JsonConvert.SerializeObject(plugboardDto, Formatting.Indented);

            //Dictionary<char, char> myDic = plugboardDto.Wiring;

            try
            {
                staticEnigmaMachine.SetPlugboard(plugboardDto.Wiring);
                response = Request.CreateResponse(HttpStatusCode.OK);
            }
            catch (Exception ex)
            {
                response = Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex);
            }

            return(response);
        }