Ejemplo n.º 1
0
    def test_save_pickle_try_big_data(self):
        self.data = [a for a in range(30000)]
        self.data += ["hello {}".format(a) for a in range(30000)]

        db.renew_pickle(self.data, self.file_name)

        self.assertTrue(os.path.exists(self.file_name))
Ejemplo n.º 2
0
    def test_save_pickle_on_debug(self):
        # self.data = ''

        db.renew_pickle(self.data, self.file_name)

        # print(''.join(self.out))
        # print(self.out)

        self.assertEqual("".join(self.out), "just for test\n")
Ejemplo n.º 3
0
    def test_save_pickle(self):

        # проверяем не было ли файла до этого
        self.assertFalse(os.path.exists(self.file_name))

        # проверяемый функционал
        db.renew_pickle(self.data, self.file_name)

        # проверяем - был ли создан файл
        self.assertTrue(os.path.exists(self.file_name))

        # проверка целостности
        self.assertEqual(db.read_pickle_object(self.file_name), self.data)
Ejemplo n.º 4
0
def insert_auto_type_into_db(raw_brand):
	global data

	brand = 0
	what = ''
	auto = tuple()

	#если бренд не был передан - запускаем блок заполнения бренда
	if raw_brand == '':
		raw_brand = take_from_input('введите марку : ').strip()

		if raw_brand == 'выход':
			return False

		#если вводимый бренд(марка) состоит только из букв
		if raw_brand.isalpha():

			#если ещё не было подобного бренда - добавляем
			if raw_brand not in data['raw_brands']:
				data['raw_brands'].append(raw_brand)
				#обновляем объект
				data = renew_pickle(data, file_name)
				insert_auto_type_into_db(raw_brand)
			#если бренд подобный уже был - перезапускаем функцию с заполненным брендом
			else:
				insert_auto_type_into_db(raw_brand)

		else : 
			#исключение - перезапуск функции
			print_error_message(3)
			insert_auto_type_into_db('')
	else :
	#brand есть - идём дальше 
		brand = data['raw_brands'].index(raw_brand)
		#получаем мощность
		power = take_from_input('введите мощность : ')

		#если ввели не цифры - выходим - перезапускаем
		if not power.isnumeric:
			print_error_message(5)
			insert_auto_type_into_db(raw_brand)		
		else:
			#если новообразованный сет имеет разницу с текущим - добавляем его
			if not data['auto_type'] or not data['auto_type'].intersection( { tuple([brand, int(power)], ) } ):
			#if not data['auto_type'] or data['auto_type'].difference( { tuple([brand, int(power)], ) } ):
				print('новый авто добавлен')
				data['auto_type'].add( tuple( [brand, int(power)]) )
				data = renew_pickle(data, file_name)
			else:
				print_error_message(6)
Ejemplo n.º 5
0
def delete_auto_type(id):
	data['auto_type'].remove(id)
	data = renew_pickle(data, file_name)
Ejemplo n.º 6
0
    def test_save_pickle_try_empty(self):
        self.data = ""

        db.renew_pickle(self.data, self.file_name)

        self.assertTrue(os.path.exists(self.file_name))