示例#1
0
        public void TestMetadata()
        {
            var metadataLabel      = GetUniqueMetadataFieldLabel("resource_upload");
            var metadataParameters = new StringMetadataFieldCreateParams(metadataLabel);
            var metadataResult     = m_cloudinary.AddMetadataField(metadataParameters);

            Assert.NotNull(metadataResult);

            var metadataFieldId = metadataResult.ExternalId;

            Assert.NotNull(metadataFieldId);

            if (!string.IsNullOrEmpty(metadataFieldId))
            {
                m_metadataFieldsToClear.Add(metadataFieldId);
            }

            const string metadataValue = "test value";
            var          metadata      = new StringDictionary
            {
                { metadataFieldId, metadataValue }
            };

            var uploadResult = m_cloudinary.Upload(new ImageUploadParams
            {
                File           = new FileDescription(m_testImagePath),
                MetadataFields = metadata
            });

            Assert.NotNull(uploadResult);
            Assert.AreEqual(HttpStatusCode.OK, uploadResult.StatusCode);
            Assert.NotNull(uploadResult.MetadataFields);
        }
示例#2
0
        public void TestStringMetadataFieldCreateParamsDictionary()
        {
            var parameters = new StringMetadataFieldCreateParams(label)
            {
                Mandatory    = true,
                DefaultValue = defaultString,
                ExternalId   = externalId
            };

            CheckParamsDictionary(parameters, "string", defaultString);
        }
示例#3
0
        public void TestCreateStringMetadataField()
        {
            var parameters = new StringMetadataFieldCreateParams(externalIdString)
            {
                ExternalId = externalIdString
            };

            mockedCloudinary.AddMetadataField(parameters);

            mockedCloudinary.AssertHttpCall(SystemHttp.HttpMethod.Post, "metadata_fields");
            AssertEncodedRequestFields(mockedCloudinary, "string", externalIdString);
        }
示例#4
0
        public void TestStringMetadataFieldCreateParamsCheck()
        {
            var parameters = new StringMetadataFieldCreateParams(null);

            CheckMainFields(parameters, defaultString);
            var validationParams = new MetadataValidationParams[]
            {
                new IntLessThanValidationParams(10),
                new IntGreaterThanValidationParams(10),
                new DateGreaterThanValidationParams(DateTime.MinValue),
                new DateLessThanValidationParams(DateTime.MaxValue)
            };

            AssertForbiddenValidations <StringMetadataFieldCreateParams, string>(parameters, validationParams);
        }
        /// <summary>
        /// A convenient method for creating a structured metadata field before testing.
        /// </summary>
        /// <param name="fieldLabelSuffix">The distinguishable suffix.</param>
        /// <returns>The ExternalId of the structured metadata field.</returns>
        protected string CreateMetadataField(string fieldLabelSuffix)
        {
            var metadataLabel      = GetUniqueMetadataFieldLabel(fieldLabelSuffix);
            var metadataParameters = new StringMetadataFieldCreateParams(metadataLabel);
            var metadataResult     = m_cloudinary.AddMetadataField(metadataParameters);

            Assert.NotNull(metadataResult);

            var metadataFieldId = metadataResult.ExternalId;

            if (!string.IsNullOrEmpty(metadataFieldId))
            {
                m_metadataFieldsToClear.Add(metadataFieldId);
            }

            return(metadataFieldId);
        }
        public void TestMetadata()
        {
            var uploadResult = m_cloudinary.Upload(new ImageUploadParams
            {
                File = new FileDescription(m_testImagePath),
            });

            var metadataLabel      = GetUniqueMetadataFieldLabel("resource_update");
            var metadataParameters = new StringMetadataFieldCreateParams(metadataLabel);
            var metadataResult     = m_cloudinary.AddMetadataField(metadataParameters);

            Assert.NotNull(metadataResult);

            var metadataFieldId = metadataResult.ExternalId;

            if (!string.IsNullOrEmpty(metadataFieldId))
            {
                m_metadataFieldsToClear.Add(metadataFieldId);
            }

            const string metadataValue = "test value";
            var          metadata      = new StringDictionary
            {
                { metadataFieldId, metadataValue }
            };

            var explicitResult = m_cloudinary.Explicit(new ExplicitParams(uploadResult.PublicId)
            {
                Metadata = metadata,
                Type     = STORAGE_TYPE_UPLOAD
            });

            Assert.NotNull(explicitResult);
            Assert.AreEqual(HttpStatusCode.OK, explicitResult.StatusCode);

            var getResult = m_cloudinary.GetResource(new GetResourceParams(uploadResult.PublicId));

            Assert.IsNotNull(getResult);
            Assert.NotNull(getResult.MetadataFields);
        }