public void GetField_FieldContainsDataTestConnectionLimit_StreamIsReturned()
        {
            //Assign
            var fieldValue = "";

            var    item     = Database.GetItem("/sitecore/content/Tests/DataMappers/SitecoreFieldStreamMapper/GetField");
            var    field    = item.Fields[FieldName];
            string expected = "hello world";

            var stream = new MemoryStream(Encoding.UTF8.GetBytes(expected));
            var mapper = new SitecoreFieldStreamMapper();

            using (new ItemEditing(item, true))
            {
                field.SetBlobStream(stream);
            }

            //Act
            var results = new List <Stream>();

            for (int i = 0; i < 1000; i++)
            {
                var result = mapper.GetField(field, null, null) as Stream;
                results.Add(result);
            }

            //Assert
            Assert.AreEqual(1000, results.Count);
        }
Beispiel #2
0
        public void SetField_StreamPassed_FieldContainsStream()
        {
            //Assign
            var fieldValue = "";

            var    item     = Database.GetItem("/sitecore/content/Tests/DataMappers/SitecoreFieldStreamMapper/SetField");
            var    field    = item.Fields[FieldName];
            string expected = "hello world";

            var stream = new MemoryStream(Encoding.UTF8.GetBytes(expected));
            var mapper = new SitecoreFieldStreamMapper();

            using (new ItemEditing(item, true))
            {
                field.SetBlobStream(new MemoryStream());
            }

            //Act
            using (new ItemEditing(item, true))
            {
                mapper.SetField(field, stream, null, null);
            }

            //Assert
            var reader = new StreamReader(field.GetBlobStream());

            var resultStr = reader.ReadToEnd();

            Assert.AreEqual(expected, resultStr);
        }
        public void SetField_NullPassed_NoExceptionThrown()
        {
            //Assign
            var fieldValue = "";

            var    item     = Database.GetItem("/sitecore/content/Tests/DataMappers/SitecoreFieldStreamMapper/SetField");
            var    field    = item.Fields[FieldName];
            string expected = "hello world";

            Stream stream = null;
            var    mapper = new SitecoreFieldStreamMapper();

            using (new ItemEditing(item, true))
            {
                field.SetBlobStream(new MemoryStream());
            }

            //Act
            using (new ItemEditing(item, true))
            {
                mapper.SetField(field, stream, null, null);
            }

            //Assert
            var outStream = field.GetBlobStream();

            Assert.IsNull(outStream);
        }
Beispiel #4
0
        public void CanHandle_StreamType_ReturnsTrue()
        {
            //Assign
            var mapper = new SitecoreFieldStreamMapper();
            var config = new SitecoreFieldConfiguration();

            config.PropertyInfo = typeof(StubClass).GetProperty("Stream");

            //Act
            var result = mapper.CanHandle(config, null);

            //Assert
            Assert.IsTrue(result);
        }
        public void GetField_FieldContainsDataTestConnectionLimit_StreamIsReturned()
        {
            //Assign
            var templateId = ID.NewID;
            var targetId   = ID.NewID;
            var fieldName  = "Field";

            using (Db database = new Db
            {
                new DbTemplate(templateId)
                {
                    { fieldName, "" }
                },
                new Sitecore.FakeDb.DbItem("Target", targetId, templateId),
            })
            {
                var fieldValue = "";

                var    item     = database.GetItem("/sitecore/content/Target");
                var    field    = item.Fields[fieldName];
                string expected = "hello world";

                var stream = new MemoryStream(Encoding.UTF8.GetBytes(expected));
                var mapper = new SitecoreFieldStreamMapper();

                using (new ItemEditing(item, true))
                {
                    field.SetBlobStream(stream);
                }

                //Act
                var results = new List <Stream>();

                for (int i = 0; i < 1000; i++)
                {
                    var result = mapper.GetField(field, null, null) as Stream;
                    if (result == null)
                    {
                        continue;
                    }

                    results.Add(result);
                }

                //Assert
                Assert.AreEqual(1000, results.Count);
            }
        }
        public void SetField_StreamPassed_FieldContainsStream()
        {
            //Assign
            var templateId = ID.NewID;
            var targetId   = ID.NewID;
            var fieldName  = "Field";

            using (Db database = new Db
            {
                new DbTemplate(templateId)
                {
                    { fieldName, "" }
                },
                new Sitecore.FakeDb.DbItem("Target", targetId, templateId),
            })
            {
                var fieldValue = "";

                var    item     = database.GetItem("/sitecore/content/Target");
                var    field    = item.Fields[fieldName];
                string expected = "hello world";

                var stream = new MemoryStream(Encoding.UTF8.GetBytes(expected));
                var mapper = new SitecoreFieldStreamMapper();

                using (new ItemEditing(item, true))
                {
                    field.SetBlobStream(new MemoryStream());
                }

                //Act
                using (new ItemEditing(item, true))
                {
                    mapper.SetField(field, stream, null, null);
                }

                //Assert
                var stream1 = field.GetBlobStream();
                stream1.Seek(0, SeekOrigin.Begin);
                var reader = new StreamReader(stream1);

                var resultStr = reader.ReadToEnd();
                Assert.AreEqual(expected, resultStr);
            }
        }
        public void SetField_NullPassed_NoExceptionThrown()
        {
            //Assign
            var templateId = ID.NewID;
            var targetId   = ID.NewID;
            var fieldName  = "Field";

            using (Db database = new Db
            {
                new DbTemplate(templateId)
                {
                    { fieldName, "" }
                },
                new Sitecore.FakeDb.DbItem("Target", targetId, templateId),
            })
            {
                var fieldValue = "";

                var    item     = database.GetItem("/sitecore/content/Target");
                var    field    = item.Fields[fieldName];
                string expected = "hello world";

                Stream stream = null;
                var    mapper = new SitecoreFieldStreamMapper();

                using (new ItemEditing(item, true))
                {
                    field.SetBlobStream(new MemoryStream());
                }

                //Act
                using (new ItemEditing(item, true))
                {
                    mapper.SetField(field, stream, null, null);
                }

                //Assert
                var outStream = field.GetBlobStream();
                Assert.AreEqual(0, outStream.Length);
            }
        }