public void CanMatchNothing()
        {
            var saves = TestFactory.SavesMap()
                        .WithScript(new LocalScriptFile($"{_vam}1.cs", "1"), out var script1)
                        .Build();
            var registry = TestFactory.Reg(
                TestFactory.RegScript("my-script", TestFactory.RegVer("1.0.0", TestFactory.RegFile("2.cs", "2"))));

            var result = _handler.MatchLocalFilesToRegistry(saves, registry);

            PartyAssertions.AreDeepEqual(new RegistrySavesMatches
            {
                HashMatches     = new RegistrySavesMatch[0],
                FilenameMatches = new RegistrySavesMatch[0],
                NoMatches       = new[] { script1 }
            }, result);
        }
        public void DoesNotMatchByFilenameWhenMatchedByHash()
        {
            var saves = TestFactory.SavesMap()
                        .WithScript(new LocalScriptFile($"{_vam}1.cs", "1"), out var local1)
                        .Build();
            var file     = TestFactory.RegFile("1.cs", "1");
            var version  = TestFactory.RegVer("1.0.0", file);
            var package  = TestFactory.RegScript("my-script", version);
            var registry = TestFactory.Reg(package);

            var result = _handler.MatchLocalFilesToRegistry(saves, registry);

            PartyAssertions.AreDeepEqual(new RegistrySavesMatches
            {
                HashMatches = new[] { new RegistrySavesMatch {
                                          Remote = new RegistryPackageFileContext(registry, package, version, file), Local = local1
                                      } },
                FilenameMatches = new RegistrySavesMatch[0],
                NoMatches       = new LocalScriptFile[0]
            }, result);
        }