#15 shiv365 λ

Open
shiv-365 wants to merge 2 commits from shiv-365/ZCW-Lambdas:master into master

+ 9
- 0
.idea/ZCW-Lambdas.iml View File

@@ -0,0 +1,9 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<module type="JAVA_MODULE" version="4">
3
+  <component name="NewModuleRootManager" inherit-compiler-output="true">
4
+    <exclude-output />
5
+    <content url="file://$MODULE_DIR$" />
6
+    <orderEntry type="inheritedJdk" />
7
+    <orderEntry type="sourceFolder" forTests="false" />
8
+  </component>
9
+</module>

+ 9
- 0
.idea/misc.xml View File

@@ -0,0 +1,9 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<project version="4">
3
+  <component name="JavaScriptSettings">
4
+    <option name="languageLevel" value="ES6" />
5
+  </component>
6
+  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="false" project-jdk-name="1.8" project-jdk-type="JavaSDK">
7
+    <output url="file://$PROJECT_DIR$" />
8
+  </component>
9
+</project>

+ 9
- 0
.idea/modules.xml View File

@@ -0,0 +1,9 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<project version="4">
3
+  <component name="ProjectModuleManager">
4
+    <modules>
5
+      <module fileurl="file://$PROJECT_DIR$/.idea/ZCW-Lambdas.iml" filepath="$PROJECT_DIR$/.idea/ZCW-Lambdas.iml" />
6
+      <module fileurl="file://$PROJECT_DIR$/src/src.iml" filepath="$PROJECT_DIR$/src/src.iml" />
7
+    </modules>
8
+  </component>
9
+</project>

+ 6
- 0
.idea/vcs.xml View File

@@ -0,0 +1,6 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<project version="4">
3
+  <component name="VcsDirectoryMappings">
4
+    <mapping directory="" vcs="Git" />
5
+  </component>
6
+</project>

+ 561
- 0
.idea/workspace.xml View File

