Пример #1
0
        public void ShouldDeserializeDepartment()
        {
            var deserialized = XtiSerializer.Deserialize <Employee>("{ \"Department\": { \"ID\": 1, \"Name\": \"IT\" } }");

            Assert.That(deserialized.Department.ID, Is.EqualTo(1));
            Assert.That(deserialized.Department.Name, Is.EqualTo("IT"));
        }
Пример #2
0
        public void ShouldDeserializeRecord()
        {
            var original     = new TestRecord(1, EmployeeType.Values.Permanent);
            var serialized   = XtiSerializer.Serialize(original);
            var deserialized = XtiSerializer.Deserialize(serialized, () => new TestRecord(0, EmployeeType.Values.None));

            Assert.That(deserialized, Is.EqualTo(original));
        }
Пример #3
0
    public void ShouldOverrideWithJsonConverterAttribute()
    {
        var key          = new AnotherTestValue(23);
        var serialized   = XtiSerializer.Serialize(key);
        var deserialized = XtiSerializer.Deserialize(serialized, () => new AnotherTestValue(0));

        Assert.That(deserialized, Is.EqualTo(key));
    }
Пример #4
0
    private static async Task <PageContextRecord> execute(IServiceProvider services)
    {
        var pageContext = services.GetRequiredService <IPageContext>();
        var serialized  = await pageContext.Serialize();

        var deserialized = XtiSerializer.Deserialize <PageContextRecord>(serialized);

        return(deserialized);
    }
    private static async Task <StartRequestModel> getStartRequest(TestInput input)
    {
        var requestFiles = input.CurrentAction.TempLog?.StartRequestFiles(input.Clock.Now().AddMinutes(1)).ToArray() ?? new ITempLogFile[0];

        Assert.That(requestFiles.Length, Is.EqualTo(1), "Should log end of request");
        var serializedRequest = await requestFiles[0].Read();
        var request           = XtiSerializer.Deserialize <StartRequestModel>(serializedRequest);

        return(request);
    }
    private static async Task <LogEventModel> getEvent(TestInput input)
    {
        var eventFiles = input.CurrentAction.TempLog?.LogEventFiles(input.Clock.Now().AddMinutes(1)).ToArray() ?? new ITempLogFile[0];

        Assert.That(eventFiles.Length, Is.EqualTo(1), "Should log event");
        var serializedEvent = await eventFiles[0].Read();
        var evt             = XtiSerializer.Deserialize <LogEventModel>(serializedEvent);

        return(evt);
    }
Пример #7
0
    public void ShouldConvertFromJson()
    {
        var timeObj = new TimeObject {
            Time = new Time(15, 45)
        };
        var serialized   = XtiSerializer.Serialize(timeObj);
        var deserialized = XtiSerializer.Deserialize <TimeObject>(serialized);

        Assert.That(deserialized.Time, Is.EqualTo(new Time(15, 45)));
    }
    private static async Task <StartSessionModel[]> getStartSessions(TestInput input)
    {
        var sessionFiles = input.CurrentAction.TempLog?.StartSessionFiles(input.Clock.Now().AddMinutes(1)) ?? new ITempLogFile[0];
        var sessions     = new List <StartSessionModel>();

        foreach (var sessionFile in sessionFiles)
        {
            var serializedSession = await sessionFile.Read();

            var session = XtiSerializer.Deserialize <StartSessionModel>(serializedSession);
            sessions.Add(session);
        }
        return(sessions.ToArray());
    }
    public void ShouldDeserializeNumericValue()
    {
        var employee = new Employee
        {
            Name         = "Xartogg",
            EmployeeType = EmployeeType.Values.Permanent,
            HourlyWages  = 12.34M
        };
        var serialized   = XtiSerializer.Serialize(employee);
        var deserialized = XtiSerializer.Deserialize <Employee>(serialized);

        Assert.That(deserialized.EmployeeType, Is.EqualTo(EmployeeType.Values.Permanent));
        Assert.That(deserialized.Name, Is.EqualTo("Xartogg"));
        Assert.That(deserialized.HourlyWages, Is.EqualTo(12.34));
    }
    public async Task ShouldCreateSessionWithAnonymousUser()
    {
        var input = await setup();

        input.UserContext.SetCurrentUser(AppUserName.Anon);
        await input.GetAsync("/Fake/Current/Controller1/Action1");

        var anonUser     = input.UserContext.User(AppUserName.Anon);
        var sessionFiles = input.CurrentAction.TempLog?.StartSessionFiles(input.Clock.Now().AddMinutes(1)).ToArray() ?? new ITempLogFile[0];

        Assert.That(sessionFiles.Length, Is.EqualTo(1), "Should use session for authenticated user");
        var serializedSession = await sessionFiles[0].Read();
        var session           = XtiSerializer.Deserialize <StartSessionModel>(serializedSession);

        Assert.That(session.UserName, Is.EqualTo(anonUser.UserName().Value), "Should create session with anonymous user");
    }
