示例#1
0
        public void PutGenerateMultipleTest()
        {
            // Arrange
            var generatorParamsList = new GeneratorParamsList
            {
                BarcodeBuilders = new List <GeneratorParams>
                {
                    new GeneratorParams
                    {
                        TypeOfBarcode = EncodeBarcodeType.Code128,
                        Text          = "Hello world!"
                    }
                }
            };

            var request = new PutGenerateMultipleRequest(
                "Test_PutGenerateMultiple.png",
                generatorParamsList,
                folder: TempFolderPath
                );

            // Act
            ResultImageInfo response = _api.PutGenerateMultiple(request);

            // Assert
            Assert.True(response.FileSize > 0);
            Assert.True(response.ImageWidth > 0);
            Assert.True(response.ImageHeight > 0);
        }
        /// <summary>
        ///     Generate image with multiple barcodes and put new file on server
        /// </summary>
        /// <param name="request">Request. <see cref="PutGenerateMultipleRequest" /></param>
        /// <returns>
        ///     <see cref="ResultImageInfo" />
        /// </returns>
        public ResultImageInfo PutGenerateMultiple(PutGenerateMultipleRequest request)
        {
            // verify the required parameter 'name' is set
            if (request.name == null)
            {
                throw new ApiException(400, "Missing required parameter 'name' when calling PutGenerateMultiple");
            }
            // verify the required parameter 'generatorParamsList' is set
            if (request.generatorParamsList == null)
            {
                throw new ApiException(400, "Missing required parameter 'generatorParamsList' when calling PutGenerateMultiple");
            }
            // create path and map variables
            string resourcePath = _configuration.GetApiRootUrl() + "/barcode/{name}/generateMultiple";

            resourcePath = Regex
                           .Replace(resourcePath, "\\*", string.Empty)
                           .Replace("&amp;", "&")
                           .Replace("/?", "?");
            resourcePath = UrlHelper.AddPathParameter(resourcePath, "name", request.name);
            resourcePath = UrlHelper.AddQueryParameterToUrl(resourcePath, "format", request.format);
            resourcePath = UrlHelper.AddQueryParameterToUrl(resourcePath, "folder", request.folder);
            resourcePath = UrlHelper.AddQueryParameterToUrl(resourcePath, "storage", request.storage);


            string postBody = SerializationHelper.Serialize(request.generatorParamsList); // http body (model) parameter
            string response = _apiInvoker.InvokeApi(
                resourcePath,
                "PUT",
                postBody,
                null,
                null);

            if (response != null)
            {
                return((ResultImageInfo)SerializationHelper.Deserialize(response, typeof(ResultImageInfo)));
            }

            return(null);
        }