def test_insert_task(self): database = Database() # Hanya untuk menghapus tes sebelumnya jika ada database.GetCursor().execute( """ DELETE FROM Task WHERE ID = "TEST_ID" """ ) database.InsertTask('TEST_ID','IF3110','Kuis','Bab 2 sampai 3','22/04/2021') database.GetCursor().execute("SELECT * FROM Task where ID = \"TEST_ID\"") result = database.GetCursor().fetchall() assert len(result) == 1, "Primary key Task tidak berjalan dengan baik atau data tidak tersimpan." result = result[0] assert result[0] == "TEST_ID" assert result[1] == "IF3110" assert result[2] == "Kuis" assert result[3] == "Bab 2 sampai 3" assert result[4] == "22/04/2021" # Hanya untuk menghapus tes sebelumnya jika ada database.GetCursor().execute( """ DELETE FROM Task WHERE ID = "TEST_ID" """ ) database.GetConnection().commit()
def execute(self): database = Database() # matkul tidak boleh kosong if self.matkul.strip() != "": # mengecek keberadaan jenis valid_jenis = database.GetCursor().execute(""" SELECT jenis FROM Prioritas """).fetchall() valid_jenis = list(map(lambda row: row[0], valid_jenis)) if self.jenis in valid_jenis: # Generate ID database.GetCursor().execute(""" SELECT ID FROM Task """) id_result = database.GetCursor().fetchall() new_id = "" if len(id_result) == 0: new_id = "1" else: print( str( max(list(map(lambda row: int(row[0]), id_result))) + 1)) new_id = str( max(list(map(lambda row: int(row[0]), id_result))) + 1) print(new_id) new_id = int(new_id) #(self,id, matkul, jenis, deskripsi, tanggal): database.InsertTask( str(new_id), self.matkul, self.jenis, self.deskripsi, "{:0>4}-{:0>2}-{:0>2}".format(self.tahun, self.bulan, self.tanggal)) database.GetConnection().commit() self.tempResult = "Task berhasil ditambahkan! ^o^\n" self.tempResult += "(ID: {}) {} - {} - {} - {}".format( new_id, self.matkul, self.jenis, self.deskripsi, "{:0>4}-{:0>2}-{:0>2}".format(self.tahun, self.bulan, self.tanggal)) else: self.tempResult = "Saya tidak mengenal jenis \"{}\" ... .-.".format( self.jenis) else: self.tempResult = "Saya bingung apa yang perlu diingatkan. .-."
def initialization(self, request, used_data): database = Database() def cleanup(): for data_id in list(map(lambda row: row[0], used_data)): database.GetCursor().execute(""" DELETE FROM Task WHERE ID = \"{}\" """.format(data_id)) database.GetConnection().commit() cleanup() for row in used_data: database.InsertTask(*row) database.GetConnection().commit() request.addfinalizer(cleanup)