mirror of
https://github.com/ysoftdevs/wapifuzz.git
synced 2026-05-04 14:34:22 +02:00
Added .travisci file
Also few tests were fixed
This commit is contained in:
68
parser/OpenApiAnyConvertor.cs
Normal file
68
parser/OpenApiAnyConvertor.cs
Normal file
@@ -0,0 +1,68 @@
|
||||
using System;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
using Microsoft.OpenApi.Any;
|
||||
using Microsoft.OpenApi.Writers;
|
||||
|
||||
namespace Parser
|
||||
{
|
||||
public static class OpenApiAnyConvertor
|
||||
{
|
||||
public static string GetPrimitiveValue(IOpenApiAny value)
|
||||
{
|
||||
IOpenApiPrimitive primitive = (IOpenApiPrimitive) value;
|
||||
|
||||
switch (primitive.PrimitiveType)
|
||||
{
|
||||
case PrimitiveType.String:
|
||||
OpenApiString stringValue = (OpenApiString) primitive;
|
||||
return stringValue.Value;
|
||||
case PrimitiveType.Boolean:
|
||||
OpenApiBoolean booleanValue = (OpenApiBoolean) primitive;
|
||||
return booleanValue.Value.ToString();
|
||||
case PrimitiveType.Integer:
|
||||
OpenApiInteger integerValue = (OpenApiInteger) primitive;
|
||||
return integerValue.Value.ToString();
|
||||
case PrimitiveType.Long:
|
||||
OpenApiLong longValue = (OpenApiLong) primitive;
|
||||
return longValue.Value.ToString();
|
||||
case PrimitiveType.Float:
|
||||
OpenApiFloat floatValue = (OpenApiFloat) primitive;
|
||||
return floatValue.Value.ToString(CultureInfo.InvariantCulture);
|
||||
case PrimitiveType.Double:
|
||||
OpenApiDouble doubleValue = (OpenApiDouble) primitive;
|
||||
return doubleValue.Value.ToString(CultureInfo.InvariantCulture);
|
||||
case PrimitiveType.Byte:
|
||||
OpenApiByte byteValue = (OpenApiByte) primitive;
|
||||
return Encoding.Default.GetString(byteValue.Value);
|
||||
case PrimitiveType.Binary:
|
||||
OpenApiBinary binaryValue = (OpenApiBinary) primitive;
|
||||
StringBuilder builder = new StringBuilder();
|
||||
foreach (byte byteVal in binaryValue.Value)
|
||||
{
|
||||
builder.Append(Convert.ToString(byteVal, 2).PadLeft(8, '0'));
|
||||
}
|
||||
return builder.ToString();
|
||||
case PrimitiveType.Date:
|
||||
OpenApiDate dateValue = (OpenApiDate) primitive;
|
||||
return dateValue.Value.ToString(CultureInfo.InvariantCulture);
|
||||
case PrimitiveType.DateTime:
|
||||
OpenApiDateTime dateTimeValue = (OpenApiDateTime) primitive;
|
||||
return dateTimeValue.Value.ToString(CultureInfo.InvariantCulture);
|
||||
case PrimitiveType.Password:
|
||||
OpenApiPassword passwordValue = (OpenApiPassword) primitive;
|
||||
return passwordValue.Value;
|
||||
default:
|
||||
throw new NotImplementedException("This data example type is not supported yet!");
|
||||
}
|
||||
}
|
||||
|
||||
public static string GetJsonValue(IOpenApiAny value)
|
||||
{
|
||||
StringBuilder builder = new StringBuilder();
|
||||
value.Write(new OpenApiJsonWriter(new StringWriter(builder)), OpenApiDocumentParser.Version);
|
||||
return builder.ToString();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,6 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Threading;
|
||||
using Microsoft.OpenApi.Models;
|
||||
using NUnit.Framework;
|
||||
using Models;
|
||||
@@ -7,6 +9,12 @@ namespace Parser.Tests
|
||||
{
|
||||
public class EndpointParserTests
|
||||
{
|
||||
[SetUp]
|
||||
public void SetUp()
|
||||
{
|
||||
Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
|
||||
}
|
||||
|
||||
readonly OpenApiDocument _document = new OpenApiDocument {Paths = new OpenApiPaths()};
|
||||
private void AddTwoTestingPaths()
|
||||
{
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
using System;
|
||||
using System.Globalization;
|
||||
using System.Threading;
|
||||
using Microsoft.OpenApi.Any;
|
||||
using NUnit.Framework;
|
||||
|
||||
@@ -6,6 +8,12 @@ namespace Parser.Tests
|
||||
{
|
||||
public class OpenApiAnyConvertorTests
|
||||
{
|
||||
[SetUp]
|
||||
public void SetUp()
|
||||
{
|
||||
Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void ConvertStringPrimitiveShouldReturnCorrectValue()
|
||||
{
|
||||
@@ -51,7 +59,7 @@ namespace Parser.Tests
|
||||
public void ConvertDateTimePrimitiveShouldReturnCorrectValue()
|
||||
{
|
||||
var primitiveValue = OpenApiAnyConvertor.GetPrimitiveValue(new OpenApiDateTime(DateTime.UnixEpoch));
|
||||
Assert.AreEqual("1/1/1970 12:00:00 AM +00:00", primitiveValue);
|
||||
Assert.AreEqual("01/01/1970 00:00:00 +00:00", primitiveValue);
|
||||
}
|
||||
|
||||
[Test]
|
||||
|
||||
Reference in New Issue
Block a user