[CalendarServer-changes] [15396] twext/trunk/twext/enterprise/dal/model.py
source_changes at macosforge.org
source_changes at macosforge.org
Tue Dec 15 09:14:26 PST 2015
Revision: 15396
http://trac.calendarserver.org//changeset/15396
Author: cdaboo at apple.com
Date: 2015-12-15 09:14:26 -0800 (Tue, 15 Dec 2015)
Log Message:
-----------
Tweak schema compare output to be a little clearer on the differences.
Modified Paths:
--------------
twext/trunk/twext/enterprise/dal/model.py
Modified: twext/trunk/twext/enterprise/dal/model.py
===================================================================
--- twext/trunk/twext/enterprise/dal/model.py 2015-12-15 15:40:57 UTC (rev 15395)
+++ twext/trunk/twext/enterprise/dal/model.py 2015-12-15 17:14:26 UTC (rev 15396)
@@ -81,11 +81,8 @@
A useful string representation which includes the name and length if
present.
"""
- if self.length:
- lendesc = "(%s)" % (self.length)
- else:
- lendesc = ""
- return "<SQL Type: %r%s>" % (self.name, lendesc)
+ lendesc = "({})".format(self.length) if self.length else ""
+ return "<SQL Type: {}{}>".format(self.name, lendesc)
def normalizedName(self):
@@ -193,7 +190,7 @@
prevent pollution with unicode values.
"""
if not isinstance(x, str):
- raise ValueError("%r is not a str." % (x,))
+ raise ValueError("{!r} is not a str.".format(x,))
@@ -251,7 +248,7 @@
def __repr__(self):
- return "<Column (%s %r)>" % (self.name, self.type)
+ return "<Column ({} {!r})>".format(self.name, self.type)
def compare(self, other):
@@ -265,9 +262,9 @@
results = []
if self.name != other.name:
- results.append("Table: %s, column names %s and %s do not match" % (self.table.name, self.name, other.name,))
+ results.append("Table: {}, column names {} and {} do not match".format(self.table.name, self.name, other.name,))
if self.type != other.type:
- results.append("Table: %s, column name %s type mismatch" % (self.table.name, self.name,))
+ results.append("Table: {}, column name {} type mismatch".format(self.table.name, self.name,))
if self.default != other.default:
# Some DBs don't allow sequence as a default
if (
@@ -278,11 +275,11 @@
):
pass
else:
- results.append("Table: %s, column name %s default mismatch" % (self.table.name, self.name,))
+ results.append("Table: {}, column name {} default mismatch".format(self.table.name, self.name,))
if stringIfNone(self.references, "name") != stringIfNone(other.references, "name"):
- results.append("Table: %s, column name %s references mismatch" % (self.table.name, self.name,))
+ results.append("Table: {}, column name {} references mismatch".format(self.table.name, self.name,))
if stringIfNone(self.deleteAction, "") != stringIfNone(other.deleteAction, ""):
- results.append("Table: %s, column name %s delete action mismatch" % (self.table.name, self.name,))
+ results.append("Table: {}, column name {} delete action mismatch".format(self.table.name, self.name,))
return results
@@ -364,7 +361,7 @@
def __repr__(self):
- return "<Table %r:%r>" % (self.name, self.columns)
+ return "<Table {}:{!r}>".format(self.name, self.columns)
def compare(self, other):
@@ -383,11 +380,11 @@
])
for item in set(myColumns.keys()) - set(otherColumns.keys()):
results.append(
- "Table: %s, extra column: %s" % (self.name, myColumns[item].name,)
+ "Table: {}, extra column: {}".format(self.name, myColumns[item].name,)
)
for item in set(otherColumns.keys()) - set(myColumns.keys()):
results.append(
- "Table: %s, missing column: %s" % (self.name, otherColumns[item].name,)
+ "Table: {}, missing column: {}".format(self.name, otherColumns[item].name,)
)
for name in set(myColumns.keys()) & set(otherColumns.keys()):
@@ -397,19 +394,19 @@
listIfNone(self.primaryKey),
listIfNone(other.primaryKey),
)]):
- results.append("Table: %s, mismatched primary key" % (self.name,))
+ results.append("Table: {}, mismatched primary key".format(self.name,))
for myRow, otherRow in zip(self.schemaRows, other.schemaRows):
myRows = dict([(column.name, value) for column, value in myRow.items()])
otherRows = dict([(column.name, value) for column, value in otherRow.items()])
if myRows != otherRows:
- results.append("Table: %s, mismatched schema rows: %s" % (self.name, myRows))
+ results.append("Table: {}, mismatched schema rows: {}".format(self.name, myRows))
# Compare psuedo-constraints - ones which include implicit primary key and unique
# index items.
diff_constraints = set(self.pseudoConstraints()) ^ set(other.pseudoConstraints())
if diff_constraints:
- results.append("Table: %s, mismatched constraints: %s" % (self.name, diff_constraints))
+ results.append("Table: {}, mismatched constraints: {}".format(self.name, diff_constraints))
return results
@@ -427,7 +424,7 @@
for column in self.columns:
if column.name == name:
return column
- raise KeyError("no such column: %r" % (name,))
+ raise KeyError("no such column: {}".format(name,))
def addColumn(self, name, type, default=NO_DEFAULT, notNull=False, primaryKey=False):
@@ -572,8 +569,9 @@
def __init__(self, name, table, columns, index_type=""):
self.name = (
- "%s:%s:(%s)"
- % (table.name, index_type, ",".join([col.name for col in columns]))
+ "{}:{}:({})".format(
+ table.name, index_type, ",".join([col.name for col in columns])
+ )
)
self.original_name = name if name else self.name
self.table = table
@@ -598,11 +596,11 @@
])
for item in set(myColumns.keys()) - set(otherColumns.keys()):
results.append(
- "Index: %s, extra column: %s" % (self.original_name, myColumns[item].name,)
+ "Index: {}, extra column: {}".format(self.original_name, myColumns[item].name,)
)
for item in set(otherColumns.keys()) - set(myColumns.keys()):
results.append(
- "Index: %s, missing column: %s" % (self.original_name, otherColumns[item].name,)
+ "Index: {}, missing column: {}".format(self.original_name, otherColumns[item].name,)
)
return results
@@ -624,7 +622,7 @@
def __repr__(self):
- return "<Sequence %r>" % (self.name,)
+ return "<Sequence {}>".format(self.name,)
def compare(self, other):
@@ -654,7 +652,7 @@
def __repr__(self):
- return "<Function %r>" % (self.name,)
+ return "<Function {}>".format(self.name,)
def compare(self, other):
@@ -696,7 +694,7 @@
def __repr__(self):
- return "<Schema %r>" % (self.filename,)
+ return "<Schema {}>".format(self.filename,)
def compare(self, other):
@@ -721,13 +719,11 @@
])
for item in set(myItems.keys()) - set(otherItems.keys()):
results.append(
- "Schema: %s, extra %s: %s"
- % (other.filename, descriptor, myItems[item].name)
+ "Schema: extra {}: {}".format(descriptor, myItems[item].name,)
)
for item in set(otherItems.keys()) - set(myItems.keys()):
results.append(
- "Schema: %s, missing %s: %s"
- % (self.filename, descriptor, otherItems[item].name)
+ "Schema: missing {}: {}".format(descriptor, otherItems[item].name,)
)
for name in set(myItems.keys()) & set(otherItems.keys()):
@@ -738,6 +734,8 @@
_compareLists(self.sequences, other.sequences, "sequence", lowerTruncateName)
_compareLists(self.functions, other.functions, "functions", lowerTruncateName)
+ if results:
+ results.insert(0, "Comparing schema: {} to {}".format(self.filename, other.filename,))
return results
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20151215/f2c5197a/attachment.html>
More information about the calendarserver-changes
mailing list