rename inventory app to computers
This commit is contained in:
parent
67fa2792d9
commit
391ffa9ad8
|
@ -1,7 +1,7 @@
|
||||||
from django.db import models
|
from django.db import models
|
||||||
|
|
||||||
from core.models import Category, Weekday
|
from core.models import Category, Weekday
|
||||||
from inventory.models import Computer
|
from computers.models import Computer
|
||||||
from softwares.models import Software
|
from softwares.models import Software
|
||||||
|
|
||||||
from .notification import Notification
|
from .notification import Notification
|
||||||
|
|
|
@ -15,7 +15,7 @@ def test_backup_detail_view_not_logged_in():
|
||||||
|
|
||||||
def test_backup_detail_view(create_admin_user):
|
def test_backup_detail_view(create_admin_user):
|
||||||
create_admin_user()
|
create_admin_user()
|
||||||
mixer.blend('inventory.Computer', customer=mixer.SELECT)
|
mixer.blend('computers.Computer', customer=mixer.SELECT)
|
||||||
backup = mixer.blend('backups.Backup', computer=mixer.SELECT)
|
backup = mixer.blend('backups.Backup', computer=mixer.SELECT)
|
||||||
client = Client()
|
client = Client()
|
||||||
client.login(username="novartis-admin", password="password")
|
client.login(username="novartis-admin", password="password")
|
||||||
|
@ -37,7 +37,7 @@ def test_customer_computer_table_no_permission(create_admin_user):
|
||||||
customer = Customer.objects.create(name='Nestle')
|
customer = Customer.objects.create(name='Nestle')
|
||||||
client = Client()
|
client = Client()
|
||||||
client.login(username="novartis-admin", password="password")
|
client.login(username="novartis-admin", password="password")
|
||||||
mixer.blend('inventory.Computer', customer=customer)
|
mixer.blend('computers.Computer', customer=customer)
|
||||||
backup = mixer.blend('backups.Backup', computer=mixer.SELECT)
|
backup = mixer.blend('backups.Backup', computer=mixer.SELECT)
|
||||||
response = client.get('/backup/' + str(backup.id) + '/')
|
response = client.get('/backup/' + str(backup.id) + '/')
|
||||||
assert response.status_code == 403
|
assert response.status_code == 403
|
||||||
|
@ -45,8 +45,8 @@ def test_customer_computer_table_no_permission(create_admin_user):
|
||||||
|
|
||||||
def test_backup_detail_view_with_target_device(create_admin_user):
|
def test_backup_detail_view_with_target_device(create_admin_user):
|
||||||
create_admin_user()
|
create_admin_user()
|
||||||
source_computer = mixer.blend('inventory.Computer', customer=mixer.SELECT)
|
source_computer = mixer.blend('computers.Computer', customer=mixer.SELECT)
|
||||||
target_computer = mixer.blend('inventory.Computer', customer=mixer.SELECT)
|
target_computer = mixer.blend('computers.Computer', customer=mixer.SELECT)
|
||||||
backup = mixer.blend('backups.Backup', computer=source_computer,
|
backup = mixer.blend('backups.Backup', computer=source_computer,
|
||||||
software=mixer.SELECT, method=mixer.SELECT)
|
software=mixer.SELECT, method=mixer.SELECT)
|
||||||
mixer.blend('backups.TargetDevice', device=target_computer,
|
mixer.blend('backups.TargetDevice', device=target_computer,
|
||||||
|
@ -61,7 +61,7 @@ def test_backup_detail_view_with_target_device(create_admin_user):
|
||||||
|
|
||||||
def test_backup_detail_view_with_notification(create_admin_user):
|
def test_backup_detail_view_with_notification(create_admin_user):
|
||||||
create_admin_user()
|
create_admin_user()
|
||||||
mixer.blend('inventory.Computer', customer=mixer.SELECT)
|
mixer.blend('computers.Computer', customer=mixer.SELECT)
|
||||||
backup = mixer.blend('backups.Backup', computer=mixer.SELECT)
|
backup = mixer.blend('backups.Backup', computer=mixer.SELECT)
|
||||||
notification = mixer.blend('backups.Notification')
|
notification = mixer.blend('backups.Notification')
|
||||||
mixer.blend('backups.NotificationFromBackup',
|
mixer.blend('backups.NotificationFromBackup',
|
||||||
|
|
|
@ -20,7 +20,7 @@ def test_customer_backup_table(create_admin_user):
|
||||||
customer = fixture['customer']
|
customer = fixture['customer']
|
||||||
client = Client()
|
client = Client()
|
||||||
client.login(username="novartis-admin", password="password")
|
client.login(username="novartis-admin", password="password")
|
||||||
computer = mixer.blend('inventory.Computer', customer=customer)
|
computer = mixer.blend('computers.Computer', customer=customer)
|
||||||
backup = mixer.blend('backups.Backup', computer=computer)
|
backup = mixer.blend('backups.Backup', computer=computer)
|
||||||
response = client.get('/customer/' + str(customer.id) + '/backups/')
|
response = client.get('/customer/' + str(customer.id) + '/backups/')
|
||||||
assert (response.status_code == 200
|
assert (response.status_code == 200
|
||||||
|
@ -41,7 +41,7 @@ def test_customer_backup_table_no_permission(create_admin_user):
|
||||||
customer = Customer.objects.create(name='Nestle')
|
customer = Customer.objects.create(name='Nestle')
|
||||||
client = Client()
|
client = Client()
|
||||||
client.login(username="novartis-admin", password="password")
|
client.login(username="novartis-admin", password="password")
|
||||||
computer = mixer.blend('inventory.Computer', customer=customer)
|
computer = mixer.blend('computers.Computer', customer=customer)
|
||||||
mixer.blend('backups.Backup', computer=computer)
|
mixer.blend('backups.Backup', computer=computer)
|
||||||
response = client.get('/customer/' + str(customer.id) + '/backups/')
|
response = client.get('/customer/' + str(customer.id) + '/backups/')
|
||||||
assert response.status_code == 403
|
assert response.status_code == 403
|
||||||
|
@ -52,7 +52,7 @@ def test_customer_backup_table_with_multiple_backups(create_admin_user):
|
||||||
customer = fixture['customer']
|
customer = fixture['customer']
|
||||||
client = Client()
|
client = Client()
|
||||||
client.login(username="novartis-admin", password="password")
|
client.login(username="novartis-admin", password="password")
|
||||||
computer = mixer.blend('inventory.Computer', customer=customer)
|
computer = mixer.blend('computers.Computer', customer=customer)
|
||||||
backup1 = mixer.blend('backups.Backup', computer=computer)
|
backup1 = mixer.blend('backups.Backup', computer=computer)
|
||||||
backup2 = mixer.blend('backups.Backup', computer=computer)
|
backup2 = mixer.blend('backups.Backup', computer=computer)
|
||||||
response = client.get('/customer/' + str(customer.id) + '/backups/')
|
response = client.get('/customer/' + str(customer.id) + '/backups/')
|
||||||
|
|
|
@ -4,7 +4,7 @@ from django.shortcuts import get_object_or_404
|
||||||
|
|
||||||
from django_tables2 import RequestConfig
|
from django_tables2 import RequestConfig
|
||||||
|
|
||||||
from inventory.models import Computer
|
from computers.models import Computer
|
||||||
from customers.decorators import customer_view_permission
|
from customers.decorators import customer_view_permission
|
||||||
|
|
||||||
from .decorators import backup_view_permission
|
from .decorators import backup_view_permission
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
from django.apps import AppConfig
|
||||||
|
|
||||||
|
|
||||||
|
class ComputersConfig(AppConfig):
|
||||||
|
name = 'computers'
|
|
@ -1,134 +1,134 @@
|
||||||
- model: inventory.CpuManufacturer
|
- model: computers.CpuManufacturer
|
||||||
fields:
|
fields:
|
||||||
name: Intel
|
name: Intel
|
||||||
- model: inventory.CpuManufacturer
|
- model: computers.CpuManufacturer
|
||||||
fields:
|
fields:
|
||||||
name: AMD
|
name: AMD
|
||||||
- model: inventory.CpuArchitecture
|
- model: computers.CpuArchitecture
|
||||||
fields:
|
fields:
|
||||||
name: x86_64
|
name: x86_64
|
||||||
- model: inventory.CpuArchitecture
|
- model: computers.CpuArchitecture
|
||||||
fields:
|
fields:
|
||||||
name: i686
|
name: i686
|
||||||
- model: inventory.CpuArchitecture
|
- model: computers.CpuArchitecture
|
||||||
fields:
|
fields:
|
||||||
name: ARM
|
name: ARM
|
||||||
- model: inventory.CpuArchitecture
|
- model: computers.CpuArchitecture
|
||||||
fields:
|
fields:
|
||||||
name: ARM64
|
name: ARM64
|
||||||
|
|
||||||
- model: inventory.RamType
|
- model: computers.RamType
|
||||||
fields:
|
fields:
|
||||||
name: unkown
|
name: unkown
|
||||||
- model: inventory.RamType
|
- model: computers.RamType
|
||||||
fields:
|
fields:
|
||||||
name: DDR2
|
name: DDR2
|
||||||
- model: inventory.RamType
|
- model: computers.RamType
|
||||||
fields:
|
fields:
|
||||||
name: DDR3
|
name: DDR3
|
||||||
- model: inventory.RamType
|
- model: computers.RamType
|
||||||
fields:
|
fields:
|
||||||
name: DDR4
|
name: DDR4
|
||||||
|
|
||||||
- model: inventory.DiskType
|
- model: computers.DiskType
|
||||||
fields:
|
fields:
|
||||||
name: SSD
|
name: SSD
|
||||||
- model: inventory.DiskType
|
- model: computers.DiskType
|
||||||
fields:
|
fields:
|
||||||
name: HDD
|
name: HDD
|
||||||
- model: inventory.DiskType
|
- model: computers.DiskType
|
||||||
fields:
|
fields:
|
||||||
name: SAS
|
name: SAS
|
||||||
|
|
||||||
- model: inventory.RaidType
|
- model: computers.RaidType
|
||||||
fields:
|
fields:
|
||||||
name: "RAID 0"
|
name: "RAID 0"
|
||||||
- model: inventory.RaidType
|
- model: computers.RaidType
|
||||||
fields:
|
fields:
|
||||||
name: "RAID 1"
|
name: "RAID 1"
|
||||||
- model: inventory.RaidType
|
- model: computers.RaidType
|
||||||
fields:
|
fields:
|
||||||
name: "RAID 5"
|
name: "RAID 5"
|
||||||
- model: inventory.RaidType
|
- model: computers.RaidType
|
||||||
fields:
|
fields:
|
||||||
name: "RAID 6"
|
name: "RAID 6"
|
||||||
- model: inventory.RaidType
|
- model: computers.RaidType
|
||||||
fields:
|
fields:
|
||||||
name: "RAID 10"
|
name: "RAID 10"
|
||||||
- model: inventory.RaidType
|
- model: computers.RaidType
|
||||||
fields:
|
fields:
|
||||||
name: "RAID 50"
|
name: "RAID 50"
|
||||||
- model: inventory.RaidType
|
- model: computers.RaidType
|
||||||
fields:
|
fields:
|
||||||
name: "RAID 60"
|
name: "RAID 60"
|
||||||
|
|
||||||
model: inventory.Ram
|
model: computers.Ram
|
||||||
fields:
|
fields:
|
||||||
ram_type: 1
|
ram_type: 1
|
||||||
size_in_gb: 1
|
size_in_gb: 1
|
||||||
ecc: False
|
ecc: False
|
||||||
-
|
-
|
||||||
model: inventory.Ram
|
model: computers.Ram
|
||||||
fields:
|
fields:
|
||||||
ram_type: 1
|
ram_type: 1
|
||||||
size_in_gb: 2
|
size_in_gb: 2
|
||||||
ecc: False
|
ecc: False
|
||||||
-
|
-
|
||||||
model: inventory.Ram
|
model: computers.Ram
|
||||||
fields:
|
fields:
|
||||||
ram_type: 1
|
ram_type: 1
|
||||||
size_in_gb: 4
|
size_in_gb: 4
|
||||||
ecc: False
|
ecc: False
|
||||||
-
|
-
|
||||||
model: inventory.Ram
|
model: computers.Ram
|
||||||
fields:
|
fields:
|
||||||
ram_type: 1
|
ram_type: 1
|
||||||
size_in_gb: 8
|
size_in_gb: 8
|
||||||
ecc: False
|
ecc: False
|
||||||
-
|
-
|
||||||
model: inventory.Ram
|
model: computers.Ram
|
||||||
fields:
|
fields:
|
||||||
ram_type: 1
|
ram_type: 1
|
||||||
size_in_gb: 16
|
size_in_gb: 16
|
||||||
ecc: False
|
ecc: False
|
||||||
-
|
-
|
||||||
model: inventory.Ram
|
model: computers.Ram
|
||||||
fields:
|
fields:
|
||||||
ram_type: 1
|
ram_type: 1
|
||||||
size_in_gb: 24
|
size_in_gb: 24
|
||||||
ecc: False
|
ecc: False
|
||||||
-
|
-
|
||||||
model: inventory.Ram
|
model: computers.Ram
|
||||||
fields:
|
fields:
|
||||||
ram_type: 1
|
ram_type: 1
|
||||||
size_in_gb: 32
|
size_in_gb: 32
|
||||||
ecc: False
|
ecc: False
|
||||||
-
|
-
|
||||||
model: inventory.Ram
|
model: computers.Ram
|
||||||
fields:
|
fields:
|
||||||
ram_type: 1
|
ram_type: 1
|
||||||
size_in_gb: 64
|
size_in_gb: 64
|
||||||
ecc: False
|
ecc: False
|
||||||
-
|
-
|
||||||
model: inventory.Ram
|
model: computers.Ram
|
||||||
fields:
|
fields:
|
||||||
ram_type: 1
|
ram_type: 1
|
||||||
size_in_gb: 96
|
size_in_gb: 96
|
||||||
ecc: False
|
ecc: False
|
||||||
-
|
-
|
||||||
model: inventory.Ram
|
model: computers.Ram
|
||||||
fields:
|
fields:
|
||||||
ram_type: 1
|
ram_type: 1
|
||||||
size_in_gb: 128
|
size_in_gb: 128
|
||||||
ecc: False
|
ecc: False
|
||||||
-
|
-
|
||||||
model: inventory.Ram
|
model: computers.Ram
|
||||||
fields:
|
fields:
|
||||||
ram_type: 1
|
ram_type: 1
|
||||||
size_in_gb: 256
|
size_in_gb: 256
|
||||||
ecc: False
|
ecc: False
|
||||||
-
|
-
|
||||||
model: inventory.Ram
|
model: computers.Ram
|
||||||
fields:
|
fields:
|
||||||
ram_type: 1
|
ram_type: 1
|
||||||
size_in_gb: 512
|
size_in_gb: 512
|
|
@ -5,6 +5,6 @@ pytestmark = pytest.mark.django_db
|
||||||
|
|
||||||
|
|
||||||
def test_computer_reverse_url():
|
def test_computer_reverse_url():
|
||||||
computer = mixer.blend('inventory.Computer')
|
computer = mixer.blend('computers.Computer')
|
||||||
assert (computer.get_absolute_url()
|
assert (computer.get_absolute_url()
|
||||||
== "/computer/" + str(computer.id) + "/")
|
== "/computer/" + str(computer.id) + "/")
|
|
@ -15,7 +15,7 @@ def test_computer_detail_view_not_logged_in():
|
||||||
|
|
||||||
def test_computer_detail_view(create_admin_user):
|
def test_computer_detail_view(create_admin_user):
|
||||||
create_admin_user()
|
create_admin_user()
|
||||||
computer = mixer.blend('inventory.Computer', customer=mixer.SELECT)
|
computer = mixer.blend('computers.Computer', customer=mixer.SELECT)
|
||||||
client = Client()
|
client = Client()
|
||||||
client.login(username="novartis-admin", password="password")
|
client.login(username="novartis-admin", password="password")
|
||||||
response = client.get('/computer/' + str(computer.id) + '/')
|
response = client.get('/computer/' + str(computer.id) + '/')
|
||||||
|
@ -33,10 +33,10 @@ def test_computer_detail_view_not_found(create_admin_user):
|
||||||
|
|
||||||
def test_computer_detail_view_ram_relation(create_admin_user):
|
def test_computer_detail_view_ram_relation(create_admin_user):
|
||||||
create_admin_user()
|
create_admin_user()
|
||||||
computer = mixer.blend('inventory.Computer', customer=mixer.SELECT)
|
computer = mixer.blend('computers.Computer', customer=mixer.SELECT)
|
||||||
ram_type = mixer.blend('inventory.RamType')
|
ram_type = mixer.blend('computers.RamType')
|
||||||
ram = mixer.blend('inventory.Ram', ram_type=ram_type)
|
ram = mixer.blend('computers.Ram', ram_type=ram_type)
|
||||||
mixer.blend('inventory.ComputerRamRelation', computer=computer, ram=ram)
|
mixer.blend('computers.ComputerRamRelation', computer=computer, ram=ram)
|
||||||
client = Client()
|
client = Client()
|
||||||
client.login(username="novartis-admin", password="password")
|
client.login(username="novartis-admin", password="password")
|
||||||
response = client.get('/computer/' + str(computer.id) + '/')
|
response = client.get('/computer/' + str(computer.id) + '/')
|
||||||
|
@ -46,13 +46,13 @@ def test_computer_detail_view_ram_relation(create_admin_user):
|
||||||
|
|
||||||
def test_computer_detail_view_raid_relation(create_admin_user):
|
def test_computer_detail_view_raid_relation(create_admin_user):
|
||||||
create_admin_user()
|
create_admin_user()
|
||||||
computer = mixer.blend('inventory.Computer', customer=mixer.SELECT)
|
computer = mixer.blend('computers.Computer', customer=mixer.SELECT)
|
||||||
raid_type = mixer.blend('inventory.RaidType')
|
raid_type = mixer.blend('computers.RaidType')
|
||||||
disk = mixer.blend('inventory.Disk')
|
disk = mixer.blend('computers.Disk')
|
||||||
raid = mixer.blend('inventory.Raid',
|
raid = mixer.blend('computers.Raid',
|
||||||
computer=computer,
|
computer=computer,
|
||||||
raid_type=raid_type)
|
raid_type=raid_type)
|
||||||
mixer.blend('inventory.DisksInRaid', raid=raid, disk=disk)
|
mixer.blend('computers.DisksInRaid', raid=raid, disk=disk)
|
||||||
client = Client()
|
client = Client()
|
||||||
client.login(username="novartis-admin", password="password")
|
client.login(username="novartis-admin", password="password")
|
||||||
response = client.get('/computer/' + str(computer.id) + '/')
|
response = client.get('/computer/' + str(computer.id) + '/')
|
||||||
|
@ -61,9 +61,9 @@ def test_computer_detail_view_raid_relation(create_admin_user):
|
||||||
|
|
||||||
def test_computer_detail_view_cpu_relation(create_admin_user):
|
def test_computer_detail_view_cpu_relation(create_admin_user):
|
||||||
create_admin_user()
|
create_admin_user()
|
||||||
computer = mixer.blend('inventory.Computer', customer=mixer.SELECT)
|
computer = mixer.blend('computers.Computer', customer=mixer.SELECT)
|
||||||
cpu = mixer.blend('inventory.Cpu', cpu_typ=mixer.SELECT)
|
cpu = mixer.blend('computers.Cpu', cpu_typ=mixer.SELECT)
|
||||||
mixer.blend('inventory.ComputerCpuRelation', cpu=cpu, computer=computer)
|
mixer.blend('computers.ComputerCpuRelation', cpu=cpu, computer=computer)
|
||||||
client = Client()
|
client = Client()
|
||||||
client.login(username="novartis-admin", password="password")
|
client.login(username="novartis-admin", password="password")
|
||||||
response = client.get('/computer/' + str(computer.id) + '/')
|
response = client.get('/computer/' + str(computer.id) + '/')
|
||||||
|
@ -74,7 +74,7 @@ def test_computer_detail_view_cpu_relation(create_admin_user):
|
||||||
def test_computer_detail_view_no_permission(create_admin_user):
|
def test_computer_detail_view_no_permission(create_admin_user):
|
||||||
create_admin_user()
|
create_admin_user()
|
||||||
customer = mixer.blend('customers.Customer')
|
customer = mixer.blend('customers.Customer')
|
||||||
computer = mixer.blend('inventory.Computer', customer=customer)
|
computer = mixer.blend('computers.Computer', customer=customer)
|
||||||
client = Client()
|
client = Client()
|
||||||
client.login(username="novartis-admin", password="password")
|
client.login(username="novartis-admin", password="password")
|
||||||
response = client.get('/computer/' + str(computer.id) + '/')
|
response = client.get('/computer/' + str(computer.id) + '/')
|
|
@ -23,7 +23,7 @@ def test_computer_list_view_no_computers(create_admin_user):
|
||||||
|
|
||||||
def test_computer_list_view(create_admin_user):
|
def test_computer_list_view(create_admin_user):
|
||||||
create_admin_user()
|
create_admin_user()
|
||||||
computer = mixer.blend('inventory.Computer', customer=mixer.SELECT)
|
computer = mixer.blend('computers.Computer', customer=mixer.SELECT)
|
||||||
client = Client()
|
client = Client()
|
||||||
client.login(username="novartis-admin", password="password")
|
client.login(username="novartis-admin", password="password")
|
||||||
response = client.get('/computers/all/')
|
response = client.get('/computers/all/')
|
|
@ -19,7 +19,7 @@ def test_customer_computer_table(create_admin_user):
|
||||||
customer = fixture['customer']
|
customer = fixture['customer']
|
||||||
client = Client()
|
client = Client()
|
||||||
client.login(username="novartis-admin", password="password")
|
client.login(username="novartis-admin", password="password")
|
||||||
computer = mixer.blend('inventory.Computer', customer=mixer.SELECT)
|
computer = mixer.blend('computers.Computer', customer=mixer.SELECT)
|
||||||
response = client.get('/customer/' + str(customer.id) + '/computers/')
|
response = client.get('/customer/' + str(customer.id) + '/computers/')
|
||||||
assert (response.status_code == 200
|
assert (response.status_code == 200
|
||||||
and helper.in_content(response, computer))
|
and helper.in_content(response, computer))
|
||||||
|
@ -40,7 +40,7 @@ def test_customer_computer_table_no_permission(create_admin_user):
|
||||||
customer = Customer.objects.create(name='Nestle')
|
customer = Customer.objects.create(name='Nestle')
|
||||||
client = Client()
|
client = Client()
|
||||||
client.login(username="novartis-admin", password="password")
|
client.login(username="novartis-admin", password="password")
|
||||||
mixer.blend('inventory.Computer', customer=customer)
|
mixer.blend('computers.Computer', customer=customer)
|
||||||
response = client.get('/customer/' + str(customer.id) + '/computers/')
|
response = client.get('/customer/' + str(customer.id) + '/computers/')
|
||||||
assert response.status_code == 403
|
assert response.status_code == 403
|
||||||
|
|
||||||
|
@ -50,8 +50,8 @@ def test_customer_computer_table_multiple_computers(create_admin_user):
|
||||||
customer = fixture['customer']
|
customer = fixture['customer']
|
||||||
client = Client()
|
client = Client()
|
||||||
client.login(username="novartis-admin", password="password")
|
client.login(username="novartis-admin", password="password")
|
||||||
computer1 = mixer.blend('inventory.Computer', customer=mixer.SELECT)
|
computer1 = mixer.blend('computers.Computer', customer=mixer.SELECT)
|
||||||
computer2 = mixer.blend('inventory.Computer', customer=mixer.SELECT)
|
computer2 = mixer.blend('computers.Computer', customer=mixer.SELECT)
|
||||||
response = client.get('/customer/' + str(customer.id) + '/computers/')
|
response = client.get('/customer/' + str(customer.id) + '/computers/')
|
||||||
assert (response.status_code == 200
|
assert (response.status_code == 200
|
||||||
and helper.in_content(response, computer1)
|
and helper.in_content(response, computer1)
|
|
@ -46,7 +46,7 @@ def computer_detail_view(request, pk):
|
||||||
'raid_disk_pairs': raid_disk_pairs,
|
'raid_disk_pairs': raid_disk_pairs,
|
||||||
'backup_list': backup_list,
|
'backup_list': backup_list,
|
||||||
'licenses': licenses}
|
'licenses': licenses}
|
||||||
return render(request, 'inventory/computer_details.html', context)
|
return render(request, 'computers/computer_details.html', context)
|
||||||
|
|
||||||
|
|
||||||
@login_required
|
@login_required
|
||||||
|
@ -54,13 +54,13 @@ def computer_detail_view(request, pk):
|
||||||
def computers_table_view(request, pk):
|
def computers_table_view(request, pk):
|
||||||
table = ComputersTable(Computer.objects.filter(customer=pk))
|
table = ComputersTable(Computer.objects.filter(customer=pk))
|
||||||
RequestConfig(request).configure(table)
|
RequestConfig(request).configure(table)
|
||||||
return render(request, 'inventory/computer_list.html', {'computers': table})
|
return render(request, 'computers/computer_list.html', {'computers': table})
|
||||||
|
|
||||||
|
|
||||||
class ComputersFilterView(LoginRequiredMixin, SingleTableMixin, FilterView):
|
class ComputersFilterView(LoginRequiredMixin, SingleTableMixin, FilterView):
|
||||||
table_class = ComputersTable
|
table_class = ComputersTable
|
||||||
model = Computer
|
model = Computer
|
||||||
template_name = "inventory/all_computers.html"
|
template_name = "computers/all_computers.html"
|
||||||
|
|
||||||
filterset_class = ComputerFilter
|
filterset_class = ComputerFilter
|
||||||
|
|
|
@ -11,9 +11,9 @@ from guardian.shortcuts import assign_perm
|
||||||
def django_db_setup(django_db_setup, django_db_blocker):
|
def django_db_setup(django_db_setup, django_db_blocker):
|
||||||
with django_db_blocker.unblock():
|
with django_db_blocker.unblock():
|
||||||
call_command('loaddata', 'backups.yaml')
|
call_command('loaddata', 'backups.yaml')
|
||||||
|
call_command('loaddata', 'computers.yaml')
|
||||||
call_command('loaddata', 'core.yaml')
|
call_command('loaddata', 'core.yaml')
|
||||||
call_command('loaddata', 'devices.yaml')
|
call_command('loaddata', 'devices.yaml')
|
||||||
call_command('loaddata', 'inventory.yaml')
|
|
||||||
call_command('loaddata', 'nets.yaml')
|
call_command('loaddata', 'nets.yaml')
|
||||||
call_command('loaddata', 'softwares.yaml')
|
call_command('loaddata', 'softwares.yaml')
|
||||||
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
from django.apps import AppConfig
|
|
||||||
|
|
||||||
|
|
||||||
class InventoryConfig(AppConfig):
|
|
||||||
name = 'inventory'
|
|
|
@ -1,7 +1,7 @@
|
||||||
from django.db import models
|
from django.db import models
|
||||||
|
|
||||||
from customers.models import Customer
|
from customers.models import Customer
|
||||||
from inventory.models import Computer
|
from computers.models import Computer
|
||||||
from users.models import User
|
from users.models import User
|
||||||
from softwares.models import Software
|
from softwares.models import Software
|
||||||
|
|
||||||
|
|
|
@ -16,7 +16,7 @@ def test_license_two_licenses_per_user():
|
||||||
|
|
||||||
|
|
||||||
def test_license_two_licenses_per_computer():
|
def test_license_two_licenses_per_computer():
|
||||||
mixer.blend('inventory.Computer')
|
mixer.blend('computers.Computer')
|
||||||
mixer.blend('licenses.ComputerLicense')
|
mixer.blend('licenses.ComputerLicense')
|
||||||
with pytest.raises(IntegrityError):
|
with pytest.raises(IntegrityError):
|
||||||
mixer.cycle(2).blend('licenses.LicenseWithComputer',
|
mixer.cycle(2).blend('licenses.LicenseWithComputer',
|
||||||
|
|
|
@ -14,7 +14,7 @@ def test_net_detail_view_no_permission(create_admin_user):
|
||||||
create_admin_user()
|
create_admin_user()
|
||||||
net = mixer.blend('nets.Net')
|
net = mixer.blend('nets.Net')
|
||||||
customer = mixer.blend('customers.Customer')
|
customer = mixer.blend('customers.Customer')
|
||||||
device = mixer.blend('inventory.Computer', customer=customer)
|
device = mixer.blend('computers.Computer', customer=customer)
|
||||||
mixer.blend('devices.DeviceInNet',
|
mixer.blend('devices.DeviceInNet',
|
||||||
device=device,
|
device=device,
|
||||||
net=net,
|
net=net,
|
||||||
|
@ -28,7 +28,7 @@ def test_net_detail_view_no_permission(create_admin_user):
|
||||||
def test_net_detail_view(create_admin_user):
|
def test_net_detail_view(create_admin_user):
|
||||||
fixture = create_admin_user()
|
fixture = create_admin_user()
|
||||||
net = mixer.blend('nets.Net', customer=mixer.SELECT)
|
net = mixer.blend('nets.Net', customer=mixer.SELECT)
|
||||||
device = mixer.blend('inventory.Computer', customer=fixture['customer'])
|
device = mixer.blend('computers.Computer', customer=fixture['customer'])
|
||||||
device_in_net = DeviceInNet.objects.create(device=device,
|
device_in_net = DeviceInNet.objects.create(device=device,
|
||||||
net=net, ip='10.7.89.101')
|
net=net, ip='10.7.89.101')
|
||||||
client = Client()
|
client = Client()
|
||||||
|
|
|
@ -23,6 +23,7 @@ BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
||||||
|
|
||||||
INSTALLED_APPS = [
|
INSTALLED_APPS = [
|
||||||
'backups.apps.BackupsConfig',
|
'backups.apps.BackupsConfig',
|
||||||
|
'computers.apps.ComputersConfig',
|
||||||
'core.apps.CoreConfig',
|
'core.apps.CoreConfig',
|
||||||
'customers.apps.CustomersConfig',
|
'customers.apps.CustomersConfig',
|
||||||
'devices.apps.DevicesConfig',
|
'devices.apps.DevicesConfig',
|
||||||
|
@ -35,7 +36,6 @@ INSTALLED_APPS = [
|
||||||
'django_filters',
|
'django_filters',
|
||||||
'django_tables2',
|
'django_tables2',
|
||||||
'guardian',
|
'guardian',
|
||||||
'inventory.apps.InventoryConfig',
|
|
||||||
'licenses.apps.LicensesConfig',
|
'licenses.apps.LicensesConfig',
|
||||||
'nested_admin',
|
'nested_admin',
|
||||||
'nets.apps.NetsConfig',
|
'nets.apps.NetsConfig',
|
||||||
|
|
|
@ -19,10 +19,10 @@ from django.urls import path
|
||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
url(r'', include('backups.urls')),
|
url(r'', include('backups.urls')),
|
||||||
|
url(r'', include('computers.urls')),
|
||||||
url(r'', include('core.urls')),
|
url(r'', include('core.urls')),
|
||||||
url(r'', include('customers.urls')),
|
url(r'', include('customers.urls')),
|
||||||
url(r'', include('devices.urls')),
|
url(r'', include('devices.urls')),
|
||||||
url(r'', include('inventory.urls')),
|
|
||||||
url(r'', include('licenses.urls')),
|
url(r'', include('licenses.urls')),
|
||||||
url(r'', include('nets.urls')),
|
url(r'', include('nets.urls')),
|
||||||
url(r'', include('users.urls')),
|
url(r'', include('users.urls')),
|
||||||
|
|
4
run.sh
4
run.sh
|
@ -5,10 +5,10 @@ if [ -f ./.second_run ]; then
|
||||||
python manage.py migrate
|
python manage.py migrate
|
||||||
else
|
else
|
||||||
python manage.py makemigrations backups
|
python manage.py makemigrations backups
|
||||||
|
python manage.py makemigrations computers
|
||||||
python manage.py makemigrations core
|
python manage.py makemigrations core
|
||||||
python manage.py makemigrations customers
|
python manage.py makemigrations customers
|
||||||
python manage.py makemigrations devices
|
python manage.py makemigrations devices
|
||||||
python manage.py makemigrations inventory
|
|
||||||
python manage.py makemigrations licenses
|
python manage.py makemigrations licenses
|
||||||
python manage.py makemigrations nets
|
python manage.py makemigrations nets
|
||||||
python manage.py makemigrations softwares
|
python manage.py makemigrations softwares
|
||||||
|
@ -16,9 +16,9 @@ else
|
||||||
python manage.py makemigrations
|
python manage.py makemigrations
|
||||||
python manage.py migrate
|
python manage.py migrate
|
||||||
python manage.py loaddata backups
|
python manage.py loaddata backups
|
||||||
|
python manage.py loaddata computers
|
||||||
python manage.py loaddata core
|
python manage.py loaddata core
|
||||||
python manage.py loaddata devices
|
python manage.py loaddata devices
|
||||||
python manage.py loaddata inventory
|
|
||||||
python manage.py loaddata nets
|
python manage.py loaddata nets
|
||||||
python manage.py loaddata softwares
|
python manage.py loaddata softwares
|
||||||
python manage.py shell -c "from django.contrib.auth import get_user_model; User = get_user_model(); User.objects.create_superuser('admin', 'admin@example.com', 'password')"
|
python manage.py shell -c "from django.contrib.auth import get_user_model; User = get_user_model(); User.objects.create_superuser('admin', 'admin@example.com', 'password')"
|
||||||
|
|
|
@ -81,7 +81,7 @@ def test_user_detail_view_license(create_admin_user):
|
||||||
def test_user_detail_view_computer(create_admin_user):
|
def test_user_detail_view_computer(create_admin_user):
|
||||||
create_admin_user()
|
create_admin_user()
|
||||||
user = mixer.blend('users.User', customer=mixer.SELECT)
|
user = mixer.blend('users.User', customer=mixer.SELECT)
|
||||||
computer = mixer.blend('inventory.Computer', user=user)
|
computer = mixer.blend('computers.Computer', user=user)
|
||||||
client = Client()
|
client = Client()
|
||||||
client.login(username="novartis-admin", password="password")
|
client.login(username="novartis-admin", password="password")
|
||||||
response = client.get('/user/' + str(user.id) + '/')
|
response = client.get('/user/' + str(user.id) + '/')
|
||||||
|
|
|
@ -5,7 +5,7 @@ from django.shortcuts import render
|
||||||
from django_tables2 import RequestConfig
|
from django_tables2 import RequestConfig
|
||||||
|
|
||||||
from customers.decorators import customer_view_permission
|
from customers.decorators import customer_view_permission
|
||||||
from inventory.models import Computer
|
from computers.models import Computer
|
||||||
from licenses.models import LicenseWithUser
|
from licenses.models import LicenseWithUser
|
||||||
|
|
||||||
from .decorators import user_view_permission
|
from .decorators import user_view_permission
|
||||||
|
|
Loading…
Reference in New Issue