Beispiel #1
0
    def test_model_User(self):
        model_info = self.model_inspector.models[self.classes["User"]]
        self.assertEqual(model_info.fields_to_one, [])
        field_names = [f.name for f in model_info.fields_to_many]
        self.assertEqual(len(field_names), len(set(field_names)))

        expected_fields = {
            Field("post_set", Field.CATEGORIES.TO_MANY, Post),
            Field("aa_set", Field.CATEGORIES.TO_MANY, self.classes["AA"]),
        }
        self.assertEqual(len(model_info.fields_to_many), 5)
        self.assertTrue(set(model_info.fields_to_many) > set(expected_fields))
        expected_auth_user_paths = [""]
        self.assertEqual(model_info.auth_user_paths, expected_auth_user_paths)
Beispiel #2
0
    def test_model_a(self):
        model_info = self.model_inspector.models[self.classes["A"]]

        expected_fields_own = {
            Field("id", Field.CATEGORIES.OWN, None),
            Field("field_abstract", Field.CATEGORIES.OWN, None),
            Field("field_a", Field.CATEGORIES.OWN, None),
        }
        expected_fields_to_one = {
            Field("user", Field.CATEGORIES.TO_ONE, self.classes["User"]),
            Field("a_abstract_one", Field.CATEGORIES.TO_ONE,
                  self.classes["AAbstractOne"]),
            Field("a_one", Field.CATEGORIES.TO_ONE, self.classes["AOne"]),
        }
        expected_fields_to_many = {
            Field("a_abstract_many_to_manys", Field.CATEGORIES.TO_MANY,
                  self.classes["AAbstractManyToMany"]),
            Field("a_many_to_manys", Field.CATEGORIES.TO_MANY,
                  self.classes["AManyToMany"]),
        }
        self.assertEqual(set(model_info.fields_own), set(expected_fields_own))
        self.assertEqual(set(model_info.fields_to_one),
                         set(expected_fields_to_one))
        self.assertEqual(set(model_info.fields_to_many),
                         set(expected_fields_to_many))

        expected_auth_user_paths = ["user"]
        self.assertEqual(model_info.auth_user_paths, expected_auth_user_paths)
Beispiel #3
0
    def test_model_aabstractone(self):
        model_info = self.model_inspector.models[self.classes["AAbstractOne"]]
        expected_fields_own = {
            Field("id", Field.CATEGORIES.OWN, None),
            Field("field", Field.CATEGORIES.OWN, None),
        }
        expected_fields_to_many = {
            Field("aa_set", Field.CATEGORIES.TO_MANY, self.classes["AA"]),
        }
        self.assertEqual(set(model_info.fields_own), expected_fields_own)
        self.assertEqual(model_info.fields_to_one, [])
        self.assertEqual(set(model_info.fields_to_many),
                         expected_fields_to_many)

        expected_auth_user_paths = ["aa__user"]
        self.assertEqual(model_info.auth_user_paths, expected_auth_user_paths)
Beispiel #4
0
 def test_model_bmanytomany(self):
     model_info = self.model_inspector.models[self.classes["BManyToMany"]]
     expected_fields_own = {
         Field("id", Field.CATEGORIES.OWN, None),
         Field("field", Field.CATEGORIES.OWN, None),
     }
     expected_fields_to_one = set({})
     expected_fields_to_many = {
         Field("bs", Field.CATEGORIES.TO_MANY, self.classes["B"]),
     }
     self.assertEqual(set(model_info.fields_own), expected_fields_own)
     self.assertEqual(set(model_info.fields_to_one), expected_fields_to_one)
     self.assertEqual(set(model_info.fields_to_many),
                      expected_fields_to_many)
     expected_auth_user_paths = ["b__user"]
     self.assertEqual(model_info.auth_user_paths, expected_auth_user_paths)