コード例 #1
0
    public void Store_And_delete_multiple_entry()
    {
        // create storage and fill it with 5 FileCacheEntry
        FileCacheStorage storage = createAndFillStorage(5);

        // verify all FileCacheEntry
        Assert.AreEqual(true, storage.Has("1"));
        Assert.AreEqual(true, storage.Has("2"));
        Assert.AreEqual(true, storage.Has("3"));
        Assert.AreEqual(true, storage.Has("4"));
        Assert.AreEqual(true, storage.Has("5"));

        storage.SaveCacheStorageFile();
        // check FileCacheEntry count
        Assert.AreEqual(5, storage.CacheEntries.Count);

        // delete FileCacheEntry with id = "2"
        storage.Delete("2");
        Assert.AreEqual(null, storage.Get("2"));
        Assert.AreNotEqual(null, storage.Get("3"));
        Assert.AreEqual(false, storage.Has("2"));


        storage.SaveCacheStorageFile();
        // check FileCacheEntry count
        Assert.AreEqual(4, storage.CacheEntries.Count);

        // delete all and check
        storage.DeleteAll();
        storage.SaveCacheStorageFile();

        // check FileCacheEntry count
        Assert.AreEqual(0, storage.CacheEntries.Count);
    }
コード例 #2
0
    public void Test_Empty_Storage_After_Creation()
    {
        // create storage
        FileCacheStorage storage = new FileCacheStorage(_curDir, _curFile, _fileSystemMock.Object, _serializerMock.Object);

        // check new storage: should not have FileCacheEntry and version
        Assert.AreEqual(false, storage.Has("1"));
        Assert.AreEqual(null, storage.Version);
        Assert.AreEqual(null, storage.Get("2"));
        Assert.AreEqual(0, storage.CacheEntries.Count);

        try
        {
            // should not have exception, if delete FileCacheEntry in empty storage
            storage.Delete("3");
        }
        catch (Exception ex)
        {
            Assert.Fail("No exception should be thrown in Delete() for empty storage, but got " + ex.Message);
        }

        // check storage version after saving storage to file
        storage.SaveCacheStorageFile();
        Assert.AreEqual("1.0", storage.Version);
    }
コード例 #3
0
    public void Dir_Exist_File_Exist_And_Corrupted_Store_And_Delete_Entry()
    {
        // define: directory - exist, file - exist, but corrupted
        setupMocks(true);
        FileCacheStorage storage = new FileCacheStorage(_curDir, _curFile, _fileSystemMock.Object, _serializerMock.Object);
        // store 2 FileCacheEntry
        string id1 = "1";
        string id2 = "2";

        storage.Set(_data, id1);
        storage.Set(_data, id2);
        // check FileCacheEntry numbers
        storage.SaveCacheStorageFile();
        Assert.AreEqual(2, storage.CacheEntries.Count);
        // delete "1" FileCacheEntry
        storage.Delete(id1);
        // check FileCacheEntry numbers
        storage.SaveCacheStorageFile();
        Assert.AreEqual(1, storage.CacheEntries.Count);
    }
コード例 #4
0
    public void Store_Empty_Id()
    {
        FileCacheStorage storage = new FileCacheStorage(_curDir, _curFile, _fileSystemMock.Object, _serializerMock.Object);

        // test limits
        // store data with empty id
        storage.Set(_data, "");
        // store empty data with empty id
        storage.Set(new byte[0], "");
        storage.SaveCacheStorageFile();
        // check FileCacheEntry count
        Assert.AreEqual(1, storage.CacheEntries.Count);
    }
コード例 #5
0
    public void Store_And_verify_multiple_entries()
    {
        // create storage and fill it with 3 FileCacheEntry
        FileCacheStorage storage = createAndFillStorage(3);

        // verify all FileCacheEntry
        Assert.AreEqual(true, storage.Has("1"));
        Assert.AreEqual(true, storage.Has("2"));
        Assert.AreEqual(true, storage.Has("3"));

        storage.SaveCacheStorageFile();
        Assert.AreEqual(3, storage.CacheEntries.Count);

        // current version have to be set after SaveCacheStorageFile
        Assert.AreNotEqual(null, storage.Version);
    }