You can try with this:
from django.test import TestCase
from pymongo import MongoClient
import datetime
from asmorm.models import Observation
class ObservationTestCase(TestCase):
def test_observation(self):
Observation.objects.create()
observation = Observation.objects.all()[0]
self.assertIsNotNone(observation)
client = MongoClient("mongodb://localhost/")
db = client["test_demo"]
db.asmorm_observation.update_one(
{"_id": observation.pk},
{
"$set": {
"history": [
{"update": datetime.datetime.now(datetime.UTC), "value": "1"}
]
}
},
)
observation.refresh_from_db()
print(observation.history)
in tests.py
And this
import django_mongodb_backend
from django.db import models
from django_mongodb_backend.fields import ArrayField
class Observation(models.Model):
_if = django_mongodb_backend.fields.ObjectIdAutoField(primary_key=True)
history = ArrayField(base_field=models.JSONField(), default=list)
in models.py