@@ -0,0 +1,561 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<project version="4">
3
+  <component name="ChangeListManager">
4
+    <list default="true" id="c539be51-48c7-45f1-93a1-0480d2b33c7e" name="Default" comment="">
5
+      <change beforePath="$PROJECT_DIR$/production/src/Person$Sex.class" beforeDir="false" afterPath="$PROJECT_DIR$/production/src/Person$Sex.class" afterDir="false" />
6
+      <change beforePath="$PROJECT_DIR$/production/src/Person.class" beforeDir="false" afterPath="$PROJECT_DIR$/production/src/Person.class" afterDir="false" />
7
+      <change beforePath="$PROJECT_DIR$/production/src/Persons.class" beforeDir="false" afterPath="$PROJECT_DIR$/production/src/Persons.class" afterDir="false" />
8
+      <change beforePath="$PROJECT_DIR$/production/src/PersonsTest.class" beforeDir="false" afterPath="$PROJECT_DIR$/production/src/PersonsTest.class" afterDir="false" />
9
+      <change beforePath="$PROJECT_DIR$/src/src/Person.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/src/Person.java" afterDir="false" />
10
+      <change beforePath="$PROJECT_DIR$/src/src/Persons.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/src/Persons.java" afterDir="false" />
11
+      <change beforePath="$PROJECT_DIR$/src/src/PersonsTest.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/src/PersonsTest.java" afterDir="false" />
12
+    </list>
13
+    <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
14
+    <option name="TRACKING_ENABLED" value="true" />
15
+    <option name="SHOW_DIALOG" value="false" />
16
+    <option name="HIGHLIGHT_CONFLICTS" value="true" />
17
+    <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
18
+    <option name="LAST_RESOLUTION" value="IGNORE" />
19
+  </component>
20
+  <component name="FileEditorManager">
21
+    <leaf>
22
+      <file leaf-file-name="Person.java" pinned="false" current-in-tab="false">
23
+        <entry file="file://$PROJECT_DIR$/src/src/Person.java">
24
+          <provider selected="true" editor-type-id="text-editor">
25
+            <state relative-caret-position="268">
26
+              <caret line="48" column="29" selection-start-line="48" selection-start-column="29" selection-end-line="48" selection-end-column="29" />
27
+              <folding>
28
+                <element signature="imports" expanded="true" />
29
+                <element signature="e#163#164#0" expanded="true" />
30
+                <element signature="e#191#192#0" expanded="true" />
31
+                <element signature="e#621#622#0" expanded="true" />
32
+                <element signature="e#653#654#0" expanded="true" />
33
+                <element signature="e#208#209#0" expanded="true" />
34
+                <element signature="e#229#230#0" expanded="true" />
35
+                <element signature="e#615#616#0" expanded="true" />
36
+                <element signature="e#642#643#0" expanded="true" />
37
+                <element signature="e#745#746#0" expanded="true" />
38
+                <element signature="e#773#774#0" expanded="true" />
39
+                <element signature="e#909#910#0" expanded="true" />
40
+                <element signature="e#937#938#0" expanded="true" />
41
+                <element signature="e#889#890#0" expanded="true" />
42
+                <element signature="e#920#921#0" expanded="true" />
43
+                <element signature="e#1050#1051#0" expanded="true" />
44
+                <element signature="e#1085#1086#0" expanded="true" />
45
+              </folding>
46
+            </state>
47
+          </provider>
48
+        </entry>
49
+      </file>
50
+      <file leaf-file-name="Persons.java" pinned="false" current-in-tab="true">
51
+        <entry file="file://$PROJECT_DIR$/src/src/Persons.java">
52
+          <provider selected="true" editor-type-id="text-editor">
53
+            <state relative-caret-position="464">
54
+              <caret line="33" column="9" lean-forward="true" selection-start-line="33" selection-start-column="9" selection-end-line="33" selection-end-column="9" />
55
+              <folding>
56
+                <element signature="imports" expanded="true" />
57
+                <element signature="e#95#96#0" expanded="true" />
58
+                <element signature="e#120#121#0" expanded="true" />
59
+              </folding>
60
+            </state>
61
+          </provider>
62
+        </entry>
63
+      </file>
64
+      <file leaf-file-name="PersonsTest.java" pinned="false" current-in-tab="false">
65
+        <entry file="file://$PROJECT_DIR$/src/src/PersonsTest.java">
66
+          <provider selected="true" editor-type-id="text-editor">
67
+            <state relative-caret-position="345">
68
+              <caret line="28" selection-start-line="28" selection-end-line="28" />
69
+            </state>
70
+          </provider>
71
+        </entry>
72
+      </file>
73
+    </leaf>
74
+  </component>
75
+  <component name="FileTemplateManagerImpl">
76
+    <option name="RECENT_TEMPLATES">
77
+      <list>
78
+        <option value="Interface" />
79
+        <option value="Class" />
80
+        <option value="JUnit4 Test Class" />
81
+      </list>
82
+    </option>
83
+  </component>
84
+  <component name="Git.Settings">
85
+    <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
86
+  </component>
87
+  <component name="IdeDocumentHistory">
88
+    <option name="CHANGED_PATHS">
89
+      <list>
90
+        <option value="$PROJECT_DIR$/src/src/CheckPerson.java" />
91
+        <option value="$PROJECT_DIR$/src/src/PersonTest.java" />
92
+        <option value="$PROJECT_DIR$/src/src/Person.java" />
93
+        <option value="$PROJECT_DIR$/src/src/Persons.java" />
94
+        <option value="$PROJECT_DIR$/src/src/PersonsTest.java" />
95
+      </list>
96
+    </option>
97
+  </component>
98
+  <component name="JsBuildToolGruntFileManager" detection-done="true" sorting="DEFINITION_ORDER" />
99
+  <component name="JsBuildToolPackageJson" detection-done="true" sorting="DEFINITION_ORDER" />
100
+  <component name="JsGulpfileManager">
101
+    <detection-done>true</detection-done>
102
+    <sorting>DEFINITION_ORDER</sorting>
103
+  </component>
104
+  <component name="NodePackageJsonFileManager">
105
+    <packageJsonPaths />
106
+  </component>
107
+  <component name="ProjectFrameBounds">
108
+    <option name="y" value="22" />
109
+    <option name="width" value="863" />
110
+    <option name="height" value="970" />
111
+  </component>
112
+  <component name="ProjectView">
113
+    <navigator proportions="" version="1">
114
+      <foldersAlwaysOnTop value="true" />
115
+    </navigator>
116
+    <panes>
117
+      <pane id="Scope" />
118
+      <pane id="ProjectPane">
119
+        <subPane>
120
+          <expand>
121
+            <path>
122
+              <item name="ZCW-Lambdas" type="b2602c69:ProjectViewProjectNode" />
123
+              <item name="ZCW-Lambdas" type="462c0819:PsiDirectoryNode" />
124
+            </path>
125
+            <path>
126
+              <item name="ZCW-Lambdas" type="b2602c69:ProjectViewProjectNode" />
127
+              <item name="ZCW-Lambdas" type="462c0819:PsiDirectoryNode" />
128
+              <item name=".idea" type="462c0819:PsiDirectoryNode" />
129
+            </path>
130
+            <path>
131
+              <item name="ZCW-Lambdas" type="b2602c69:ProjectViewProjectNode" />
132
+              <item name="ZCW-Lambdas" type="462c0819:PsiDirectoryNode" />
133
+              <item name="src" type="462c0819:PsiDirectoryNode" />
134
+            </path>
135
+            <path>
136
+              <item name="ZCW-Lambdas" type="b2602c69:ProjectViewProjectNode" />
137
+              <item name="ZCW-Lambdas" type="462c0819:PsiDirectoryNode" />
138
+              <item name="src" type="462c0819:PsiDirectoryNode" />
139
+              <item name="src" type="462c0819:PsiDirectoryNode" />
140
+            </path>
141
+          </expand>
142
+          <select />
143
+        </subPane>
144
+      </pane>
145
+      <pane id="AndroidView" />
146
+      <pane id="PackagesPane" />
147
+    </panes>
148
+  </component>
149
+  <component name="PropertiesComponent">
150
+    <property name="WebServerToolWindowFactoryState" value="false" />
151
+    <property name="aspect.path.notification.shown" value="true" />
152
+    <property name="com.intellij.testIntegration.createTest.CreateTestDialog.defaultLibrary" value="JUnit4" />
153
+    <property name="com.intellij.testIntegration.createTest.CreateTestDialog.defaultLibrarySuperClass.JUnit4" value="" />
154
+    <property name="create.test.in.the.same.root" value="true" />
155
+    <property name="jdk.selected.JAVA_MODULE" value="1.8" />
156
+    <property name="last_opened_file_path" value="$PROJECT_DIR$" />
157
+    <property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
158
+    <property name="nodejs_npm_path_reset_for_default_project" value="true" />
159
+    <property name="project.structure.last.edited" value="Project" />
160
+    <property name="project.structure.proportion" value="0.15" />
161
+    <property name="project.structure.side.proportion" value="0.2" />
162
+  </component>
163
+  <component name="RecentsManager">
164
+    <key name="CreateTestDialog.RecentsKey">
165
+      <recent name="" />
166
+    </key>
167
+    <key name="CreateTestDialog.Recents.Supers">
168
+      <recent name="" />
169
+    </key>
170
+  </component>
171
+  <component name="RunDashboard">
172
+    <option name="ruleStates">
173
+      <list>
174
+        <RuleState>
175
+          <option name="name" value="ConfigurationTypeDashboardGroupingRule" />
176
+        </RuleState>
177
+        <RuleState>
178
+          <option name="name" value="StatusDashboardGroupingRule" />
179
+        </RuleState>
180
+      </list>
181
+    </option>
182
+  </component>
183
+  <component name="RunManager" selected="JUnit.PersonsTest.lambda">
184
+    <configuration default="true" type="Application" factoryName="Application">
185
+      <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
186
+    </configuration>
187
+    <configuration name="PersonTest" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
188
+      <module name="src" />
189
+      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
190
+      <option name="ALTERNATIVE_JRE_PATH" />
191
+      <option name="PACKAGE_NAME" value="" />
192
+      <option name="MAIN_CLASS_NAME" value="PersonTest" />
193
+      <option name="METHOD_NAME" />
194
+      <option name="TEST_OBJECT" value="class" />
195
+      <option name="VM_PARAMETERS" value="-ea" />
196
+      <option name="PARAMETERS" />
197
+      <option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
198
+      <option name="PASS_PARENT_ENVS" value="true" />
199
+      <option name="TEST_SEARCH_SCOPE">
200
+        <value defaultName="singleModule" />
201
+      </option>
202
+      <patterns />
203
+    </configuration>
204
+    <configuration name="PersonTest.getBirthday" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
205
+      <module name="src" />
206
+      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
207
+      <option name="ALTERNATIVE_JRE_PATH" />
208
+      <option name="PACKAGE_NAME" value="" />
209
+      <option name="MAIN_CLASS_NAME" value="PersonTest" />
210
+      <option name="METHOD_NAME" value="getBirthday" />
211
+      <option name="TEST_OBJECT" value="method" />
212
+      <option name="VM_PARAMETERS" value="-ea" />
213
+      <option name="PARAMETERS" />
214
+      <option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
215
+      <option name="PASS_PARENT_ENVS" value="true" />
216
+      <option name="TEST_SEARCH_SCOPE">
217
+        <value defaultName="singleModule" />
218
+      </option>
219
+      <patterns />
220
+    </configuration>
221
+    <configuration name="PersonTest.getName" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
222
+      <module name="src" />
223
+      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
224
+      <option name="ALTERNATIVE_JRE_PATH" />
225
+      <option name="PACKAGE_NAME" value="" />
226
+      <option name="MAIN_CLASS_NAME" value="PersonTest" />
227
+      <option name="METHOD_NAME" value="getName" />
228
+      <option name="TEST_OBJECT" value="method" />
229
+      <option name="VM_PARAMETERS" value="-ea" />
230
+      <option name="PARAMETERS" />
231
+      <option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
232
+      <option name="PASS_PARENT_ENVS" value="true" />
233
+      <option name="TEST_SEARCH_SCOPE">
234
+        <value defaultName="singleModule" />
235
+      </option>
236
+      <patterns />
237
+    </configuration>
238
+    <configuration name="PersonsTest.lambda" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
239
+      <module name="src" />
240
+      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
241
+      <option name="ALTERNATIVE_JRE_PATH" />
242
+      <option name="PACKAGE_NAME" value="" />
243
+      <option name="MAIN_CLASS_NAME" value="PersonsTest" />
244
+      <option name="METHOD_NAME" value="lambda" />
245
+      <option name="TEST_OBJECT" value="method" />
246
+      <option name="VM_PARAMETERS" value="-ea" />
247
+      <option name="PARAMETERS" />
248
+      <option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
249
+      <option name="PASS_PARENT_ENVS" value="true" />
250
+      <option name="TEST_SEARCH_SCOPE">
251
+        <value defaultName="singleModule" />
252
+      </option>
253
+      <patterns />
254
+    </configuration>
255
+    <configuration name="PersonsTest.printPersons" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
256
+      <module name="src" />
257
+      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
258
+      <option name="ALTERNATIVE_JRE_PATH" />
259
+      <option name="PACKAGE_NAME" value="" />
260
+      <option name="MAIN_CLASS_NAME" value="PersonsTest" />
261
+      <option name="METHOD_NAME" value="printPersons" />
262
+      <option name="TEST_OBJECT" value="method" />
263
+      <option name="VM_PARAMETERS" value="-ea" />
264
+      <option name="PARAMETERS" />
265
+      <option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
266
+      <option name="PASS_PARENT_ENVS" value="true" />
267
+      <option name="TEST_SEARCH_SCOPE">
268
+        <value defaultName="singleModule" />
269
+      </option>
270
+      <patterns />
271
+    </configuration>
272
+    <configuration default="true" type="JUnit" factoryName="JUnit">
273
+      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
274
+      <option name="ALTERNATIVE_JRE_PATH" />
275
+      <option name="PACKAGE_NAME" />
276
+      <option name="MAIN_CLASS_NAME" />
277
+      <option name="METHOD_NAME" />
278
+      <option name="TEST_OBJECT" value="class" />
279
+      <option name="VM_PARAMETERS" value="-ea" />
280
+      <option name="PARAMETERS" />
281
+      <option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
282
+      <option name="PASS_PARENT_ENVS" value="true" />
283
+      <option name="TEST_SEARCH_SCOPE">
284
+        <value defaultName="singleModule" />
285
+      </option>
286
+      <patterns />
287
+    </configuration>
288
+    <configuration default="true" type="TestNG" factoryName="TestNG">
289
+      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
290
+      <option name="ALTERNATIVE_JRE_PATH" />
291
+      <option name="SUITE_NAME" />
292
+      <option name="PACKAGE_NAME" />
293
+      <option name="MAIN_CLASS_NAME" />
294
+      <option name="METHOD_NAME" />
295
+      <option name="GROUP_NAME" />
296
+      <option name="TEST_OBJECT" value="CLASS" />
297
+      <option name="VM_PARAMETERS" value="-ea" />
298
+      <option name="PARAMETERS" />
299
+      <option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
300
+      <option name="OUTPUT_DIRECTORY" />
301
+      <option name="PASS_PARENT_ENVS" value="true" />
302
+      <option name="TEST_SEARCH_SCOPE">
303
+        <value defaultName="singleModule" />
304
+      </option>
305
+      <option name="USE_DEFAULT_REPORTERS" value="false" />
306
+      <option name="PROPERTIES_FILE" />
307
+      <properties />
308
+      <listeners />
309
+    </configuration>
310
+    <list>
311
+      <item itemvalue="JUnit.PersonTest.getName" />
312
+      <item itemvalue="JUnit.PersonTest.getBirthday" />
313
+      <item itemvalue="JUnit.PersonTest" />
314
+      <item itemvalue="JUnit.PersonsTest.printPersons" />
315
+      <item itemvalue="JUnit.PersonsTest.lambda" />
316
+    </list>
317
+    <recent_temporary>
318
+      <list>
319
+        <item itemvalue="JUnit.PersonsTest.lambda" />
320
+        <item itemvalue="JUnit.PersonsTest.printPersons" />
321
+        <item itemvalue="JUnit.PersonTest" />
322
+        <item itemvalue="JUnit.PersonTest.getBirthday" />
323
+        <item itemvalue="JUnit.PersonTest.getName" />
324
+      </list>
325
+    </recent_temporary>
326
+  </component>
327
+  <component name="SvnConfiguration">
328
+    <configuration />
329
+  </component>
330
+  <component name="TaskManager">
331
+    <task active="true" id="Default" summary="Default task">
332
+      <changelist id="c539be51-48c7-45f1-93a1-0480d2b33c7e" name="Default" comment="" />
333
+      <created>1530469557489</created>
334
+      <option name="number" value="Default" />
335
+      <option name="presentableId" value="Default" />
336
+      <updated>1530469557489</updated>
337
+      <workItem from="1530469558858" duration="6403000" />
338
+    </task>
339
+    <servers />
340
+  </component>
341
+  <component name="TestHistory">
342
+    <history-entry file="PersonTest_getAge - 2018.07.01 at 15h 11m 22s.xml">
343
+      <configuration name="PersonTest.getAge" configurationId="JUnit" />
344
+    </history-entry>
345
+    <history-entry file="PersonTest_getName - 2018.07.01 at 15h 12m 47s.xml">
346
+      <configuration name="PersonTest.getName" configurationId="JUnit" />
347
+    </history-entry>
348
+    <history-entry file="PersonTest_getBirthday - 2018.07.01 at 15h 14m 54s.xml">
349
+      <configuration name="PersonTest.getBirthday" configurationId="JUnit" />
350
+    </history-entry>
351
+    <history-entry file="PersonTest - 2018.07.01 at 15h 18m 46s.xml">
352
+      <configuration name="PersonTest" configurationId="JUnit" />
353
+    </history-entry>
354
+    <history-entry file="PersonTest - 2018.07.01 at 15h 40m 39s.xml">
355
+      <configuration name="PersonTest" configurationId="JUnit" />
356
+    </history-entry>
357
+    <history-entry file="PersonsTest_printPersons - 2018.07.01 at 16h 01m 08s.xml">
358
+      <configuration name="PersonsTest.printPersons" configurationId="JUnit" />
359
+    </history-entry>
360
+    <history-entry file="PersonsTest_printPersons - 2018.07.01 at 16h 09m 59s.xml">
361
+      <configuration name="PersonsTest.printPersons" configurationId="JUnit" />
362
+    </history-entry>
363
+    <history-entry file="PersonsTest_lambda - 2018.07.01 at 16h 17m 08s.xml">
364
+      <configuration name="PersonsTest.lambda" configurationId="JUnit" />
365
+    </history-entry>
366
+  </component>
367
+  <component name="TimeTrackingManager">
368
+    <option name="totallyTimeSpent" value="6403000" />
369
+  </component>
370
+  <component name="ToolWindowManager">
371
+    <frame x="0" y="22" width="863" height="970" extended-state="0" />
372
+    <editor active="true" />
373
+    <layout>
374
+      <window_info anchor="right" id="Palette" />
375
+      <window_info anchor="bottom" id="TODO" order="6" />
376
+      <window_info anchor="bottom" id="Messages" weight="0.32923076" />
377
+      <window_info anchor="right" id="Palette&#9;" />
378
+      <window_info id="Image Layers" />
379
+      <window_info anchor="right" id="Capture Analysis" />
380
+      <window_info anchor="bottom" id="Event Log" side_tool="true" />
381
+      <window_info anchor="right" id="Maven Projects" />
382
+      <window_info anchor="bottom" id="Database Changes" show_stripe_button="false" />
383
+      <window_info active="true" anchor="bottom" id="Run" order="2" visible="true" weight="0.3298969" />
384
+      <window_info anchor="bottom" id="Version Control" />
385
+      <window_info anchor="bottom" id="Terminal" weight="0.3298969" />
386
+      <window_info id="Capture Tool" />
387
+      <window_info id="Designer" />
388
+      <window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.2496955" />
389
+      <window_info anchor="right" id="Database" />
390
+      <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
391
+      <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
392
+      <window_info id="UI Designer" />
393
+      <window_info anchor="right" id="Theme Preview" />
394
+      <window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
395
+      <window_info id="Favorites" side_tool="true" />
396
+      <window_info anchor="bottom" id="Find" order="1" />
397
+      <window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
398
+      <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
399
+      <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
400
+      <window_info anchor="bottom" id="Message" order="0" />
401
+      <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
402
+    </layout>
403
+  </component>
404
+  <component name="TypeScriptGeneratedFilesManager">
405
+    <option name="version" value="1" />
406
+  </component>
407
+  <component name="VcsContentAnnotationSettings">
408
+    <option name="myLimit" value="2678400000" />
409
+  </component>
410
+  <component name="editorHistoryManager">
411
+    <entry file="file://$PROJECT_DIR$/src/src/CheckPerson.java">
412
+      <provider selected="true" editor-type-id="text-editor">
413
+        <state relative-caret-position="45">
414
+          <caret line="3" column="1" lean-forward="true" selection-start-line="3" selection-start-column="1" selection-end-line="3" selection-end-column="1" />
415
+        </state>
416
+      </provider>
417
+    </entry>
418
+    <entry file="file://$PROJECT_DIR$/src/src/PersonTest.java">
419
+      <provider selected="true" editor-type-id="text-editor">
420
+        <state relative-caret-position="165">
421
+          <caret line="12" column="30" lean-forward="true" selection-start-line="12" selection-start-column="30" selection-end-line="12" selection-end-column="30" />
422
+          <folding>
423
+            <element signature="imports" expanded="true" />
424
+          </folding>
425
+        </state>
426
+      </provider>
427
+    </entry>
428
+    <entry file="file://$PROJECT_DIR$/src/src/Person.java">
429
+      <provider selected="true" editor-type-id="text-editor">
430
+        <state relative-caret-position="268">
431
+          <caret line="48" column="29" selection-start-line="48" selection-start-column="29" selection-end-line="48" selection-end-column="29" />
432
+          <folding>
433
+            <element signature="imports" expanded="true" />
434
+            <element signature="e#163#164#0" expanded="true" />
435
+            <element signature="e#191#192#0" expanded="true" />
436
+            <element signature="e#621#622#0" expanded="true" />
437
+            <element signature="e#653#654#0" expanded="true" />
438
+            <element signature="e#208#209#0" expanded="true" />
439
+            <element signature="e#229#230#0" expanded="true" />
440
+            <element signature="e#615#616#0" expanded="true" />
441
+            <element signature="e#642#643#0" expanded="true" />
442
+            <element signature="e#745#746#0" expanded="true" />
443
+            <element signature="e#773#774#0" expanded="true" />
444
+            <element signature="e#909#910#0" expanded="true" />
445
+            <element signature="e#937#938#0" expanded="true" />
446
+            <element signature="e#889#890#0" expanded="true" />
447
+            <element signature="e#920#921#0" expanded="true" />
448
+            <element signature="e#1050#1051#0" expanded="true" />
449
+            <element signature="e#1085#1086#0" expanded="true" />
450
+          </folding>
451
+        </state>
452
+      </provider>
453
+    </entry>
454
+    <entry file="file://$PROJECT_DIR$/src/src/PersonsTest.java">
455
+      <provider selected="true" editor-type-id="text-editor">
456
+        <state relative-caret-position="345">
457
+          <caret line="28" selection-start-line="28" selection-end-line="28" />
458
+        </state>
459
+      </provider>
460
+    </entry>
461
+    <entry file="file://$PROJECT_DIR$/src/src/Persons.java">
462
+      <provider selected="true" editor-type-id="text-editor">
463
+        <state relative-caret-position="464">
464
+          <caret line="33" column="9" lean-forward="true" selection-start-line="33" selection-start-column="9" selection-end-line="33" selection-end-column="9" />
465
+          <folding>
466
+            <element signature="imports" expanded="true" />
467
+            <element signature="e#95#96#0" expanded="true" />
468
+            <element signature="e#120#121#0" expanded="true" />
469
+          </folding>
470
+        </state>
471
+      </provider>
472
+    </entry>
473
+  </component>
474
+  <component name="masterDetails">
475
+    <states>
476
+      <state key="ArtifactsStructureConfigurable.UI">
477
+        <settings>
478
+          <artifact-editor />
479
+          <splitter-proportions>
480
+            <option name="proportions">
481
+              <list>
482
+                <option value="0.2" />
483
+              </list>
484
+            </option>
485
+          </splitter-proportions>
486
+        </settings>
487
+      </state>
488
+      <state key="FacetStructureConfigurable.UI">
489
+        <settings>
490
+          <last-edited>No facets are configured</last-edited>
491
+          <splitter-proportions>
492
+            <option name="proportions">
493
+              <list>
494
+                <option value="0.2" />
495
+              </list>
496
+            </option>
497
+          </splitter-proportions>
498
+        </settings>
499
+      </state>
500
+      <state key="GlobalLibrariesConfigurable.UI">
501
+        <settings>
502
+          <splitter-proportions>
503
+            <option name="proportions">
504
+              <list>
505
+                <option value="0.2" />
506
+              </list>
507
+            </option>
508
+          </splitter-proportions>
509
+        </settings>
510
+      </state>
511
+      <state key="JdkListConfigurable.UI">
512
+        <settings>
513
+          <last-edited>1.8</last-edited>
514
+          <splitter-proportions>
515
+            <option name="proportions">
516
+              <list>
517
+                <option value="0.2" />
518
+              </list>
519
+            </option>
520
+          </splitter-proportions>
521
+        </settings>
522
+      </state>
523
+      <state key="ModuleStructureConfigurable.UI">
524
+        <settings>
525
+          <last-edited>ZCW-Lambdas</last-edited>
526
+          <splitter-proportions>
527
+            <option name="proportions">
528
+              <list>
529
+                <option value="0.2" />
530
+                <option value="0.6" />
531
+              </list>
532
+            </option>
533
+          </splitter-proportions>
534
+        </settings>
535
+      </state>
536
+      <state key="ProjectJDKs.UI">
537
+        <settings>
538
+          <last-edited>1.8</last-edited>
539
+          <splitter-proportions>
540
+            <option name="proportions">
541
+              <list>
542
+                <option value="0.2" />
543
+              </list>
544
+            </option>
545
+          </splitter-proportions>
546
+        </settings>
547
+      </state>
548
+      <state key="ProjectLibrariesConfigurable.UI">
549
+        <settings>
550
+          <splitter-proportions>
551
+            <option name="proportions">
552
+              <list>
553
+                <option value="0.2" />
554
+              </list>
555
+            </option>
556
+          </splitter-proportions>
557
+        </settings>
558
+      </state>
559
+    </states>
560
+  </component>
561
+</project>

