File: TestClock.cs
Web Access
Project: src\src\Caching\SqlServer\test\Microsoft.Extensions.Caching.SqlServer.Tests.csproj (Microsoft.Extensions.Caching.SqlServer.Tests)
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
 
using System;
 
namespace Microsoft.Extensions.Internal;
 
public class TestClock : ISystemClock
{
    public TestClock()
    {
        // Examples:
        // DateTime.Now:                6/29/2015 1:20:40 PM
        // DateTime.UtcNow:             6/29/2015 8:20:40 PM
        // DateTimeOffset.Now:          6/29/2015 1:20:40 PM - 07:00
        // DateTimeOffset.UtcNow:       6/29/2015 8:20:40 PM + 00:00
        // DateTimeOffset.UtcDateTime:  6/29/2015 8:20:40 PM
        UtcNow = new DateTimeOffset(2013, 1, 1, 1, 0, 0, offset: TimeSpan.Zero);
    }
 
    public DateTimeOffset UtcNow { get; private set; }
 
    public TestClock Add(TimeSpan timeSpan)
    {
        UtcNow = UtcNow.Add(timeSpan);
 
        return this;
    }
}