More strict birthday logic
This commit is contained in:
@ -412,4 +412,67 @@ public class UnitTestCalculations
|
||||
Assert.IsTrue(distance == 1.4142135623730951);
|
||||
}
|
||||
|
||||
private static (string?, string, string) Get(string[] segments)
|
||||
{
|
||||
(string?, string, string) result;
|
||||
if ((!segments[0].Contains('#') && (segments[3].Contains('~') || segments[3].Contains('#'))) || (segments[0].Contains('#') && !segments[3].Contains('#')))
|
||||
result = new(null, segments[3], segments[4]);
|
||||
else
|
||||
result = new(segments[0], segments[3], segments[4]);
|
||||
return result;
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void TestMoveToVerify()
|
||||
{
|
||||
string http;
|
||||
string? minusOne;
|
||||
string? minusTwo;
|
||||
string[] segments;
|
||||
string[] beforeSegments;
|
||||
string[] matchDirectories;
|
||||
string? personKeyFormattedNew;
|
||||
string? personDisplayDirectory;
|
||||
string personDisplayDirectoryNew;
|
||||
string personDisplayDirectoryNameNew;
|
||||
string personKeyFormattedDirectoryNew;
|
||||
string sourceDirectory = @"";
|
||||
string sourceFile = @"\People - C.tsv";
|
||||
if (!File.Exists(sourceFile))
|
||||
throw new Exception();
|
||||
string[] lines = File.ReadAllLines(sourceFile);
|
||||
for (int i = 0; i < lines.Length; i++)
|
||||
{
|
||||
if (!lines[i].Contains("https://"))
|
||||
continue;
|
||||
segments = lines[i].Split('\t');
|
||||
beforeSegments = lines[i - 1].Split('\t');
|
||||
if (beforeSegments.Length < 4 || segments.Length < 5)
|
||||
continue;
|
||||
matchDirectories = Directory.GetDirectories(sourceDirectory, beforeSegments[0], SearchOption.AllDirectories);
|
||||
if (matchDirectories.Length != 1)
|
||||
continue;
|
||||
personDisplayDirectory = Path.GetDirectoryName(matchDirectories[0]);
|
||||
if (personDisplayDirectory is null)
|
||||
continue;
|
||||
minusOne = Path.GetDirectoryName(personDisplayDirectory);
|
||||
if (minusOne is null)
|
||||
continue;
|
||||
minusTwo = Path.GetDirectoryName(minusOne);
|
||||
if (minusTwo is null)
|
||||
continue;
|
||||
(personKeyFormattedNew, personDisplayDirectoryNameNew, http) = Get(segments);
|
||||
if (personKeyFormattedNew is null)
|
||||
continue;
|
||||
personDisplayDirectoryNew = Path.Combine(minusTwo, "Verify", personDisplayDirectoryNameNew);
|
||||
if (Directory.Exists(personDisplayDirectoryNew))
|
||||
continue;
|
||||
personKeyFormattedDirectoryNew = Path.Combine(personDisplayDirectoryNew, personKeyFormattedNew);
|
||||
Directory.Move(personDisplayDirectory, personDisplayDirectoryNew);
|
||||
_ = Directory.CreateDirectory(personKeyFormattedDirectoryNew);
|
||||
File.WriteAllText(Path.Combine(personKeyFormattedDirectoryNew, "Facebook.txt"), http);
|
||||
}
|
||||
Assert.IsTrue(lines.Any());
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user