BIN
production/src/CheckPerson.class View File


BIN
production/src/Person$Sex.class View File


BIN
production/src/Person.class View File


BIN
production/src/PersonTest.class View File


BIN
production/src/Persons.class View File


BIN
production/src/PersonsTest.class View File


+ 21
- 0
src/src.iml View File

@@ -0,0 +1,21 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<module type="JAVA_MODULE" version="4">
3
+  <component name="NewModuleRootManager" inherit-compiler-output="true">
4
+    <exclude-output />
5
+    <content url="file://$MODULE_DIR$">
6
+      <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
7
+    </content>
8
+    <orderEntry type="jdk" jdkName="1.8" jdkType="JavaSDK" />
9
+    <orderEntry type="sourceFolder" forTests="false" />
10
+    <orderEntry type="module-library">
11
+      <library name="JUnit4">
12
+        <CLASSES>
13
+          <root url="jar://$APPLICATION_HOME_DIR$/lib/junit-4.12.jar!/" />
14
+          <root url="jar://$APPLICATION_HOME_DIR$/lib/hamcrest-core-1.3.jar!/" />
15
+        </CLASSES>
16
+        <JAVADOC />
17
+        <SOURCES />
18
+      </library>
19
+    </orderEntry>
20
+  </component>
21
+</module>

