Esempio n. 1
0
 public void ThrowExceptionIfTypeNameEndsWithImageOrSound()
 {
     Assert.Throws <BinaryDataSaver.UnableToSave>(
         () => BinaryDataExtensions.SaveToMemoryStream(new NonContentImage()));
     Assert.Throws <BinaryDataSaver.UnableToSave>(
         () => BinaryDataExtensions.SaveToMemoryStream(new NonContentSound()));
 }
Esempio n. 2
0
 public void CreateGeometryDataTypeFromShortAndFullNameReturnTheSameType()
 {
     Assert.AreEqual(
         BinaryDataExtensions.GetTypeFromShortNameOrFullNameIfNotFound("GeometryData"),
         BinaryDataExtensions.GetTypeFromShortNameOrFullNameIfNotFound(
             "DeltaEngine.Graphics.Geometry+GeometryData"));
 }
Esempio n. 3
0
        private static void SaveDataTypeAndLoadAgain <Primitive>(Primitive input)
        {
            var data   = BinaryDataExtensions.SaveDataIntoMemoryStream(input);
            var output = BinaryDataExtensions.LoadDataWithKnownTypeFromMemoryStream <Primitive>(data);

            Assert.AreEqual(input, output);
        }
Esempio n. 4
0
        private static IEnumerable <object> LoadComponents(Entity entity, BinaryReader reader,
                                                           byte[] versionBytes)
        {
            int count = reader.ReadByte();

            if (count == 255)
            {
                count = reader.ReadInt32();
            }
            var components       = new List <object>(count);
            var arrayElementType = (ArrayElementType)reader.ReadByte();

            if (arrayElementType == ArrayElementType.AllTypesAreNull)
            {
                return(components);
            }
            if (arrayElementType == ArrayElementType.AllTypesAreDifferent)
            {
                LoadComponentsOfDifferentTypes(components, reader, count, versionBytes);
            }
            else
            {
                Type elementType = arrayElementType == ArrayElementType.AllTypesAreTypes
                                        ? typeof(Type)
                                        : BinaryDataExtensions.GetTypeFromShortNameOrFullNameIfNotFound(reader.ReadString());
                LoadComponentsOfTheSameType(components, reader, count, elementType, versionBytes);
            }
            return(components);
        }
Esempio n. 5
0
        public void SaveRangeGraph()
        {
            var range = new RangeGraph <Vector2D>(Vector2D.Zero, new Vector2D(3.0f, 3.0f));
            var data  = BinaryDataExtensions.SaveToMemoryStream(range);

            Assert.AreEqual(68, data.Length);
        }
Esempio n. 6
0
        public void LoadColor()
        {
            var data = BinaryDataExtensions.SaveToMemoryStream(Color.Red);
            var reconstructedColor = data.CreateFromMemoryStream();

            Assert.AreEqual(Color.Red, reconstructedColor);
        }
Esempio n. 7
0
        public void SaveAndLoadFromMemoryStream()
        {
            var entity = new Entity2D(Rectangle.HalfCentered);

            entity.OnDraw <MockDrawBehavior>();
            Assert.AreEqual(0, entity.NumberOfComponents);
            var data = BinaryDataExtensions.SaveToMemoryStream(entity);

            byte[]    savedBytes         = data.ToArray();
            int       bytesForName       = "Entity2D".Length + 1;
            const int VersionNumberBytes = 4;
            int       componentBytes     = 1 + "Rectangle".Length + 1 + 16 + "IsVisible".Length + 1 + 1 + 2;
            const int BehaviorBytes      = 27;

            Assert.AreEqual(bytesForName + VersionNumberBytes + componentBytes + BehaviorBytes,
                            savedBytes.Length);
            var loadedEntity = data.CreateFromMemoryStream() as Entity2D;

            Assert.AreEqual(0, loadedEntity.NumberOfComponents);
            Assert.IsTrue(loadedEntity.IsActive);
            Assert.AreEqual(Rectangle.HalfCentered, loadedEntity.DrawArea);
            Assert.AreEqual(1, loadedEntity.GetDrawBehaviors().Count);
            Assert.AreEqual("MockDrawBehavior",
                            loadedEntity.GetDrawBehaviors()[0].GetShortNameOrFullNameIfNotFound());
        }
