Skip to content

Commit ffbe63e

Browse files
RagathRagath
Ragath
authored and
Ragath
committed
net7
1 parent 3c001f4 commit ffbe63e

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

53 files changed

+9583
-9620
lines changed

.config/dotnet-tools.json

+36
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
{
2+
"version": 1,
3+
"isRoot": true,
4+
"tools": {
5+
"dotnet-mgcb": {
6+
"version": "3.8.1.303",
7+
"commands": [
8+
"mgcb"
9+
]
10+
},
11+
"dotnet-mgcb-editor": {
12+
"version": "3.8.1.303",
13+
"commands": [
14+
"mgcb-editor"
15+
]
16+
},
17+
"dotnet-mgcb-editor-linux": {
18+
"version": "3.8.1.303",
19+
"commands": [
20+
"mgcb-editor-linux"
21+
]
22+
},
23+
"dotnet-mgcb-editor-windows": {
24+
"version": "3.8.1.303",
25+
"commands": [
26+
"mgcb-editor-windows"
27+
]
28+
},
29+
"dotnet-mgcb-editor-mac": {
30+
"version": "3.8.1.303",
31+
"commands": [
32+
"mgcb-editor-mac"
33+
]
34+
}
35+
}
36+
}

.github/workflows/dotnet.yml

+52
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
# This workflow will build a .NET project
2+
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-net
3+
4+
name: .NET
5+
6+
on:
7+
push:
8+
branches: [ "master" ]
9+
tags: [ "v*" ]
10+
pull_request:
11+
branches: [ "master" ]
12+
13+
jobs:
14+
build:
15+
16+
runs-on: ubuntu-latest
17+
18+
steps:
19+
- uses: actions/checkout@v3
20+
with:
21+
ref: ${{ github.head_ref }} # checkout the correct branch name
22+
fetch-depth: 0
23+
24+
- name: Install GitVersion
25+
uses: gittools/actions/gitversion/[email protected]
26+
with:
27+
versionSpec: '5.x'
28+
29+
- name: Determine Version
30+
uses: gittools/actions/gitversion/[email protected]
31+
with:
32+
useConfigFile: true
33+
34+
- name: Setup .NET
35+
uses: actions/setup-dotnet@v3
36+
with:
37+
dotnet-version: 7.0.x
38+
39+
- name: Build
40+
run: dotnet build -p:Version=$GITVERSION_NUGETVERSION
41+
42+
- name: Test
43+
run: dotnet test --no-build --verbosity normal
44+
45+
- name: Pack
46+
run: dotnet pack --no-build -o ./ -p:Version=$GITVERSION_NUGETVERSION
47+
48+
- name: Push
49+
if: ${{ startsWith(github.ref, 'refs/tags/v') }}
50+
run: dotnet nuget push *.nupkg --source https://api.nuget.org/v3/index.json --api-key $APIKey
51+
env:
52+
APIKey: ${{ secrets.NUGETKEY }}
+33-33
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,39 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

3-
<PropertyGroup>
4-
<TargetFrameworks>net45;net472;netstandard2.0</TargetFrameworks>
5-
<LangVersion>Latest</LangVersion>
6-
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
7-
</PropertyGroup>
3+
<PropertyGroup>
4+
<TargetFramework>net6.0</TargetFramework>
5+
</PropertyGroup>
86

9-
<PropertyGroup>
10-
<Description>Tiled Map MonoGame pipeline extensions</Description>
11-
<PackageId>TiledLib.Pipeline</PackageId>
12-
<Product>TiledLib.Pipeline</Product>
13-
<Authors>Daniel Sör</Authors>
14-
<Company>Daniel Sör</Company>
15-
<PackageTags>Tiled MonoGame ContentPipeline Content Pipeline tmx map importer</PackageTags>
16-
<PackageProjectUrl>https://github.com/Ragath/TiledLib.Net</PackageProjectUrl>
17-
<PackageLicenseUrl>https://github.com/Ragath/TiledLib.Net/blob/master/LICENSE</PackageLicenseUrl>
18-
<RepositoryUrl>https://github.com/Ragath/TiledLib.Net</RepositoryUrl>
19-
<RepositoryType>git</RepositoryType>
20-
</PropertyGroup>
7+
<PropertyGroup>
8+
<Description>Tiled Map MonoGame pipeline extensions</Description>
9+
<Product>TiledLib.Pipeline</Product>
10+
<Authors>Daniel Sör</Authors>
11+
<Company>Daniel Sör</Company>
12+
<PackageTags>Tiled MonoGame ContentPipeline Content Pipeline tmx map importer</PackageTags>
13+
<PackageProjectUrl>https://github.com/Ragath/TiledLib.Net</PackageProjectUrl>
14+
<RepositoryUrl>https://github.com/Ragath/TiledLib.Net</RepositoryUrl>
15+
<RepositoryType>git</RepositoryType>
16+
<PackageLicenseFile>LICENSE</PackageLicenseFile>
17+
</PropertyGroup>
2118