+ 4
- 0
src/src/CheckPerson.java View File

@@ -0,0 +1,4 @@
1
+public interface CheckPerson {
2
+
3
+    boolean test(Person p);
4
+}

+ 67
- 0
src/src/Person.java View File

@@ -0,0 +1,67 @@
1
+import com.sun.tools.javac.comp.Check;
2
+
3
+import java.time.LocalDate;
4
+import java.util.List;
5
+
6
+public class Person implements CheckPerson {
7
+
8
+
9
+
10
+    @Override
11
+    public boolean test(Person p) {
12
+        return false;
13
+    }
14
+
15
+    public enum Sex
16
+    {MALE, FEMALE}
17
+
18
+    String name;
19
+    LocalDate birthday;
20
+    Sex gender;
21
+    String emailAddress;
22
+
23
+    public Person(String name, Sex gender, LocalDate birthday, String emailAddress){
24
+        this.name=name;
25
+        this.gender = gender;
26
+        this.birthday = birthday;
27
+        this.emailAddress = emailAddress;
28
+    }
29
+    public Person(){
30
+
31
+    }
32
+    public Person(String name) {
33
+        this.name = name;
34
+    }
35
+
36
+
37
+    public int getAge() {
38
+        return LocalDate.now().getYear() - birthday.getYear();
39
+    }
40
+
41
+    public String getName(){
42
+        return name;
43
+    }
44
+
45
+    public Sex getGender(){
46
+        return gender;
47
+    }
48
+    public void setGender(Sex gender){
49
+        this.gender = gender;
50
+    }
51
+
52
+    public LocalDate getBirthday() {
53
+        return birthday;
54
+    }
55
+
56
+    public String getEmailAddress() {
57
+        return emailAddress;
58
+    }
59
+
60
+
61
+    public void printPerson() {
62
+
63
+        System.out.println(this.name + " " + this.emailAddress);
64
+
65
+    }
66
+
67
+}