Esempio n. 8
0
        public void DrawLoadedRadioDialog()
        {
            var stream = BinaryDataExtensions.SaveToMemoryStream(dialog);

            dialog.IsActive = false;
            stream.CreateFromMemoryStream();
        }
Esempio n. 9
0
        private void InitializeGameTriggers(XmlData trigger)
        {
            var triggerType = BinaryDataExtensions.GetTypeFromShortNameOrFullNameIfNotFound(trigger.Name);

            Triggers.Add(
                Trigger.GenerateTriggerFromType(triggerType, trigger.Name, trigger.Value) as GameTrigger);
        }
Esempio n. 10
0
 public void CreateTypeFromShortName()
 {
     Assert.IsNotNull(BinaryDataExtensions.GetTypeFromShortNameOrFullNameIfNotFound("Int32"));
     Assert.IsNotNull(BinaryDataExtensions.GetTypeFromShortNameOrFullNameIfNotFound("Material"));
     Assert.Throws <TypeLoadException>(
         () => BinaryDataExtensions.GetTypeFromShortNameOrFullNameIfNotFound("abc535"));
 }
Esempio n. 11
0
        private static void SaveAndLoadMaterialAndCompare(Material material)
        {
            var data           = BinaryDataExtensions.SaveDataIntoMemoryStream(material);
            var loadedMaterial = BinaryDataExtensions.LoadDataWithKnownTypeFromMemoryStream <Material>(data);

            Assert.AreEqual(material, loadedMaterial);
        }
        public void ObjectToBinaryData()
        {
            string message = "This message cannot be resolved!";

            byte [] data = BinaryDataExtensions.ToByteArrayWithLengthHeader(message);
            Assert.AreEqual(data[0], 44);
        }
        public void DynamicallyCreatedTypeIsNotStored()
        {
            var unknownObject = new ExpandoObject();

            Assert.Throws <BinaryDataExtensions.NoShortNameStoredFor>(
                () => BinaryDataExtensions.GetShortName(unknownObject));
        }
Esempio n. 14
0
        public static void AssertObjectWhenSavedAndRestoredByToString <T>(T anyObject)
        {
            MemoryStream serializedData  = BinaryDataExtensions.SaveToMemoryStream(anyObject);
            var          restoredMessage = (T)serializedData.CreateFromMemoryStream();

            Assert.AreEqual(anyObject.ToString(), restoredMessage.ToString());
        }
Esempio n. 15
0
        public void SaveAndLoadArrayWithMixedNumbersAndNullElements()
        {
            var instance  = new object[] { 1, null };
            var data      = BinaryDataExtensions.SaveDataIntoMemoryStream(instance);
            var retrieved = BinaryDataExtensions.LoadDataWithKnownTypeFromMemoryStream <object[]>(data);

            Assert.IsTrue(instance.Compare(retrieved));
        }
Esempio n. 16
0
        private static MemoryStream SaveTestMenu()
        {
            var emptyScene = new AutoArrangingMenu(Size.One);
            var data       = BinaryDataExtensions.SaveToMemoryStream(emptyScene);

            data.Seek(0, SeekOrigin.Begin);
            return(data);
        }
Esempio n. 17
0
        public void DrawLoadedSlider()
        {
            slider.Value = 70;
            var stream = BinaryDataExtensions.SaveToMemoryStream(slider);

            slider.IsActive = false;
            stream.CreateFromMemoryStream();
        }
Esempio n. 18
0
        [Test, CloseAfterFirstFrame, Ignore]         //ncrunch: no coverage start
        public void SaveAndLoad()
        {
            var stream       = BinaryDataExtensions.SaveToMemoryStream(button);
            var loadedButton = (InteractiveButton)stream.CreateFromMemoryStream();

            Assert.AreEqual(Center, loadedButton.DrawArea);
            Assert.AreEqual("Click Me", loadedButton.Text);
        }
Esempio n. 19
0
        private static void SaveAndLoadArray <T>(T[] array)
        {
            var data           = BinaryDataExtensions.SaveDataIntoMemoryStream(array);
            var retrievedArray = BinaryDataExtensions.LoadDataWithKnownTypeFromMemoryStream <T[]>(data);

            Assert.AreEqual(array.Length, retrievedArray.Length);
            Assert.IsTrue(array.Compare(retrievedArray));
        }
