This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| function generateReadReport(readList, recommendList) { | |
| return renderPlainText(readList, recommendList); | |
| } | |
| function renderPlainText(readList, recommendList) { | |
| let report = `name: ${readList.name}\n`; | |
| report += '-----\n'; | |
| for (let readBook of readList.books) { | |
| if (readBook.times >= 1) { | |
| report += ` - ${readBook.name}: ${point(readBook)} point\n`; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| @@ -12,9 +12,6 @@ function generateReadedReport(readedList, recommendList) { | |
| function total() { | |
| - let totalPoint = 0; | |
| - for (let readedBook of readedList.books) { | |
| - totalPoint += point(readedBook); | |
| - } | |
| - return totalPoint; | |
| + return readedList.books | |
| + .reduce((total, book) => total + point(book), 0); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| const generateReadedReport = require('./generateReadedReport'); | |
| test('読書レポーター', () => { | |
| const recommendList = [ | |
| {asin: '0321146530' }, // Test Driven Development | |
| {asin: '0596802293' }, // The Art of Readable Code | |
| {asin: 'B005OYHF0A' }, // Working Effectively with Legacy Code | |
| {asin: 'B075LRM681' }, // Clean Architecture | |
| {asin: 'B07B9F83WM' }, // Accelerate | |
| {asin: 'B07LCM8RG2' }, // Refactoring |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| function generateReadedReport(readedList, recommendList) { | |
| let report = `name: ${readedList.name}\n`; | |
| report += '-----\n'; | |
| for (let readedBook of readedList.books) { | |
| if (readedBook.times >= 1) { | |
| report += ` - ${readedBook.name}: ${point(readedBook)} point\n`; | |
| } | |
| } | |
| report += '-----\n'; | |
| report += `total: ${total()} point`; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| function generateReadedReport(readedList, recommendList) { | |
| let totalPoint = 0; | |
| let report = `name: ${readedList.name}\n`; | |
| report += '-----\n'; | |
| for (let readedBook of readedList.books) { | |
| let currentPoint = 0; | |
| if (readedBook.times === 0) { | |
| currentPoint = 0; | |
| } else if (!recommendList.map(recommend => recommend.asin).includes(readedBook.asin)) { |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| @@ -3,5 +3,2 @@ function generateReadedReport(readedList, recommendList) { | |
| report += '-----\n'; | |
| - | |
| - let totalPoint = total(); | |
| - | |
| for (let readedBook of readedList.books) { | |
| @@ -11,5 +8,4 @@ function generateReadedReport(readedList, recommendList) { | |
| } | |
| - | |
| report += '-----\n'; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| @@ -3,8 +3,5 @@ function generateReadedReport(readedList, recommendList) { | |
| report += '-----\n'; | |
| - let totalPoint = 0; | |
| - for (let readedBook of readedList.books) { | |
| - totalPoint += point(readedBook); | |
| - } | |
| + let totalPoint = total(); | |
| for (let readedBook of readedList.books) { |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| @@ -1,8 +1,8 @@ | |
| function generateReadedReport(readedList, recommendList) { | |
| - let totalPoint = 0; | |
| let report = `name: ${readedList.name}\n`; | |
| report += '-----\n'; | |
| + let totalPoint = 0; | |
| for (let readedBook of readedList.books) { | |
| totalPoint += point(readedBook); | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| @@ -4,10 +4,12 @@ function generateReadedReport(readedList, recommendList) { | |
| report += '-----\n'; | |
| + for (let readedBook of readedList.books) { | |
| + totalPoint += point(readedBook); | |
| + } | |
| + | |
| for (let readedBook of readedList.books) { | |
| if (readedBook.times >= 1) { | |
| report += ` - ${readedBook.name}: ${point(readedBook)} point\n`; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| @@ -7,2 +6,0 @@ function generateReadedReport(readedList, recommendList) { | |
| - let currentPoint = point(readedBook); | |
| - | |
| @@ -10 +8 @@ function generateReadedReport(readedList, recommendList) { | |
| - report += ` - ${readedBook.name}: ${currentPoint} point\n`; | |
| + report += ` - ${readedBook.name}: ${point(readedBook)} point\n`; | |
| @@ -13 +11 @@ function generateReadedReport(readedList, recommendList) { | |
| - totalPoint += currentPoint; | |
| + totalPoint += point(readedBook); |