+ 67
- 0
src/src/PersonTest.java View File

@@ -0,0 +1,67 @@
1
+import org.junit.Test;
2
+
3
+import java.time.LocalDate;
4
+import java.util.Collection;
5
+import java.util.Iterator;
6
+import java.util.List;
7
+import java.util.ListIterator;
8
+
9
+import static org.junit.Assert.*;
10
+
11
+public class PersonTest {
12
+    LocalDate bday = LocalDate.of(1995,8,8);
13
+    Person p = new Person("shiva", Person.Sex.MALE, bday, "shiv@temple.edu");
14
+    List<Person> list;
15
+    @org.junit.Test
16
+    public void getAge() {
17
+        int expected = 23;
18
+        int actual = p.getAge();
19
+        assertEquals(expected,actual);
20
+    }
21
+
22
+    @org.junit.Test
23
+    public void getName() {
24
+        String expected = "shiva";
25
+        String actual = p.getName();
26
+        assertEquals(expected,actual);
27
+    }
28
+
29
+    @org.junit.Test
30
+    public void getGender() {
31
+        Person.Sex expected = Person.Sex.MALE;
32
+        Person.Sex actual = p.getGender();
33
+        assertEquals(expected,actual);
34
+    }
35
+
36
+    @org.junit.Test
37
+    public void getBirthday() {
38
+        LocalDate expected = bday;
39
+        LocalDate actual = p.getBirthday();
40
+        assertEquals(expected,actual);
41
+
42
+    }
43
+
44
+    @org.junit.Test
45
+    public void getEmailAddress() {
46
+        String expected = "shiv@temple.edu";
47
+        String actual = p.getEmailAddress();
48
+        assertEquals(expected,actual);
49
+    }
50
+
51
+    @org.junit.Test
52
+    public void printPerson() {
53
+        String expected = "shiva shiv@temple.edu";
54
+        String actual = p.getName() + " " + p.getEmailAddress();
55
+        assertEquals(expected,actual);
56
+
57
+    }
58
+
59
+    @Test
60
+    public void printPersons() {
61
+       Person p1 = new Person("shiv", Person.Sex.MALE, bday, "shiv@temple.edu");
62
+       Person P2 = new Person("bob", Person.Sex.MALE, bday, "bob@temple.edu");
63
+       list.add(p1);
64
+       list.add(P2);
65
+
66
+    }
67
+}

