-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathResumeTest.java
More file actions
186 lines (161 loc) · 5.09 KB
/
ResumeTest.java
File metadata and controls
186 lines (161 loc) · 5.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
import org.junit.Test;
import org.junit.Before;
import static org.junit.Assert.*;
import java.util.Date;
/**
* Comprehensive test class for Resume
* TDD: Test-driven development, TDD, Разработка через тестирование
*/
public class ResumeTest {
private Resume resume;
@Before
public void setUp() {
resume = new Resume();
}
/**
* Test that Resume can be instantiated
*/
@Test
public void testInstantiation() {
Resume r = new Resume();
assertNotNull("Resume instance should not be null", r);
}
/**
* Test default fio value is null
*/
@Test
public void testDefaultFioIsNull() {
assertNull("Default fio should be null", resume.fio);
}
/**
* Test default date value is null
*/
@Test
public void testDefaultDateIsNull() {
assertNull("Default date should be null", resume.date);
}
/**
* Test setting fio field
*/
@Test
public void testSetFio() {
resume.fio = "Иванов Иван Иванович";
assertEquals("fio should be set correctly", "Иванов Иван Иванович", resume.fio);
}
/**
* Test setting fio to empty string
*/
@Test
public void testSetFioEmptyString() {
resume.fio = "";
assertEquals("fio should accept empty string", "", resume.fio);
}
/**
* Test setting date field
*/
@Test
public void testSetDate() {
Date birthDate = new Date();
resume.date = birthDate;
assertEquals("date should be set correctly", birthDate, resume.date);
}
/**
* Test setting date to specific value
*/
@Test
public void testSetDateSpecificValue() {
Date birthDate = new Date(0); // January 1, 1970
resume.date = birthDate;
assertNotNull("date should not be null after setting", resume.date);
assertEquals("date should match set value", birthDate, resume.date);
}
/**
* Test multiple Resume instances are independent
*/
@Test
public void testMultipleInstances() {
Resume resume1 = new Resume();
Resume resume2 = new Resume();
resume1.fio = "Петров";
resume2.fio = "Сидоров";
assertNotSame("Different instances should not be the same object", resume1, resume2);
assertEquals("resume1.fio should be Петров", "Петров", resume1.fio);
assertEquals("resume2.fio should be Сидоров", "Сидоров", resume2.fio);
}
/**
* Test setting all fields
*/
@Test
public void testSetAllFields() {
resume.fio = "Козлов Козьма Козьмич";
resume.date = new Date();
assertNotNull("fio should not be null after setting", resume.fio);
assertNotNull("date should not be null after setting", resume.date);
}
/**
* Test updating fio value
*/
@Test
public void testUpdateFio() {
resume.fio = "Первое Имя";
assertEquals("fio should be first name", "Первое Имя", resume.fio);
resume.fio = "Второе Имя";
assertEquals("fio should be updated to second name", "Второе Имя", resume.fio);
}
/**
* Test updating date value
*/
@Test
public void testUpdateDate() {
Date firstDate = new Date(1000000);
Date secondDate = new Date(2000000);
resume.date = firstDate;
assertEquals("date should be first date", firstDate, resume.date);
resume.date = secondDate;
assertEquals("date should be updated to second date", secondDate, resume.date);
}
/**
* Test fio with special characters
*/
@Test
public void testFioWithSpecialCharacters() {
resume.fio = "Иванов-Петров Иван О'Коннор";
assertEquals("fio should handle special characters",
"Иванов-Петров Иван О'Коннор", resume.fio);
}
/**
* Test fio with numbers
*/
@Test
public void testFioWithNumbers() {
resume.fio = "Иванов Иван 2-й";
assertEquals("fio should handle numbers", "Иванов Иван 2-й", resume.fio);
}
/**
* Test setting fio to null after setting a value
*/
@Test
public void testSetFioToNull() {
resume.fio = "Some Name";
resume.fio = null;
assertNull("fio should be null after setting to null", resume.fio);
}
/**
* Test setting date to null after setting a value
*/
@Test
public void testSetDateToNull() {
resume.date = new Date();
resume.date = null;
assertNull("date should be null after setting to null", resume.date);
}
/**
* Test long fio value
*/
@Test
public void testLongFioValue() {
String longName = "Очень Длинное Имя Отчество Фамилия Которое Может Быть Слишком Длинным";
resume.fio = longName;
assertEquals("fio should accept long values", longName, resume.fio);
}
}