Hi Collin,
Thanks a lot for the answer. I think you are right, and that was what
I was doing. Still, apparently the models could not be created
properly, or whatever.

However I think I managed to convert this problem to a different one
(not sure if I should start a new thread).
What I did was: remove the __pycache__ dirs, remake the migrations,
and remove some models that were created by inspectdb (django
related).

Now, the original problem has gone, BUT something (related, I think)
happens. With _meta.managed=False in my models I get
...
django.db.utils.ProgrammingError: Table 'test_job_mon.job_info' doesn't exist

The test I'm running is very simple:

class HomePageTest(TestCase):
    def setUp(self):
        from django.db.models.loading import get_models
        self.unmanaged_models = [m for m in get_models() if not m._meta.managed]
        for m in self.unmanaged_models:
            m._meta.managed = True

    def tearDown(self):
        for m in self.unmanaged_models:
            m._meta.managed = False

    def test_there_are_no_job_items_in_empty_db(self):
        njobs = JobInfo.objects.count()
        self.assertEqual(njobs, 0)



The relevant model:

class JobInfo(models.Model):
    job_db_inx = models.IntegerField(primary_key=True)
    id_job = models.IntegerField()
    id_user = models.IntegerField()
    id_group = models.IntegerField()
    account = models.TextField(blank=True)
    cpus_req = models.IntegerField()
    cpus_alloc = models.IntegerField()
    nodelist = models.TextField()
    nodes_alloc = models.IntegerField()
    partition = models.TextField()
    time_start = models.IntegerField()
    time_end = models.IntegerField()
    was_updated = models.IntegerField()
    jobmondatacleared =
models.IntegerField(db_column='jobMonDataCleared')  # Field name made
lowercase.
    endupcount = models.IntegerField(db_column='endUpCount')  # Field
name made lowercase.
    approved = models.IntegerField()

    class Meta:
        managed = False
        db_table = 'job_info'


Now, if I comment the line "managed = False" and run makemigrations,
the test passes.

But I have checked that "managed" is switched to True during the tests.

Any ideas?

Thanks in advance,

David

2014-11-05 18:45 GMT+01:00 Collin Anderson <[email protected]>:
> Hi David,
>
> Interesting. Shouldn't the test database be a separate, fresh, empty
> database (not a legacy database)?
>
> Thanks,
> Collin
>
> --
> You received this message because you are subscribed to the Google Groups
> "Django users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/django-users.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/django-users/b79d8ab2-38ef-489d-9563-c2474c58defb%40googlegroups.com.
>
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/django-users.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/CAKUKWzm_8fM0fXW2DcAQsvYffXeN3indxtqtQHzsQ6U5_K7RWA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to