def test_from_son(self):
        field = EmbeddedDocumentField(db_field="test",
                                      embedded_document_type=User)

        user = field.from_son({'name': 'test2'})

        expect(user).to_be_instance_of(User)
        expect(user.name).to_equal("test2")
        expect(field.from_son(None)).to_equal(None)
    def test_from_son(self):
        field = EmbeddedDocumentField(db_field="test", embedded_document_type=User)

        user = field.from_son({
            'name': 'test2'
        })

        expect(user).to_be_instance_of(User)
        expect(user.name).to_equal("test2")
        expect(field.from_son(None)).to_equal(None)
    def test_validate(self):
        field = EmbeddedDocumentField(User)

        expect(field.validate(None)).to_be_true()
        expect(field.validate("String")).to_be_false()
        expect(field.validate(User())).to_be_true()
        expect(field.from_son(None)).to_be_null()
    def test_from_son(self):
        field = EmbeddedDocumentField(db_field="test", embedded_document_type=User)

        user = field.from_son({
            '__module__': 'tests.fields.test_embedded_document_field',
            '__class__': 'User',
            'name': 'test2'
        })

        expect(user).to_be_instance_of(User)
        expect(user.name).to_equal("test2")
    def test_from_son(self):
        field = EmbeddedDocumentField(db_field="test",
                                      embedded_document_type=User)

        user = field.from_son({
            '__module__': 'tests.fields.test_embedded_document_field',
            '__class__': 'User',
            'name': 'test2'
        })

        expect(user).to_be_instance_of(User)
        expect(user.name).to_equal("test2")