22-
<Choose>
23-
<When Condition="'$(TargetFramework)' == 'netstandard2.0'">
24-
<ItemGroup>
25-
<PackageReference Include="MonoGame.Framework.Content.Pipeline" Version="3.8.0.1641" />
26-
</ItemGroup>
27-
</When>
28-
<Otherwise>
29-
<ItemGroup>
30-
<PackageReference Include="MonoGame.Framework.Content.Pipeline.Portable" Version="3.7.1.189" />
31-
</ItemGroup>
32-
</Otherwise>
33-
</Choose>
19+
<ItemGroup>
20+
<None Include="../LICENSE">
21+
<Pack>True</Pack>
22+
<PackagePath>/</PackagePath>
23+
</None>
24+
</ItemGroup>
3425

35-
<ItemGroup>
36-
<ProjectReference Include="..\TiledLib\TiledLib.csproj" />
37-
</ItemGroup>
26+
<ItemGroup>
27+
<PackageReference Include="MonoGame.Framework.Content.Pipeline" Version="3.8.1.303">
28+
<PrivateAssets>All</PrivateAssets>
29+
</PackageReference>
30+
<PackageReference Include="MonoGame.Framework.DesktopGL" Version="3.8.1.303">
31+
<PrivateAssets>All</PrivateAssets>
32+
</PackageReference>
33+
</ItemGroup>
3834

39-
</Project>
35+
<ItemGroup>
36+
<ProjectReference Include="..\TiledLib\TiledLib.csproj" />
37+
</ItemGroup>
38+
39+
</Project>
+25-31
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,35 @@
1-
using System.IO;
2-
using System.Linq;
3-
using Microsoft.VisualStudio.TestTools.UnitTesting;
1+
namespace TiledLib.Tests;
42

5-
namespace TiledLib.Tests
3+
[TestClass]
4+
public class TilesetTests
65
{
7-
[TestClass]
8-
public class TilesetTests
6+
[DataTestMethod]
7+
[DataRow("Data/External_tileset_map.json")]
8+
[DataRow("Data/External_tileset_map.tmx")]
9+
[DataRow("Data/Level0.json")]
10+
public void TestTileIndexing(string file)
911
{
10-
[DataTestMethod]
11-
[DataRow("Data/External_tileset_map.json")]
12-
[DataRow("Data/External_tileset_map.tmx")]
13-
[DataRow("Data/Level0.json")]
14-
public void TestTileIndexing(string file)
12+
using (var mapStream = File.OpenRead(file))
1513
{
16-
using (var mapStream = File.OpenRead(file))
14+
var map = Map.FromStream(mapStream);
15+
16+
Tileset LoadTileset(ExternalTileset t)
1717
{
18-
var map = Map.FromStream(mapStream);
18+
using var stream = File.OpenRead(Path.Combine(Path.GetDirectoryName(file)!, t.Source));
19+
return Tileset.FromStream(stream);
20+
}
1921

20-
Tileset LoadTileset(ExternalTileset t)
21-
{
22-
using (var stream = File.OpenRead(Path.Combine(Path.GetDirectoryName(file), t.Source)))
23-
{
24-
return Tileset.FromStream(stream);
25-
}
26-
}
22+
foreach (var ts in map.Tilesets.OfType<ExternalTileset>())
23+
ts.LoadTileset(LoadTileset);
2724

28-
foreach (var ts in map.Tilesets.OfType<ExternalTileset>())
29-
ts.LoadTileset(LoadTileset);
30-
var q = from t in map.Tilesets
31-
from i in Enumerable.Range(t.FirstGid, t.Rows * t.Columns)
32-
select new
33-
{
34-
index = i,
35-
tile = t[i]
36-
};
37-
CollectionAssert.AllItemsAreUnique(q.ToArray().Select(i => i.index).ToArray());
38-
}
25+
var q = from t in map.Tilesets
26+
from i in Enumerable.Range(t.FirstGid, t.Rows * t.Columns)
27+
select new
28+
{
29+
index = i,
30+
tile = t[i]
31+
};
32+
CollectionAssert.AllItemsAreUnique(q.ToArray().Select(i => i.index).ToArray());
3933
}
4034
}
4135
}

TiledLib.Tests/External_tileset_TmxTests.cs

-37
This file was deleted.

TiledLib.Tests/LayerFormatTests.cs

+49-53
Original file line numberDiff line numberDiff line change
@@ -1,67 +1,63 @@
1-
using System.IO;
2-
using System.Linq;
3-
using Microsoft.VisualStudio.TestTools.UnitTesting;
4-
using TiledLib.Layer;
1+
using TiledLib.Layer;
52

