aboutsummaryrefslogtreecommitdiff
path: root/server/szurubooru/tests/func/test_diff.py
diff options
context:
space:
mode:
Diffstat (limited to 'server/szurubooru/tests/func/test_diff.py')
-rw-r--r--server/szurubooru/tests/func/test_diff.py409
1 files changed, 186 insertions, 223 deletions
diff --git a/server/szurubooru/tests/func/test_diff.py b/server/szurubooru/tests/func/test_diff.py
index 0134a3f..5e415b5 100644
--- a/server/szurubooru/tests/func/test_diff.py
+++ b/server/szurubooru/tests/func/test_diff.py
@@ -1,275 +1,238 @@
import pytest
-from szurubooru.func import diff
-
-
-@pytest.mark.parametrize('old,new,expected', [
- (
- [], [], None,
- ),
-
- (
- [],
- ['added'],
- {'type': 'list change', 'added': ['added'], 'removed': []},
- ),
- (
- ['removed'],
- [],
- {'type': 'list change', 'added': [], 'removed': ['removed']},
- ),
-
- (
- ['untouched'],
- ['untouched'],
- None,
- ),
+from szurubooru.func import diff
- (
- ['untouched'],
- ['untouched', 'added'],
- {'type': 'list change', 'added': ['added'], 'removed': []},
- ),
- (
- ['untouched', 'removed'],
- ['untouched'],
- {'type': 'list change', 'added': [], 'removed': ['removed']},
- ),
-])
+@pytest.mark.parametrize(
+ "old,new,expected",
+ [
+ (
+ [],
+ [],
+ None,
+ ),
+ (
+ [],
+ ["added"],
+ {"type": "list change", "added": ["added"], "removed": []},
+ ),
+ (
+ ["removed"],
+ [],
+ {"type": "list change", "added": [], "removed": ["removed"]},
+ ),
+ (
+ ["untouched"],
+ ["untouched"],
+ None,
+ ),
+ (
+ ["untouched"],
+ ["untouched", "added"],
+ {"type": "list change", "added": ["added"], "removed": []},
+ ),
+ (
+ ["untouched", "removed"],
+ ["untouched"],
+ {"type": "list change", "added": [], "removed": ["removed"]},
+ ),
+ ],
+)
def test_get_list_diff(old, new, expected):
assert diff.get_list_diff(old, new) == expected
-@pytest.mark.parametrize('old,new,expected', [
- (
- {}, {}, None,
- ),
-
- (
- {'removed key': 'removed value'},
- {},
- {
- 'type': 'object change',
- 'value':
+@pytest.mark.parametrize(
+ "old,new,expected",
+ [
+ (
+ {},
+ {},
+ None,
+ ),
+ (
+ {"removed key": "removed value"},
+ {},
{
- 'removed key':
- {
- 'type': 'deleted property',
- 'value': 'removed value',
+ "type": "object change",
+ "value": {
+ "removed key": {
+ "type": "deleted property",
+ "value": "removed value",
+ },
},
},
- },
- ),
-
- (
- {},
- {'added key': 'added value'},
- {
- 'type': 'object change',
- 'value':
+ ),
+ (
+ {},
+ {"added key": "added value"},
{
- 'added key':
- {
- 'type': 'added property',
- 'value': 'added value',
+ "type": "object change",
+ "value": {
+ "added key": {
+ "type": "added property",
+ "value": "added value",
+ },
},
},
- },
- ),
-
- (
- {'key': 'old value'},
- {'key': 'new value'},
- {
- 'type': 'object change',
- 'value':
+ ),
+ (
+ {"key": "old value"},
+ {"key": "new value"},
{
- 'key':
- {
- 'type': 'primitive change',
- 'old-value': 'old value',
- 'new-value': 'new value',
+ "type": "object change",
+ "value": {
+ "key": {
+ "type": "primitive change",
+ "old-value": "old value",
+ "new-value": "new value",
+ },
},
},
- },
- ),
-
- (
- {'key': 'untouched'},
- {'key': 'untouched'},
- None,
- ),
-
- (
- {'key': 'untouched', 'removed key': 'removed value'},
- {'key': 'untouched'},
- {
- 'type': 'object change',
- 'value':
+ ),
+ (
+ {"key": "untouched"},
+ {"key": "untouched"},
+ None,
+ ),
+ (
+ {"key": "untouched", "removed key": "removed value"},
+ {"key": "untouched"},
{
- 'removed key':
- {
- 'type': 'deleted property',
- 'value': 'removed value',
+ "type": "object change",
+ "value": {
+ "removed key": {
+ "type": "deleted property",
+ "value": "removed value",
+ },
},
},
- },
- ),
-
- (
- {'key': 'untouched'},
- {'key': 'untouched', 'added key': 'added value'},
- {
- 'type': 'object change',
- 'value':
+ ),
+ (
+ {"key": "untouched"},
+ {"key": "untouched", "added key": "added value"},
{
- 'added key':
- {
- 'type': 'added property',
- 'value': 'added value',
+ "type": "object change",
+ "value": {
+ "added key": {
+ "type": "added property",
+ "value": "added value",
+ },
},
},
- },
- ),
-
- (
- {'key': 'untouched', 'changed key': 'old value'},
- {'key': 'untouched', 'changed key': 'new value'},
- {
- 'type': 'object change',
- 'value':
+ ),
+ (
+ {"key": "untouched", "changed key": "old value"},
+ {"key": "untouched", "changed key": "new value"},
{
- 'changed key':
- {
- 'type': 'primitive change',
- 'old-value': 'old value',
- 'new-value': 'new value',
+ "type": "object change",
+ "value": {
+ "changed key": {
+ "type": "primitive change",
+ "old-value": "old value",
+ "new-value": "new value",
+ },
},
},
- },
- ),
-
- (
- {'key': {'subkey': 'old value'}},
- {'key': {'subkey': 'new value'}},
- {
- 'type': 'object change',
- 'value':
+ ),
+ (
+ {"key": {"subkey": "old value"}},
+ {"key": {"subkey": "new value"}},
{
- 'key':
- {
- 'type': 'object change',
- 'value':
- {
- 'subkey':
- {
- 'type': 'primitive change',
- 'old-value': 'old value',
- 'new-value': 'new value',
+ "type": "object change",
+ "value": {
+ "key": {
+ "type": "object change",
+ "value": {
+ "subkey": {
+ "type": "primitive change",
+ "old-value": "old value",
+ "new-value": "new value",
+ },
},
},
},
},
- },
- ),
-
- (
- {'key': {}},
- {'key': {'subkey': 'removed value'}},
- {
- 'type': 'object change',
- 'value':
+ ),
+ (
+ {"key": {}},
+ {"key": {"subkey": "removed value"}},
{
- 'key':
- {
- 'type': 'object change',
- 'value':
- {
- 'subkey':
- {
- 'type': 'added property',
- 'value': 'removed value',
+ "type": "object change",
+ "value": {
+ "key": {
+ "type": "object change",
+ "value": {
+ "subkey": {
+ "type": "added property",
+ "value": "removed value",
+ },
},
},
},
},
- },
- ),
-
- (
- {'key': {'subkey': 'removed value'}},
- {'key': {}},
- {
- 'type': 'object change',
- 'value':
+ ),
+ (
+ {"key": {"subkey": "removed value"}},
+ {"key": {}},
{
- 'key':
- {
- 'type': 'object change',
- 'value':
- {
- 'subkey':
- {
- 'type': 'deleted property',
- 'value': 'removed value',
+ "type": "object change",
+ "value": {
+ "key": {
+ "type": "object change",
+ "value": {
+ "subkey": {
+ "type": "deleted property",
+ "value": "removed value",
+ },
},
},
},
},
- },
- ),
-
- (
- {'key': ['old value']},
- {'key': ['new value']},
- {
- 'type': 'object change',
- 'value':
+ ),
+ (
+ {"key": ["old value"]},
+ {"key": ["new value"]},
{
- 'key':
- {
- 'type': 'list change',
- 'added': ['new value'],
- 'removed': ['old value'],
+ "type": "object change",
+ "value": {
+ "key": {
+ "type": "list change",
+ "added": ["new value"],
+ "removed": ["old value"],
+ },
},
},
- },
- ),
-
- (
- {'key': []},
- {'key': ['new value']},
- {
- 'type': 'object change',
- 'value':
+ ),
+ (
+ {"key": []},
+ {"key": ["new value"]},
{
- 'key':
- {
- 'type': 'list change',
- 'added': ['new value'],
- 'removed': [],
+ "type": "object change",
+ "value": {
+ "key": {
+ "type": "list change",
+ "added": ["new value"],
+ "removed": [],
+ },
},
},
- },
- ),
-
- (
- {'key': ['removed value']},
- {'key': []},
- {
- 'type': 'object change',
- 'value':
+ ),
+ (
+ {"key": ["removed value"]},
+ {"key": []},
{
- 'key':
- {
- 'type': 'list change',
- 'added': [],
- 'removed': ['removed value'],
+ "type": "object change",
+ "value": {
+ "key": {
+ "type": "list change",
+ "added": [],
+ "removed": ["removed value"],
+ },
},
},
- },
- ),
-])
+ ),
+ ],
+)
def test_get_dict_diff(old, new, expected):
assert diff.get_dict_diff(old, new) == expected

© 2015 - 2026 Jakob L. Kreuze