refactor: reorganize test files and update .gitignore for new test paths

lab4
Artem-Darius Weber 2 months ago
parent b2cf71804a
commit c433dccf04

2
.gitignore vendored

@ -1 +1 @@
lab2/students_test.txt
lab2/tests/students_test.txt

@ -1,30 +0,0 @@
require_relative 'student_short'
require_relative 'data_list_student_short'
students = [
StudentShort.new(id: '1', surname_initials: 'Иванов И.И.', phone: '+79991112233'),
StudentShort.new(id: '2', surname_initials: 'Петров П.П.', telegram: '@petrov'),
StudentShort.new(id: '3', surname_initials: 'Сидоров С.С.', email: 'sidorov@mail.ru')
]
data_list = DataListStudentShort.new(students)
puts "Столбцы: #{data_list.get_names.inspect}"
table = data_list.get_data
(0...table.rows_count).each do |row|
puts (0...table.columns_count).map { |col| table.item(row, col) }.join(' | ')
end
new_students = [
StudentShort.new(id: '4', surname_initials: 'Новиков Н.Н.', phone: '+79994445566'),
StudentShort.new(id: '5', surname_initials: 'Кузнецов К.К.', email: 'kuznetsov@example.com')
]
data_list.items = new_students
puts "\nПосле замены:"
table = data_list.get_data
(0...table.rows_count).each do |row|
puts (0...table.columns_count).map { |col| table.item(row, col) }.join(' | ')
end

@ -1,54 +1,30 @@
require 'minitest/autorun'
require_relative '../data_list_student_short'
require_relative '../student_short'
require_relative '../data_list_student_short'
class TestDataListStudentShort < Minitest::Test
def setup
@students = [
StudentShort.new(id: '1', surname_initials: 'Иванов И.И.', phone: '+79991112233'),
StudentShort.new(id: '2', surname_initials: 'Петров П.П.', telegram: '@petrov'),
StudentShort.new(id: '3', surname_initials: 'Сидоров С.С.', email: 'sidorov@mail.ru')
]
@data_list = DataListStudentShort.new(@students)
end
def test_get_names
assert_equal ['№', 'Фамилия и инициалы', 'Телефон', 'Telegram', 'Email'],
@data_list.get_names
end
def test_get_data
table = @data_list.get_data
assert_equal 3, table.rows_count
assert_equal 5, table.columns_count
students = [
StudentShort.new(id: '1', surname_initials: 'Иванов И.И.', phone: '+79991112233'),
StudentShort.new(id: '2', surname_initials: 'Петров П.П.', telegram: '@petrov'),
StudentShort.new(id: '3', surname_initials: 'Сидоров С.С.', email: 'sidorov@mail.ru')
]
assert_equal 1, table.item(0, 0)
assert_equal 'Иванов И.И.', table.item(0, 1)
assert_equal '+79991112233', table.item(0, 2)
assert_equal '-', table.item(0, 3)
assert_equal '-', table.item(0, 4)
data_list = DataListStudentShort.new(students)
assert_equal '-', table.item(1, 2)
assert_equal '@petrov', table.item(1, 3)
end
puts "Столбцы: #{data_list.get_names.inspect}"
def test_selection_functionality
@data_list.select(0)
@data_list.select(2)
assert_equal [0, 2], @data_list.get_selected
end
table = data_list.get_data
(0...table.rows_count).each do |row|
puts (0...table.columns_count).map { |col| table.item(row, col) }.join(' | ')
end
def test_invalid_data_handling
invalid_students = [
{ id: '1', name: 'Иванов И.И.', phone: '+79991112233' },
StudentShort.new(id: '2', surname_initials: 'Петров П.П.', telegram: '@petrov')
]
data_list = DataListStudentShort.new(invalid_students)
new_students = [
StudentShort.new(id: '4', surname_initials: 'Новиков Н.Н.', phone: '+79994445566'),
StudentShort.new(id: '5', surname_initials: 'Кузнецов К.К.', email: 'kuznetsov@example.com')
]
table = data_list.get_data
data_list.items = new_students
assert_equal 'N/A', table.item(0, 1)
assert_equal '-', table.item(0, 3)
end
puts "\nПосле замены:"
table = data_list.get_data
(0...table.rows_count).each do |row|
puts (0...table.columns_count).map { |col| table.item(row, col) }.join(' | ')
end

@ -1,4 +1,4 @@
require_relative 'data_table'
require_relative '../data_table'
data = [
[1, "Alice", 25],

@ -1,7 +1,7 @@
require 'date'
require_relative 'students_list_txt'
require_relative 'student'
require_relative 'student_short'
require_relative '../students_list_txt'
require_relative '../student'
require_relative '../student_short'
def run_tests
filename = 'students_test.txt'
Loading…
Cancel
Save