Browse Source

updated gltf validator

Vicente Penades 3 years ago
parent
commit
041eef62ee

+ 12 - 0
src/Shared/Guard.cs

@@ -24,6 +24,18 @@ namespace SharpGLTF
             throw new ArgumentException(message, parameterName);
         }
 
+        public static void FileNameMustBeValid(string fileName, string parameterName, string message = "")
+        {
+            Guard.NotNullOrEmpty(fileName, parameterName, message);
+
+            var invalid = System.IO.Path.GetInvalidFileNameChars();
+
+            if (!fileName.Any(c => invalid.Contains(c))) return;
+
+            if (string.IsNullOrWhiteSpace(message)) message = $"{fileName} is invalid or does not exist.";
+            throw new ArgumentException(message, parameterName);
+        }
+
         public static void FilePathMustBeValid(string filePath, string parameterName, string message = "")
         {
             // based on https://referencesource.microsoft.com/#mscorlib/system/io/file.cs,3360368484a9f131

+ 2 - 4
src/SharpGLTF.Core/Schema2/gltf.Camera.cs

@@ -175,10 +175,8 @@ namespace SharpGLTF.Schema2
             Guard.MustBeGreaterThan(zfar, (float)_zfarExclusiveMinimum, nameof(zfar));
             Guard.MustBeGreaterThan(zfar, znear, nameof(zfar));
             Guard.MustBeLessThan(zfar, float.PositiveInfinity, nameof(zfar));
-
-            // these are considered warnings
-            // Guard.MustBeGreaterThan(xmag, 0, nameof(xmag));
-            // Guard.MustBeGreaterThan(ymag, 0, nameof(ymag));
+            Guard.MustBeGreaterThan(xmag, 0, nameof(xmag));
+            Guard.MustBeGreaterThan(ymag, 0, nameof(ymag));
         }
 
         #endregion

+ 1 - 1
tests/SharpGLTF.NUnit/SharpGLTF.NUnit.csproj

@@ -8,7 +8,7 @@
   </PropertyGroup>
 
   <ItemGroup>    
-    <PackageReference Include="GltfValidator" Version="2.0.0-dev.3.5.202109201056" />    
+    <PackageReference Include="GltfValidator" Version="2.0.0-dev.3.6.202204261149" />    
     <PackageReference Include="nunit" Version="3.13.3" />
     <PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
   </ItemGroup>