Source code for tcms.testruns.migrations.0004_squashed

# Generated by Django 2.1.2 on 2018-10-22 19:11

from django.conf import settings
from django.db import migrations, models

import tcms.core.models.base

CASE_RUN_STATUS_ID_COLUMN = "case_run_status_id"
if settings.DATABASES["default"]["ENGINE"].find("sqlite") > -1:
    CASE_RUN_STATUS_ID_COLUMN = ""


[docs] def forwards_add_initial_data(apps, schema_editor): test_case_run_status_model = apps.get_model("testruns", "TestCaseRunStatus") test_case_run_status_model.objects.bulk_create( [ test_case_run_status_model(name="IDLE"), test_case_run_status_model(name="RUNNING"), test_case_run_status_model(name="PAUSED"), test_case_run_status_model(name="PASSED"), test_case_run_status_model(name="FAILED"), test_case_run_status_model(name="BLOCKED"), test_case_run_status_model(name="ERROR"), test_case_run_status_model(name="WAIVED"), ] )
[docs] def reverse_add_initial_data(apps, schema_editor): test_case_run_status_model = apps.get_model("testruns", "TestCaseRunStatus") status_names = [ "IDLE", "RUNNING", "PAUSED", "PASSED", "FAILED", "BLOCKED", "ERROR", "WAIVED", ] test_case_run_status_model.objects.filter(name__in=status_names).delete()
[docs] class Migration(migrations.Migration): initial = True dependencies = [ ("management", "0003_squashed"), ("testcases", "0001_initial"), ("testplans", "0005_squashed"), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name="TestCaseRun", fields=[ ("case_run_id", models.AutoField(primary_key=True, serialize=False)), ("case_text_version", models.IntegerField()), ("running_date", models.DateTimeField(blank=True, null=True)), ("close_date", models.DateTimeField(blank=True, null=True)), ("notes", models.TextField(blank=True, null=True)), ("sortkey", models.IntegerField(blank=True, null=True)), ( "assignee", models.ForeignKey( blank=True, null=True, on_delete=models.deletion.CASCADE, related_name="case_run_assignee", to=settings.AUTH_USER_MODEL, ), ), ( "build", models.ForeignKey( on_delete=models.deletion.CASCADE, to="management.Build" ), ), ( "case", models.ForeignKey( on_delete=models.deletion.CASCADE, related_name="case_run", to="testcases.TestCase", ), ), ], bases=(models.Model, tcms.core.models.base.UrlMixin), ), migrations.CreateModel( name="TestCaseRunStatus", fields=[ ( "id", models.AutoField( db_column=CASE_RUN_STATUS_ID_COLUMN, primary_key=True, serialize=False, ), ), ("name", models.CharField(blank=True, max_length=60, unique=True)), ], bases=(models.Model, tcms.core.models.base.UrlMixin), ), migrations.CreateModel( name="TestRun", fields=[ ("run_id", models.AutoField(primary_key=True, serialize=False)), ("start_date", models.DateTimeField(auto_now_add=True, db_index=True)), ( "stop_date", models.DateTimeField(blank=True, db_index=True, null=True), ), ("summary", models.TextField()), ("notes", models.TextField(blank=True)), ( "build", models.ForeignKey( on_delete=models.deletion.CASCADE, related_name="build_run", to="management.Build", ), ), ], bases=(models.Model, tcms.core.models.base.UrlMixin), ), migrations.CreateModel( name="TestRunCC", fields=[ ( "id", models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ( "run", models.ForeignKey( on_delete=models.deletion.CASCADE, related_name="cc_list", to="testruns.TestRun", ), ), ( "user", models.ForeignKey( db_column="who", on_delete=models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, ), ), ], ), migrations.CreateModel( name="TestRunTag", fields=[ ( "id", models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ( "run", models.ForeignKey( on_delete=models.deletion.CASCADE, to="testruns.TestRun" ), ), ( "tag", models.ForeignKey( on_delete=models.deletion.CASCADE, to="management.Tag" ), ), ], ), migrations.AddField( model_name="testrun", name="cc", field=models.ManyToManyField( through="testruns.TestRunCC", to=settings.AUTH_USER_MODEL ), ), migrations.AddField( model_name="testrun", name="default_tester", field=models.ForeignKey( blank=True, null=True, on_delete=models.deletion.CASCADE, related_name="default_tester", to=settings.AUTH_USER_MODEL, ), ), migrations.AddField( model_name="testrun", name="manager", field=models.ForeignKey( on_delete=models.deletion.CASCADE, related_name="manager", to=settings.AUTH_USER_MODEL, ), ), migrations.AddField( model_name="testrun", name="plan", field=models.ForeignKey( on_delete=models.deletion.CASCADE, related_name="run", to="testplans.TestPlan", ), ), migrations.AddField( model_name="testrun", name="product_version", field=models.ForeignKey( on_delete=models.deletion.CASCADE, related_name="version_run", to="management.Version", ), ), migrations.AddField( model_name="testrun", name="tag", field=models.ManyToManyField( related_name="run", through="testruns.TestRunTag", to="management.Tag" ), ), migrations.AddField( model_name="testcaserun", name="case_run_status", field=models.ForeignKey( on_delete=models.deletion.CASCADE, to="testruns.TestCaseRunStatus" ), ), migrations.AddField( model_name="testcaserun", name="run", field=models.ForeignKey( on_delete=models.deletion.CASCADE, related_name="case_run", to="testruns.TestRun", ), ), migrations.AddField( model_name="testcaserun", name="tested_by", field=models.ForeignKey( blank=True, null=True, on_delete=models.deletion.CASCADE, related_name="case_run_tester", to=settings.AUTH_USER_MODEL, ), ), migrations.AlterUniqueTogether( name="testruncc", unique_together={("run", "user")}, ), migrations.AlterUniqueTogether( name="testrun", unique_together={("run_id", "product_version")}, ), migrations.AlterUniqueTogether( name="testcaserun", unique_together={("case", "run", "case_text_version")}, ), migrations.RunPython(forwards_add_initial_data, reverse_add_initial_data), migrations.AlterField( model_name="testruntag", name="run", field=models.ForeignKey( on_delete=models.deletion.CASCADE, related_name="tags", to="testruns.TestRun", ), ), migrations.CreateModel( name="HistoricalTestCaseRun", fields=[ ("case_run_id", models.IntegerField(blank=True, db_index=True)), ("case_text_version", models.IntegerField()), ("running_date", models.DateTimeField(blank=True, null=True)), ("close_date", models.DateTimeField(blank=True, null=True)), ("notes", models.TextField(blank=True, null=True)), ("sortkey", models.IntegerField(blank=True, null=True)), ("history_id", models.AutoField(primary_key=True, serialize=False)), ("history_change_reason", models.TextField(null=True)), ("history_date", models.DateTimeField()), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "assignee", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=models.deletion.DO_NOTHING, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "build", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=models.deletion.DO_NOTHING, related_name="+", to="management.Build", ), ), ( "case", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=models.deletion.DO_NOTHING, related_name="+", to="testcases.TestCase", ), ), ( "case_run_status", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=models.deletion.DO_NOTHING, related_name="+", to="testruns.TestCaseRunStatus", ), ), ( "history_user", models.ForeignKey( null=True, on_delete=models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "run", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=models.deletion.DO_NOTHING, related_name="+", to="testruns.TestRun", ), ), ( "tested_by", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=models.deletion.DO_NOTHING, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ], options={ "verbose_name": "historical test case run", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, ), migrations.CreateModel( name="HistoricalTestRun", fields=[ ("run_id", models.IntegerField(blank=True, db_index=True)), ( "start_date", models.DateTimeField(blank=True, db_index=True, editable=False), ), ( "stop_date", models.DateTimeField(blank=True, db_index=True, null=True), ), ("summary", models.TextField()), ("notes", models.TextField(blank=True)), ("history_id", models.AutoField(primary_key=True, serialize=False)), ("history_change_reason", models.TextField(null=True)), ("history_date", models.DateTimeField()), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1, ), ), ( "build", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=models.deletion.DO_NOTHING, related_name="+", to="management.Build", ), ), ( "default_tester", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=models.deletion.DO_NOTHING, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "history_user", models.ForeignKey( null=True, on_delete=models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "manager", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=models.deletion.DO_NOTHING, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ( "plan", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=models.deletion.DO_NOTHING, related_name="+", to="testplans.TestPlan", ), ), ( "product_version", models.ForeignKey( blank=True, db_constraint=False, null=True, on_delete=models.deletion.DO_NOTHING, related_name="+", to="management.Version", ), ), ], options={ "verbose_name": "historical test run", "ordering": ("-history_date", "-history_id"), "get_latest_by": "history_date", }, ), ]