Пример #11
0
    public void Load()
    {
        var cookieText = httpContextAccessor.HttpContext?.Request.Cookies[cookieName];

        if (string.IsNullOrWhiteSpace(cookieText))
        {
            SessionKey            = "";
            SessionExpirationTime = DateTimeOffset.MinValue;
            RequesterKey          = "";
        }
        else
        {
            var unprotectedText = new DecryptedValue(protector, cookieText).Value();
            var info            = XtiSerializer.Deserialize <AnonInfo>(unprotectedText);
            SessionKey            = info.SessionKey;
            SessionExpirationTime = info.SessionExpirationTime;
            RequesterKey          = info.RequesterKey;
        }
    }
Пример #12
0
 public static AggregateSchedule Deserialize(string serialized) =>
 new AggregateSchedule
 (
     XtiSerializer.Deserialize <ScheduleOptions>(serialized).ToSchedules()
 );
Пример #13
0
 public string Serialize() => XtiSerializer.Serialize(ToScheduleOptions());
    public void ShouldDeserializeNullStringAsEmptyString()
    {
        var deserialized = XtiSerializer.Deserialize <Employee>("{ \"EmployeeType\": \"Permanent\", \"Name\": null }");

        Assert.That(deserialized.Name, Is.EqualTo(""));
    }
    public void ShouldDeserializeNumericValueFromString()
    {
        var deserialized = XtiSerializer.Deserialize <Employee>("{ \"EmployeeType\": \"Permanent\" }");

        Assert.That(deserialized.EmployeeType, Is.EqualTo(EmployeeType.Values.Permanent));
    }
    public void ShouldDeserializeNumericValueFromNumber()
    {
        var deserialized = XtiSerializer.Deserialize <Employee>("{ \"EmployeeType\": 10 }");

        Assert.That(deserialized.EmployeeType, Is.EqualTo(EmployeeType.Values.Temp));
    }
Пример #17
0
        public void ShouldDeserializeNullStringAsEmptyString()
        {
            var deserialized = XtiSerializer.Deserialize <Employee>("{ \"Department\": { \"ID\": 1, \"Name\": null } }");

            Assert.That(deserialized.Department.Name, Is.EqualTo(""));
        }
Пример #18
0
        public void ShouldDeserializeNullAsNewObject()
        {
            var deserialized = XtiSerializer.Deserialize <Employee>("null");

            Assert.That(deserialized.Name, Is.EqualTo(""));
        }
Пример #19
0
        public void ShouldDeserializeNullNumericValueAsDefault()
        {
            var deserialized = XtiSerializer.Deserialize <Employee>("{ \"EmployeeType\": null }");

            Assert.That(deserialized.EmployeeType, Is.EqualTo(EmployeeType.Values.GetDefault()));
        }
Пример #20
0
        public void ShouldDeserializeNullDepartmentAsNonNull()
        {
            var deserialized = XtiSerializer.Deserialize <Employee>("{ \"Department\": null }");

            Assert.That(deserialized.Department, Is.Not.Null);
        }