Exemplo n.º 1
0
    public virtual void ValidUntil_defaults_to_DateTimeMax()
    {
        var cloudBlob = StubACloudBlob();

        SetValidUntil(cloudBlob, TimeSpan.MaxValue);
        var resultValidUntil = BlobStorageDataBus.GetValidUntil(cloudBlob);

        Assert.AreEqual(DateTime.MaxValue, resultValidUntil);
    }
Exemplo n.º 2
0
    public void ValidUntil_is_UtcKind()
    {
        var cloudBlob = StubACloudBlob();

        SetValidUntil(cloudBlob, TimeSpan.FromHours(1));
        var resultValidUntil = BlobStorageDataBus.GetValidUntil(cloudBlob);

        Assert.AreEqual(DateTimeKind.Utc, resultValidUntil.Kind);
    }
Exemplo n.º 3
0
    public void ValidUntil_is_correctly_set()
    {
        var cloudBlob = StubACloudBlob();

        SetValidUntil(cloudBlob, TimeSpan.FromHours(1));
        var resultValidUntil = BlobStorageDataBus.GetValidUntil(cloudBlob);

        Assert.That(resultValidUntil, Is.EqualTo(DateTime.UtcNow.AddHours(1))
                    .Within(TimeSpan.FromSeconds(10)));
    }
Exemplo n.º 4
0
    public virtual void ValidUntil_defaults_to_DateTimeMax_IfDefaultTtlSet_ButNoLastModifiedDateSet()
    {
        var cloudBlob = StubACloudBlob();

        const int defaultTtl = 1;

        SetValidUntil(cloudBlob, TimeSpan.MaxValue);
        var resultValidUntil = BlobStorageDataBus.GetValidUntil(cloudBlob, defaultTtl);

        Assert.AreEqual(DateTime.MaxValue, resultValidUntil);
    }
Exemplo n.º 5
0
    public void ValidUntil_should_default_to_DateTimeMax_for_corrupted_value()
    {
        var cloudBlob = StubACloudBlob();

        SetValidUntil(cloudBlob, TimeSpan.FromHours(1));
        //HACK: set ValidUntil to be a non parsable string
        cloudBlob.Metadata["ValidUntil"] = "Not a date time";
        var resultValidUntil = BlobStorageDataBus.GetValidUntil(cloudBlob);

        Assert.AreEqual(DateTime.MaxValue, resultValidUntil);
    }
Exemplo n.º 6
0
    public virtual void ValidUntil_defaults_to_DefaultTtl_IfDefaultTtlSet()
    {
        var validUntil = DateTime.UtcNow;
        var cloudBlob  = StubACloudBlob(validUntil);

        const int defaultTtl = 1;

        SetValidUntil(cloudBlob, TimeSpan.MaxValue);
        var resultValidUntil = BlobStorageDataBus.GetValidUntil(cloudBlob, defaultTtl);

        Assert.AreEqual(validUntil.AddSeconds(defaultTtl), resultValidUntil);
    }
Exemplo n.º 7
0
    public virtual void ValidUntil_is_respected_IfDefaultTtlSet_EvenWhenNoLastModifiedDateFound()
    {
        var cloudBlob = StubACloudBlob();

        const int defaultTtl = 1;

        SetValidUntil(cloudBlob, TimeSpan.FromHours(1));
        var resultValidUntil = BlobStorageDataBus.GetValidUntil(cloudBlob, defaultTtl);

        Assert.That(resultValidUntil, Is.EqualTo(DateTime.UtcNow.AddHours(1))
                    .Within(TimeSpan.FromSeconds(10)));
    }
Exemplo n.º 8
0
    public virtual void ValidUntil_is_not_corrupt_by_change_in_local()
    {
        var currentCulture = Thread.CurrentThread.CurrentCulture;

        try
        {
            Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
            var cloudBlob = StubACloudBlob();
            var dateTime  = new DateTime(2100, 1, 4, 12, 0, 0);
            var timeSpan  = dateTime - DateTime.UtcNow;
            SetValidUntil(cloudBlob, timeSpan);
            Thread.CurrentThread.CurrentCulture = new CultureInfo("en-AU");
            var resultValidUntil = BlobStorageDataBus.GetValidUntil(cloudBlob);
            //Verify that day and month are not switched
            Assert.AreEqual(4, resultValidUntil.Day);
            Assert.AreEqual(1, resultValidUntil.Month);
        }
        finally
        {
            Thread.CurrentThread.CurrentCulture = currentCulture;
        }
    }