+ 39
- 0
src/src/Persons.java View File

@@ -0,0 +1,39 @@
1
+import java.util.ArrayList;
2
+import java.util.List;
3
+
4
+public class Persons {
5
+    List<Person> list;
6
+
7
+    public Persons(){
8
+        list = new ArrayList<>();
9
+    }
10
+    public void add(Person p){
11
+        this.list.add(p);
12
+
13
+    }
14
+
15
+    public static void printPersons(List<Person> roster, CheckPerson tester){
16
+        roster.forEach(p -> {
17
+            if(tester.test(p)){
18
+                p.printPerson();
19
+            }});
20
+    }
21
+
22
+    CheckPerson age = p -> (18 <= p.getAge() && 60 > p.getAge());
23
+
24
+
25
+
26
+    class personAnon{
27
+
28
+        public void printPersonsOlderThan(List<Person> roster, int age) {
29
+            for (Person p : roster) {
30
+                if (p.getAge() >= age) {
31
+                    p.printPerson();
32
+                }
33
+            }
34
+        }
35
+
36
+    }
37
+
38
+
39
+}

+ 30
- 0
src/src/PersonsTest.java View File

@@ -0,0 +1,30 @@
1
+import org.junit.Assert;
2
+import org.junit.Test;
3
+
4
+import java.time.LocalDate;
5
+
6
+import static org.junit.Assert.*;
7
+
8
+public class PersonsTest {
9
+
10
+
11
+    LocalDate bday = LocalDate.of(1945,8,8);
12
+    Person p = new Person("shiva", Person.Sex.MALE, bday, "shiv@temple.edu");
13
+    Persons ps = new Persons();
14
+    @Test
15
+    public void printPersons() {
16
+        assertTrue(ps.age.test(p));
17
+
18
+    }
19
+
20
+    @Test
21
+    public void lambda(){
22
+        Person b = new Person("shiva");
23
+        b.setGender(Person.Sex.MALE);
24
+        ps.add(b);
25
+        assertTrue(ps.list.contains(b));
26
+
27
+
28
+    }
29
+
30
+}