Esempio n. 20
0
		public void SaveAndLoadPlatformsResult()
		{
			var result = new SupportedPlatformsResult(new[] { PlatformName.Android, PlatformName.Web });
			var stream = BinaryDataExtensions.SaveDataIntoMemoryStream(result);
			var loaded = BinaryDataExtensions.
				LoadDataWithKnownTypeFromMemoryStream<SupportedPlatformsResult>(stream);
			Assert.AreEqual(2, loaded.Platforms.Length);
		}
Esempio n. 21
0
            }             //ncrunch: no coverage

            public void LoadValidData()
            {
                var d = new GeometryData {
                    Format = VertexFormat.Position3DColor, Indices = new short[6]
                };

                LoadData(new MemoryStream(BinaryDataExtensions.ToByteArrayWithTypeInformation(d)));
            }
        public void DrawLoadedSelectBox()
        {
            SetToTenValues();
            var stream = BinaryDataExtensions.SaveToMemoryStream(dropdownList);

            dropdownList.IsActive = false;
            stream.CreateFromMemoryStream();
        }
Esempio n. 23
0
        private static MemoryStream Save3DMaterial()
        {
            var material = new Material(ShaderFlags.ColoredTextured, "DeltaEngineLogo");
            var data     = BinaryDataExtensions.SaveToMemoryStream(material);

            data.Seek(0, SeekOrigin.Begin);
            return(data);
        }
Esempio n. 24
0
        public void DrawLoadedScrollbar()
        {
            scrollbar.CenterValue = 50;
            var stream = BinaryDataExtensions.SaveToMemoryStream(scrollbar);

            scrollbar.IsActive = false;
            stream.CreateFromMemoryStream();
        }
Esempio n. 25
0
        private static MemoryStream SaveEmptyScene()
        {
            var emptyScene = new Scene();
            var data       = BinaryDataExtensions.SaveToMemoryStream(emptyScene);

            data.Seek(0, SeekOrigin.Begin);
            return(data);
        }
Esempio n. 26
0
        public void DrawLoadedFont()
        {
            var text       = new FontText(tahoma, "Original", Top);
            var stream     = BinaryDataExtensions.SaveToMemoryStream(text);
            var loadedText = (FontText)stream.CreateFromMemoryStream();

            loadedText.Text     = "Loaded";
            loadedText.DrawArea = Bottom;
        }
Esempio n. 27
0
        public void SaveAndLoadInfoMessage()
        {
            var info       = new LogInfoMessage("A test info message");
            var data       = BinaryDataExtensions.SaveToMemoryStream(info);
            var loadedInfo = data.CreateFromMemoryStream() as LogInfoMessage;

            Assert.AreEqual(info.Text, loadedInfo.Text);
            Assert.AreEqual(info.TimeStamp, loadedInfo.TimeStamp);
        }
Esempio n. 28
0
        public void SaveAndLoad()
        {
            var stream          = BinaryDataExtensions.SaveToMemoryStream(selectBox);
            var loadedSelectBox = (SelectBox)stream.CreateFromMemoryStream();

            Assert.AreEqual(selectBox.DrawArea, loadedSelectBox.DrawArea);
            Assert.AreEqual(3, loadedSelectBox.Values.Count);
            Assert.AreEqual(selectBox.Values[1].ToString(), loadedSelectBox.Values[1].ToString());
        }
Esempio n. 29
0
        public void DrawLoadedLabel()
        {
            label.Text = "Original";
            var stream      = BinaryDataExtensions.SaveToMemoryStream(label);
            var loadedLabel = (Label)stream.CreateFromMemoryStream();

            loadedLabel.Text     = "Loaded";
            loadedLabel.DrawArea = loadedLabel.DrawArea.Move(0.0f, 0.15f);
        }
Esempio n. 30
0
        public void SaveAndLoad()
        {
            var stream      = BinaryDataExtensions.SaveToMemoryStream(label);
            var loadedLabel = (Label)stream.CreateFromMemoryStream();

            Assert.AreEqual(Rectangle.FromCenter(0.5f, 0.5f, 0.3f, 0.1f), loadedLabel.DrawArea);
            Assert.AreEqual("Hello World", loadedLabel.Text);
            Assert.AreEqual(label.children.Count, loadedLabel.children.Count);
        }