Ejemplo n.º 1
0
        public void HashExists_HashNotExists_False()
        {
            FilesHashesHandler filesHashesHandler = new FilesHashesHandler(
                A.Dummy <IDuplicateChecker>(),
                A.Dummy <IObjectSerializer>(),
                new UnregisteredHashesAdder(mConfiguration),
                mConfiguration);

            filesHashesHandler.AddFileHash("ABC123", "fileName");

            Assert.False(filesHashesHandler.HashExists("ABC1235"));
        }
Ejemplo n.º 2
0
        public void Ctor_DeserializeCalledForLoadingDB()
        {
            IObjectSerializer objectSerializer = A.Fake <IObjectSerializer>();

            FilesHashesHandler filesHashesHandler = new FilesHashesHandler(
                A.Dummy <IDuplicateChecker>(),
                objectSerializer,
                new UnregisteredHashesAdder(mConfiguration),
                mConfiguration);

            A.CallTo(() => objectSerializer.Deserialize <Dictionary <string, List <string> > >(
                         Path.Combine(mConfiguration.Value.DriveRootDirectory, "hashes.txt")))
            .MustHaveHappenedOnceExactly();
        }
Ejemplo n.º 3
0
        public void HashExists_HashAlreadyExists_True()
        {
            FilesHashesHandler filesHashesHandler = new FilesHashesHandler(
                A.Dummy <IDuplicateChecker>(),
                A.Dummy <IObjectSerializer>(),
                new UnregisteredHashesAdder(mConfiguration),
                mConfiguration);

            const string hash = "ABC123";

            filesHashesHandler.AddFileHash(hash, "fileName");

            Assert.True(filesHashesHandler.HashExists(hash));
        }
Ejemplo n.º 4
0
        public void AddFileHash_FileHashNotExists_FileHashAdded()
        {
            FilesHashesHandler filesHashesHandler = new FilesHashesHandler(
                A.Dummy <IDuplicateChecker>(),
                A.Dummy <IObjectSerializer>(),
                new UnregisteredHashesAdder(mConfiguration),
                mConfiguration);

            Assert.Equal(0, filesHashesHandler.HashesCount);

            filesHashesHandler.AddFileHash("ABC123", "FileName.ext");
            filesHashesHandler.AddFileHash("ABC1234", "FileName.ext");
            Assert.Equal(2, filesHashesHandler.HashesCount);
        }
Ejemplo n.º 5
0
        public void WriteHashesFiles_FileCreated()
        {
            IObjectSerializer objectSerializer = A.Fake <IObjectSerializer>();

            FilesHashesHandler filesHashesHandler = new FilesHashesHandler(
                A.Fake <IDuplicateChecker>(),
                objectSerializer,
                new UnregisteredHashesAdder(mConfiguration),
                mConfiguration);

            filesHashesHandler.WriteHashesFiles();
            A.CallTo(() => objectSerializer.Serialize(
                         A <Dictionary <string, List <string> > > .Ignored,
                         Path.Combine(mConfiguration.Value.DriveRootDirectory, "hashes.txt")))
            .MustHaveHappened();
        }
Ejemplo n.º 6
0
        public void AddFileHash_FileHashAlreadyExists_PathIsAdded()
        {
            FilesHashesHandler filesHashesHandler = new FilesHashesHandler(
                A.Dummy <IDuplicateChecker>(),
                A.Dummy <IObjectSerializer>(),
                new UnregisteredHashesAdder(mConfiguration),
                mConfiguration);

            Assert.Equal(0, filesHashesHandler.HashesCount);

            const string firstFileName  = "FileName.ext";
            const string secondFileName = "FileName2.ext";

            filesHashesHandler.AddFileHash("ABC123", firstFileName);
            filesHashesHandler.AddFileHash("ABC123", secondFileName);

            Assert.Equal(1, filesHashesHandler.HashesCount);

            KeyValuePair <string, List <string> > pair = filesHashesHandler.HashToFilePathDict.First();

            Assert.Equal(firstFileName, pair.Value[0]);
            Assert.Equal(secondFileName, pair.Value[1]);
        }