6-
namespace TiledLib.Tests
3+
namespace TiledLib.Tests;
4+
5+
[TestClass]
6+
public class LayerFormatTests
77
{
8-
[TestClass]
9-
public class LayerFormatTests
8+
[DataTestMethod]
9+
[DataRow("Data/External_tileset_map.json")]
10+
[DataRow("Data/External_tileset_map.tmx")]
11+
[DataRow("Data/External_tileset_map_base64.json")]
12+
[DataRow("Data/External_tileset_map_base64.tmx")]
13+
[DataRow("Data/Level0.json")]
14+
public void TestUncompressedDecoding(string file)
1015
{
11-
[DataTestMethod]
12-
[DataRow("Data/External_tileset_map.json")]
13-
[DataRow("Data/External_tileset_map.tmx")]
14-
[DataRow("Data/External_tileset_map_base64.json")]
15-
[DataRow("Data/External_tileset_map_base64.tmx")]
16-
[DataRow("Data/Level0.json")]
17-
public void TestUncompressedDecoding(string file)
16+
using (var stream = File.OpenRead(file))
1817
{
19-
using (var stream = File.OpenRead(file))
20-
{
21-
var result = Map.FromStream(stream);
18+
var result = Map.FromStream(stream);
2219

23-
Assert.IsNotNull(result);
24-
Assert.IsNotNull(result.Layers);
25-
Assert.IsTrue(result.Layers.Any());
26-
foreach (var tl in result.Layers.OfType<TileLayer>())
27-
Assert.IsFalse(tl.Data.All(i => i == 0));
28-
}
20+
Assert.IsNotNull(result);
21+
Assert.IsNotNull(result.Layers);
22+
Assert.IsTrue(result.Layers.Any());
23+
foreach (var tl in result.Layers.OfType<TileLayer>())
24+
Assert.IsFalse(tl.Data.All(i => i == 0));
2925
}
26+
}
3027

31-
[DataTestMethod]
32-
[DataRow("Data/External_tileset_map_base64_gzip.tmx", "Data/External_tileset_map_base64.tmx")]
33-
[DataRow("Data/External_tileset_map_base64_zlib.tmx", "Data/External_tileset_map_base64.tmx")]
34-
[DataRow("Data/External_tileset_map_base64_zlib.json", "Data/External_tileset_map_base64.json")]
35-
[DataRow("Data/External_tileset_map_base64_gzip.json", "Data/External_tileset_map_base64.json")]
36-
public void TestCompression(string file, string referenceFile)
28+
[DataTestMethod]
29+
[DataRow("Data/External_tileset_map_base64_gzip.tmx", "Data/External_tileset_map_base64.tmx")]
30+
[DataRow("Data/External_tileset_map_base64_zlib.tmx", "Data/External_tileset_map_base64.tmx")]
31+
[DataRow("Data/External_tileset_map_base64_zlib.json", "Data/External_tileset_map_base64.json")]
32+
[DataRow("Data/External_tileset_map_base64_gzip.json", "Data/External_tileset_map_base64.json")]
33+
public void TestCompression(string file, string referenceFile)
34+
{
35+
Map referenceMap;
36+
using (var stream = File.OpenRead(referenceFile))
3737
{
38-
Map referenceMap;
39-
using (var stream = File.OpenRead(referenceFile))
40-
{
41-
referenceMap = Map.FromStream(stream);
42-
}
38+
referenceMap = Map.FromStream(stream);
39+
}
4340

44-
using (var stream = File.OpenRead(file))
45-
{
46-
var result = Map.FromStream(stream);
41+
using (var stream = File.OpenRead(file))
42+
{
43+
var result = Map.FromStream(stream);
4744

48-
Assert.IsNotNull(result);
49-
Assert.IsNotNull(result.Layers);
50-
Assert.IsTrue(result.Layers.Any());
51-
foreach (var tl in result.Layers.OfType<TileLayer>())
52-
Assert.IsFalse(tl.Data.All(i => i == 0));
45+
Assert.IsNotNull(result);
46+
Assert.IsNotNull(result.Layers);
47+
Assert.IsTrue(result.Layers.Any());
48+
foreach (var tl in result.Layers.OfType<TileLayer>())
49+
Assert.IsFalse(tl.Data.All(i => i == 0));
5350

54-
Assert.AreEqual(referenceMap.Layers.Length, result.Layers.Length);
55-
for (int i = 0; i < referenceMap.Layers.Length; i++)
56-
if (referenceMap.Layers[i] is TileLayer refLayer)
57-
{
58-
var layer = result.Layers[i] as TileLayer;
59-
Assert.IsNotNull(layer);
60-
Assert.IsNotNull(layer.Compression);
61-
Assert.AreEqual("base64", layer.Encoding);
62-
CollectionAssert.AreEqual(refLayer.Data, layer.Data);
63-
}
64-
}
51+
Assert.AreEqual(referenceMap.Layers.Length, result.Layers.Length);
52+
for (int i = 0; i < referenceMap.Layers.Length; i++)
53+
if (referenceMap.Layers[i] is TileLayer refLayer)
54+
{
55+
var layer = result.Layers[i] as TileLayer;
56+
Assert.IsNotNull(layer);
57+
Assert.IsNotNull(layer.Compression);
58+
Assert.AreEqual("base64", layer.Encoding);
59+
CollectionAssert.AreEqual(refLayer.Data, layer.Data);
60+
}
6561
}
6662
}
6763
}

0 commit comments

Comments
 (0)