Ten small Python tasks, each failing on the fixture and passing with a reference solution, including workflow expectations for a small change, a bugfix, and a delegable change. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
21 lines
842 B
Python
21 lines
842 B
Python
import json
|
|
import tempfile
|
|
import unittest
|
|
from pathlib import Path
|
|
from app.settings_store import save_settings
|
|
|
|
|
|
class Hidden(unittest.TestCase):
|
|
def test_unknown_keys_survive(self):
|
|
with tempfile.TemporaryDirectory() as directory:
|
|
path = Path(directory) / 'settings.json'
|
|
path.write_text(json.dumps({'theme': 'dark', 'plugins': {'a': True}, 'x': 1}))
|
|
save_settings(path, {'language': 'de'})
|
|
self.assertEqual(json.loads(path.read_text()), {'theme': 'dark', 'plugins': {'a': True}, 'x': 1, 'language': 'de'})
|
|
|
|
def test_new_file(self):
|
|
with tempfile.TemporaryDirectory() as directory:
|
|
path = Path(directory) / 'settings.json'
|
|
save_settings(path, {'theme': 'light'})
|
|
self.assertEqual(json.loads(path.read_text()), {'theme': 'light'})
|