public void If_input_a_valid_multipolygon_then_should_get_correct_wkb() { var multiPolygon = new MultiPolygon(new List <Polygon> { new Polygon(new List <Point> { new Point(30, 20), new Point(45, 40), new Point(10, 40), new Point(30, 20) }), new Polygon(new List <Point> { new Point(15, 5), new Point(40, 10), new Point(10, 20), new Point(5, 10), new Point(15, 5) }) }); var expectWkbHex = "010600000002000000010300000001000000040000000000000000003E40000000000000344000000000008046400000000000004440000000000000244000000000000044400000000000003E400000000000003440010300000001000000050000000000000000002E4000000000000014400000000000004440000000000000244000000000000024400000000000003440000000000000144000000000000024400000000000002E400000000000001440"; var hex = multiPolygon.ToWkbHex(); hex.Should().BeEquivalentTo(expectWkbHex); }