/
FindDifferingMembers.py
31 lines (24 loc) · 1.29 KB
/
FindDifferingMembers.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import ContributorTools, Levenshtein, sys
ContributorTools.haveOutputted = False
def checkDifferentDescriptions (clientinfo, serverinfo):
try:
maxDistance = sys.argv[1]
except:
maxDistance = 5
if clientinfo['name'] != serverinfo['name'] and Levenshtein.distance(clientinfo['name'], serverinfo['name']) <= maxDistance:
output(clientinfo, serverinfo)
elif clientinfo['name'] != serverinfo['name'] and clientinfo['name'].lower() == serverinfo['name'].lower():
output(clientinfo, serverinfo)
elif clientinfo['desc'] != serverinfo['desc'] and Levenshtein.distance(clientinfo['desc'], serverinfo['desc']) <= maxDistance:
output(clientinfo, serverinfo)
elif clientinfo['desc'] != serverinfo['desc'] and clientinfo['desc'].lower() == serverinfo['desc'].lower():
output(clientinfo, serverinfo)
def output(clientinfo, serverinfo):
if ContributorTools.haveOutputted:
print '----'
ContributorTools.haveOutputted = True
print 'Client name:', clientinfo['name'], '(' + clientinfo['searge'] + ')'
print 'Client description:', clientinfo['desc']
print 'Server name:', serverinfo['name'], '(' + serverinfo['searge'] + ')'
print 'Server description:', serverinfo['desc']
ContributorTools.forEachMember(checkDifferentDescriptions)