Esempio n. 1
0
        public void GivenFilenameWhenImportThenMultipleReferenceLayersReturned()
        {
            const string filename = "file.bin";
            var          output   = Path.Combine(_filepath, filename);

            File.Create(output).Close();

            var serializableReferenceLayer  = new SerializableReferenceLayer();
            var serializableReferenceLayer2 = new SerializableReferenceLayer();

            _serializerMock.Setup(x => x.Read <List <SerializableReferenceLayer> >(output)).Returns(new List <SerializableReferenceLayer> {
                serializableReferenceLayer, serializableReferenceLayer2
            });

            var rasterReferenceLayer = new RasterReferenceLayer {
                Description = "woopwoopwoop"
            };
            var rasterReferenceLayer2 = new RasterReferenceLayer {
                Description = "nopenopenope"
            };

            _converterMock.Setup(x => x.ConvertToReferenceLayer(serializableReferenceLayer)).Returns(rasterReferenceLayer);
            _converterMock.Setup(x => x.ConvertToReferenceLayer(serializableReferenceLayer2)).Returns(rasterReferenceLayer2);

            var result = _serializer.Import(_filepath, filename).ToList();

            Assert.AreEqual(rasterReferenceLayer.Description, result[0].Description);
            Assert.AreEqual(rasterReferenceLayer2.Description, result[1].Description);
        }
        public void GivenFilenameWhenImportThenMultipleReferenceLayersReturned()
        {
            var output = Path.Combine(_filepath, DatacardConstants.ReferenceLayersFile);

            File.Create(output).Close();

            var serializableReferenceLayer  = new SerializableReferenceLayer();
            var serializableReferenceLayer2 = new SerializableReferenceLayer();

            _baseSerializerMock.Setup(x => x.Deserialize <List <SerializableReferenceLayer> >(output)).Returns(new List <SerializableReferenceLayer> {
                serializableReferenceLayer, serializableReferenceLayer2
            });

            var rasterReferenceLayer = new RasterReferenceLayer {
                Description = "woopwoopwoop"
            };
            var rasterReferenceLayer2 = new RasterReferenceLayer {
                Description = "nopenopenope"
            };

            _converterMock.Setup(x => x.ConvertToReferenceLayer(serializableReferenceLayer)).Returns(rasterReferenceLayer);
            _converterMock.Setup(x => x.ConvertToReferenceLayer(serializableReferenceLayer2)).Returns(rasterReferenceLayer2);

            var serializer = new ReferenceLayersSerializer(_converterMock.Object);
            var result     = serializer.Deserialize(_baseSerializerMock.Object, _filepath).ToList();

            Assert.AreEqual(rasterReferenceLayer.Description, result[0].Description);
            Assert.AreEqual(rasterReferenceLayer2.Description, result[1].Description);
        }
        private List <SerializableRasterData <NumericValue> > GetNumericValues(RasterReferenceLayer rasterReferenceLayer)
        {
            if (rasterReferenceLayer.NumericRasterValues == null)
            {
                return(null);
            }

            var data = new List <SerializableRasterData <NumericValue> >();

            foreach (var rasterValue in rasterReferenceLayer.NumericRasterValues)
            {
                var list = new List <NumericValue>();
                for (int i = 0; i < rasterReferenceLayer.ColumnCount; i++)
                {
                    for (int j = 0; j < rasterReferenceLayer.RowCount; j++)
                    {
                        list.Add(rasterValue.Values[i, j]);
                    }
                }
                data.Add(new SerializableRasterData <NumericValue> {
                    values = list, Representation = rasterValue.Representation
                });
            }
            return(data);
        }
        public void Setup()
        {
            _referenceLayer      = new RasterReferenceLayer();
            _shapeReferenceLayer = new ShapeReferenceLayer();

            _converter = new ReferenceLayerConverter();
        }
        public void Setup()
        {
            _referenceLayer = new RasterReferenceLayer();

            _converter = new ProtobufReferenceLayerConverter();
        }