├── .gitignore ├── Inventory ├── Inventory.App │ ├── .gitignore │ ├── ClientApp │ │ ├── .env │ │ ├── .gitignore │ │ ├── README.md │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── public │ │ │ ├── favicon.ico │ │ │ ├── index.html │ │ │ └── manifest.json │ │ └── src │ │ │ ├── App.js │ │ │ ├── App.test.js │ │ │ ├── components │ │ │ ├── Layout.js │ │ │ ├── NavMenu.css │ │ │ ├── NavMenu.js │ │ │ ├── Product.test.js │ │ │ └── Products.js │ │ │ ├── custom.css │ │ │ ├── index.js │ │ │ └── services.js │ ├── Controllers │ │ └── ProductsController.cs │ ├── Inventory.App.csproj │ ├── Pages │ │ ├── Error.cshtml │ │ ├── Error.cshtml.cs │ │ └── _ViewImports.cshtml │ ├── Program.cs │ ├── Properties │ │ └── launchSettings.json │ ├── ServiceRegistratiion.cs │ ├── Startup.cs │ ├── appsettings.Development.json │ └── appsettings.json ├── Inventory.Cosmos │ ├── CommandModel │ │ └── CosmosProductRepository.cs │ ├── Inventory.Cosmos.csproj │ └── QueryModel │ │ └── CosmosProductReader.cs ├── Inventory.Domain │ ├── CommandModel │ │ └── IProductRepository.cs │ ├── Inventory.Domain.csproj │ ├── Pricing.cs │ ├── Product.cs │ ├── Queries │ │ └── GetAllProducts.cs │ └── QueryModel │ │ ├── GetAllProductQueryProcessor.cs │ │ ├── IProductReader.cs │ │ ├── PricingExtensions.cs │ │ └── ProductView.cs ├── Inventory.UnitTests │ ├── Api │ │ ├── AppFactory.cs │ │ └── Products │ │ │ └── Get_specs.cs │ ├── CommandModel │ │ └── CosmosProductRepository_specs.cs │ ├── Inventory.UnitTests.csproj │ └── QueryModel │ │ └── ProductReaderStub.cs └── Inventory.sln ├── LICENSE ├── NumberGuessing ├── .gitattributes ├── .gitignore ├── console-app-model │ ├── build.gradle │ └── src │ │ ├── main │ │ └── java │ │ │ └── numberguessing │ │ │ ├── PositiveIntegerGenerator.java │ │ │ └── console │ │ │ ├── AppModel.java │ │ │ └── TextOutput.java │ │ └── test │ │ └── java │ │ └── numberguessing │ │ ├── PositiveIntegerGeneratorStub.java │ │ └── console │ │ └── AppModel_specs.java ├── console-app │ ├── build.gradle │ └── src │ │ └── main │ │ └── java │ │ └── numberguessing │ │ ├── RandomGenerator.java │ │ └── console │ │ └── App.java ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle ├── ProductImporter ├── .gitattributes ├── .gitignore ├── build.gradle ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── settings.gradle └── src │ ├── main │ └── java │ │ └── productimporter │ │ ├── ListPriceFilter.java │ │ ├── Pricing.java │ │ ├── Product.java │ │ ├── ProductImporter.java │ │ ├── ProductInventory.java │ │ ├── ProductSynchronizer.java │ │ ├── ProductValidator.java │ │ └── suppliers │ │ ├── starkindustries │ │ ├── StarkIndustriesProduct.java │ │ ├── StarkIndustriesProductImporter.java │ │ ├── StarkIndustriesProductSource.java │ │ └── StarkIndustriesProductTranslator.java │ │ └── wayneenterprises │ │ ├── WayneEnterprisesProduct.java │ │ ├── WayneEnterprisesProductImporter.java │ │ ├── WayneEnterprisesProductSource.java │ │ └── WayneEnterprisesProductTranslator.java │ └── test │ └── java │ └── productimporter │ ├── CompositeArgumentResolver.java │ ├── DomainArgumentResolver.java │ ├── DomainArgumentsProvider.java │ ├── DomainArgumentsSource.java │ ├── ListPriceFilter_specs.java │ ├── ProductArgumentResolver.java │ ├── ProductInventorySpy.java │ ├── ProductSynchronizer_specs.java │ └── suppliers │ ├── starkindustries │ ├── StarkIndustriesProductArgumentResolver.java │ ├── StarkIndustriesProductImporter_specs.java │ └── StarkIndustriesProductTranslator_specs.java │ └── wayneenterprises │ ├── WayneEnterprisesProductArgumentResolver.java │ ├── WayneEnterprisesProductImporter_specs.java │ └── WayneEnterprisesProductSourceStub.java ├── README.md ├── Variance ├── Program.cs └── Variance.csproj ├── comment-list ├── .gitignore ├── package-lock.json ├── package.json ├── public │ ├── favicon.ico │ ├── index.html │ ├── logo192.png │ ├── logo512.png │ ├── manifest.json │ └── robots.txt └── src │ ├── App.js │ ├── Comment.js │ ├── CommentList.js │ ├── Form.js │ ├── commentComposerFactory.js │ ├── content-refiners │ ├── compactWhitespaces.js │ ├── compositeContentRefinerFactory.js │ ├── maskBannedWords.js │ └── trimWhitespaces.js │ └── index.js └── text-refiner ├── index.js ├── index.test.js ├── package-lock.json └── package.json /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/.gitignore -------------------------------------------------------------------------------- /Inventory/Inventory.App/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/.gitignore -------------------------------------------------------------------------------- /Inventory/Inventory.App/ClientApp/.env: -------------------------------------------------------------------------------- 1 | BROWSER=none 2 | -------------------------------------------------------------------------------- /Inventory/Inventory.App/ClientApp/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/ClientApp/.gitignore -------------------------------------------------------------------------------- /Inventory/Inventory.App/ClientApp/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/ClientApp/README.md -------------------------------------------------------------------------------- /Inventory/Inventory.App/ClientApp/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/ClientApp/package-lock.json -------------------------------------------------------------------------------- /Inventory/Inventory.App/ClientApp/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/ClientApp/package.json -------------------------------------------------------------------------------- /Inventory/Inventory.App/ClientApp/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/ClientApp/public/favicon.ico -------------------------------------------------------------------------------- /Inventory/Inventory.App/ClientApp/public/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/ClientApp/public/index.html -------------------------------------------------------------------------------- /Inventory/Inventory.App/ClientApp/public/manifest.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/ClientApp/public/manifest.json -------------------------------------------------------------------------------- /Inventory/Inventory.App/ClientApp/src/App.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/ClientApp/src/App.js -------------------------------------------------------------------------------- /Inventory/Inventory.App/ClientApp/src/App.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/ClientApp/src/App.test.js -------------------------------------------------------------------------------- /Inventory/Inventory.App/ClientApp/src/components/Layout.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/ClientApp/src/components/Layout.js -------------------------------------------------------------------------------- /Inventory/Inventory.App/ClientApp/src/components/NavMenu.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/ClientApp/src/components/NavMenu.css -------------------------------------------------------------------------------- /Inventory/Inventory.App/ClientApp/src/components/NavMenu.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/ClientApp/src/components/NavMenu.js -------------------------------------------------------------------------------- /Inventory/Inventory.App/ClientApp/src/components/Product.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/ClientApp/src/components/Product.test.js -------------------------------------------------------------------------------- /Inventory/Inventory.App/ClientApp/src/components/Products.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/ClientApp/src/components/Products.js -------------------------------------------------------------------------------- /Inventory/Inventory.App/ClientApp/src/custom.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/ClientApp/src/custom.css -------------------------------------------------------------------------------- /Inventory/Inventory.App/ClientApp/src/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/ClientApp/src/index.js -------------------------------------------------------------------------------- /Inventory/Inventory.App/ClientApp/src/services.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/ClientApp/src/services.js -------------------------------------------------------------------------------- /Inventory/Inventory.App/Controllers/ProductsController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/Controllers/ProductsController.cs -------------------------------------------------------------------------------- /Inventory/Inventory.App/Inventory.App.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/Inventory.App.csproj -------------------------------------------------------------------------------- /Inventory/Inventory.App/Pages/Error.cshtml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/Pages/Error.cshtml -------------------------------------------------------------------------------- /Inventory/Inventory.App/Pages/Error.cshtml.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/Pages/Error.cshtml.cs -------------------------------------------------------------------------------- /Inventory/Inventory.App/Pages/_ViewImports.cshtml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/Pages/_ViewImports.cshtml -------------------------------------------------------------------------------- /Inventory/Inventory.App/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/Program.cs -------------------------------------------------------------------------------- /Inventory/Inventory.App/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/Properties/launchSettings.json -------------------------------------------------------------------------------- /Inventory/Inventory.App/ServiceRegistratiion.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/ServiceRegistratiion.cs -------------------------------------------------------------------------------- /Inventory/Inventory.App/Startup.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/Startup.cs -------------------------------------------------------------------------------- /Inventory/Inventory.App/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/appsettings.Development.json -------------------------------------------------------------------------------- /Inventory/Inventory.App/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.App/appsettings.json -------------------------------------------------------------------------------- /Inventory/Inventory.Cosmos/CommandModel/CosmosProductRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.Cosmos/CommandModel/CosmosProductRepository.cs -------------------------------------------------------------------------------- /Inventory/Inventory.Cosmos/Inventory.Cosmos.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.Cosmos/Inventory.Cosmos.csproj -------------------------------------------------------------------------------- /Inventory/Inventory.Cosmos/QueryModel/CosmosProductReader.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.Cosmos/QueryModel/CosmosProductReader.cs -------------------------------------------------------------------------------- /Inventory/Inventory.Domain/CommandModel/IProductRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.Domain/CommandModel/IProductRepository.cs -------------------------------------------------------------------------------- /Inventory/Inventory.Domain/Inventory.Domain.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.Domain/Inventory.Domain.csproj -------------------------------------------------------------------------------- /Inventory/Inventory.Domain/Pricing.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.Domain/Pricing.cs -------------------------------------------------------------------------------- /Inventory/Inventory.Domain/Product.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.Domain/Product.cs -------------------------------------------------------------------------------- /Inventory/Inventory.Domain/Queries/GetAllProducts.cs: -------------------------------------------------------------------------------- 1 | namespace Inventory.Queries 2 | { 3 | public sealed record GetAllProducts(); 4 | } 5 | -------------------------------------------------------------------------------- /Inventory/Inventory.Domain/QueryModel/GetAllProductQueryProcessor.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.Domain/QueryModel/GetAllProductQueryProcessor.cs -------------------------------------------------------------------------------- /Inventory/Inventory.Domain/QueryModel/IProductReader.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.Domain/QueryModel/IProductReader.cs -------------------------------------------------------------------------------- /Inventory/Inventory.Domain/QueryModel/PricingExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.Domain/QueryModel/PricingExtensions.cs -------------------------------------------------------------------------------- /Inventory/Inventory.Domain/QueryModel/ProductView.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.Domain/QueryModel/ProductView.cs -------------------------------------------------------------------------------- /Inventory/Inventory.UnitTests/Api/AppFactory.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.UnitTests/Api/AppFactory.cs -------------------------------------------------------------------------------- /Inventory/Inventory.UnitTests/Api/Products/Get_specs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.UnitTests/Api/Products/Get_specs.cs -------------------------------------------------------------------------------- /Inventory/Inventory.UnitTests/CommandModel/CosmosProductRepository_specs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.UnitTests/CommandModel/CosmosProductRepository_specs.cs -------------------------------------------------------------------------------- /Inventory/Inventory.UnitTests/Inventory.UnitTests.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.UnitTests/Inventory.UnitTests.csproj -------------------------------------------------------------------------------- /Inventory/Inventory.UnitTests/QueryModel/ProductReaderStub.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.UnitTests/QueryModel/ProductReaderStub.cs -------------------------------------------------------------------------------- /Inventory/Inventory.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Inventory/Inventory.sln -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/LICENSE -------------------------------------------------------------------------------- /NumberGuessing/.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/NumberGuessing/.gitattributes -------------------------------------------------------------------------------- /NumberGuessing/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/NumberGuessing/.gitignore -------------------------------------------------------------------------------- /NumberGuessing/console-app-model/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/NumberGuessing/console-app-model/build.gradle -------------------------------------------------------------------------------- /NumberGuessing/console-app-model/src/main/java/numberguessing/PositiveIntegerGenerator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/NumberGuessing/console-app-model/src/main/java/numberguessing/PositiveIntegerGenerator.java -------------------------------------------------------------------------------- /NumberGuessing/console-app-model/src/main/java/numberguessing/console/AppModel.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/NumberGuessing/console-app-model/src/main/java/numberguessing/console/AppModel.java -------------------------------------------------------------------------------- /NumberGuessing/console-app-model/src/main/java/numberguessing/console/TextOutput.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/NumberGuessing/console-app-model/src/main/java/numberguessing/console/TextOutput.java -------------------------------------------------------------------------------- /NumberGuessing/console-app-model/src/test/java/numberguessing/PositiveIntegerGeneratorStub.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/NumberGuessing/console-app-model/src/test/java/numberguessing/PositiveIntegerGeneratorStub.java -------------------------------------------------------------------------------- /NumberGuessing/console-app-model/src/test/java/numberguessing/console/AppModel_specs.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/NumberGuessing/console-app-model/src/test/java/numberguessing/console/AppModel_specs.java -------------------------------------------------------------------------------- /NumberGuessing/console-app/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/NumberGuessing/console-app/build.gradle -------------------------------------------------------------------------------- /NumberGuessing/console-app/src/main/java/numberguessing/RandomGenerator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/NumberGuessing/console-app/src/main/java/numberguessing/RandomGenerator.java -------------------------------------------------------------------------------- /NumberGuessing/console-app/src/main/java/numberguessing/console/App.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/NumberGuessing/console-app/src/main/java/numberguessing/console/App.java -------------------------------------------------------------------------------- /NumberGuessing/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/NumberGuessing/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /NumberGuessing/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/NumberGuessing/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /NumberGuessing/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/NumberGuessing/gradlew -------------------------------------------------------------------------------- /NumberGuessing/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/NumberGuessing/gradlew.bat -------------------------------------------------------------------------------- /NumberGuessing/settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/NumberGuessing/settings.gradle -------------------------------------------------------------------------------- /ProductImporter/.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/.gitattributes -------------------------------------------------------------------------------- /ProductImporter/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/.gitignore -------------------------------------------------------------------------------- /ProductImporter/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/build.gradle -------------------------------------------------------------------------------- /ProductImporter/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /ProductImporter/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /ProductImporter/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/gradlew -------------------------------------------------------------------------------- /ProductImporter/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/gradlew.bat -------------------------------------------------------------------------------- /ProductImporter/settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/settings.gradle -------------------------------------------------------------------------------- /ProductImporter/src/main/java/productimporter/ListPriceFilter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/main/java/productimporter/ListPriceFilter.java -------------------------------------------------------------------------------- /ProductImporter/src/main/java/productimporter/Pricing.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/main/java/productimporter/Pricing.java -------------------------------------------------------------------------------- /ProductImporter/src/main/java/productimporter/Product.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/main/java/productimporter/Product.java -------------------------------------------------------------------------------- /ProductImporter/src/main/java/productimporter/ProductImporter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/main/java/productimporter/ProductImporter.java -------------------------------------------------------------------------------- /ProductImporter/src/main/java/productimporter/ProductInventory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/main/java/productimporter/ProductInventory.java -------------------------------------------------------------------------------- /ProductImporter/src/main/java/productimporter/ProductSynchronizer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/main/java/productimporter/ProductSynchronizer.java -------------------------------------------------------------------------------- /ProductImporter/src/main/java/productimporter/ProductValidator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/main/java/productimporter/ProductValidator.java -------------------------------------------------------------------------------- /ProductImporter/src/main/java/productimporter/suppliers/starkindustries/StarkIndustriesProduct.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/main/java/productimporter/suppliers/starkindustries/StarkIndustriesProduct.java -------------------------------------------------------------------------------- /ProductImporter/src/main/java/productimporter/suppliers/starkindustries/StarkIndustriesProductImporter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/main/java/productimporter/suppliers/starkindustries/StarkIndustriesProductImporter.java -------------------------------------------------------------------------------- /ProductImporter/src/main/java/productimporter/suppliers/starkindustries/StarkIndustriesProductSource.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/main/java/productimporter/suppliers/starkindustries/StarkIndustriesProductSource.java -------------------------------------------------------------------------------- /ProductImporter/src/main/java/productimporter/suppliers/starkindustries/StarkIndustriesProductTranslator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/main/java/productimporter/suppliers/starkindustries/StarkIndustriesProductTranslator.java -------------------------------------------------------------------------------- /ProductImporter/src/main/java/productimporter/suppliers/wayneenterprises/WayneEnterprisesProduct.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/main/java/productimporter/suppliers/wayneenterprises/WayneEnterprisesProduct.java -------------------------------------------------------------------------------- /ProductImporter/src/main/java/productimporter/suppliers/wayneenterprises/WayneEnterprisesProductImporter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/main/java/productimporter/suppliers/wayneenterprises/WayneEnterprisesProductImporter.java -------------------------------------------------------------------------------- /ProductImporter/src/main/java/productimporter/suppliers/wayneenterprises/WayneEnterprisesProductSource.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/main/java/productimporter/suppliers/wayneenterprises/WayneEnterprisesProductSource.java -------------------------------------------------------------------------------- /ProductImporter/src/main/java/productimporter/suppliers/wayneenterprises/WayneEnterprisesProductTranslator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/main/java/productimporter/suppliers/wayneenterprises/WayneEnterprisesProductTranslator.java -------------------------------------------------------------------------------- /ProductImporter/src/test/java/productimporter/CompositeArgumentResolver.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/test/java/productimporter/CompositeArgumentResolver.java -------------------------------------------------------------------------------- /ProductImporter/src/test/java/productimporter/DomainArgumentResolver.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/test/java/productimporter/DomainArgumentResolver.java -------------------------------------------------------------------------------- /ProductImporter/src/test/java/productimporter/DomainArgumentsProvider.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/test/java/productimporter/DomainArgumentsProvider.java -------------------------------------------------------------------------------- /ProductImporter/src/test/java/productimporter/DomainArgumentsSource.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/test/java/productimporter/DomainArgumentsSource.java -------------------------------------------------------------------------------- /ProductImporter/src/test/java/productimporter/ListPriceFilter_specs.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/test/java/productimporter/ListPriceFilter_specs.java -------------------------------------------------------------------------------- /ProductImporter/src/test/java/productimporter/ProductArgumentResolver.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/test/java/productimporter/ProductArgumentResolver.java -------------------------------------------------------------------------------- /ProductImporter/src/test/java/productimporter/ProductInventorySpy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/test/java/productimporter/ProductInventorySpy.java -------------------------------------------------------------------------------- /ProductImporter/src/test/java/productimporter/ProductSynchronizer_specs.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/test/java/productimporter/ProductSynchronizer_specs.java -------------------------------------------------------------------------------- /ProductImporter/src/test/java/productimporter/suppliers/starkindustries/StarkIndustriesProductArgumentResolver.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/test/java/productimporter/suppliers/starkindustries/StarkIndustriesProductArgumentResolver.java -------------------------------------------------------------------------------- /ProductImporter/src/test/java/productimporter/suppliers/starkindustries/StarkIndustriesProductImporter_specs.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/test/java/productimporter/suppliers/starkindustries/StarkIndustriesProductImporter_specs.java -------------------------------------------------------------------------------- /ProductImporter/src/test/java/productimporter/suppliers/starkindustries/StarkIndustriesProductTranslator_specs.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/test/java/productimporter/suppliers/starkindustries/StarkIndustriesProductTranslator_specs.java -------------------------------------------------------------------------------- /ProductImporter/src/test/java/productimporter/suppliers/wayneenterprises/WayneEnterprisesProductArgumentResolver.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/test/java/productimporter/suppliers/wayneenterprises/WayneEnterprisesProductArgumentResolver.java -------------------------------------------------------------------------------- /ProductImporter/src/test/java/productimporter/suppliers/wayneenterprises/WayneEnterprisesProductImporter_specs.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/test/java/productimporter/suppliers/wayneenterprises/WayneEnterprisesProductImporter_specs.java -------------------------------------------------------------------------------- /ProductImporter/src/test/java/productimporter/suppliers/wayneenterprises/WayneEnterprisesProductSourceStub.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/ProductImporter/src/test/java/productimporter/suppliers/wayneenterprises/WayneEnterprisesProductSourceStub.java -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/README.md -------------------------------------------------------------------------------- /Variance/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Variance/Program.cs -------------------------------------------------------------------------------- /Variance/Variance.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/Variance/Variance.csproj -------------------------------------------------------------------------------- /comment-list/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/comment-list/.gitignore -------------------------------------------------------------------------------- /comment-list/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/comment-list/package-lock.json -------------------------------------------------------------------------------- /comment-list/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/comment-list/package.json -------------------------------------------------------------------------------- /comment-list/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/comment-list/public/favicon.ico -------------------------------------------------------------------------------- /comment-list/public/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/comment-list/public/index.html -------------------------------------------------------------------------------- /comment-list/public/logo192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/comment-list/public/logo192.png -------------------------------------------------------------------------------- /comment-list/public/logo512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/comment-list/public/logo512.png -------------------------------------------------------------------------------- /comment-list/public/manifest.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/comment-list/public/manifest.json -------------------------------------------------------------------------------- /comment-list/public/robots.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/comment-list/public/robots.txt -------------------------------------------------------------------------------- /comment-list/src/App.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/comment-list/src/App.js -------------------------------------------------------------------------------- /comment-list/src/Comment.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/comment-list/src/Comment.js -------------------------------------------------------------------------------- /comment-list/src/CommentList.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/comment-list/src/CommentList.js -------------------------------------------------------------------------------- /comment-list/src/Form.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/comment-list/src/Form.js -------------------------------------------------------------------------------- /comment-list/src/commentComposerFactory.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/comment-list/src/commentComposerFactory.js -------------------------------------------------------------------------------- /comment-list/src/content-refiners/compactWhitespaces.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/comment-list/src/content-refiners/compactWhitespaces.js -------------------------------------------------------------------------------- /comment-list/src/content-refiners/compositeContentRefinerFactory.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/comment-list/src/content-refiners/compositeContentRefinerFactory.js -------------------------------------------------------------------------------- /comment-list/src/content-refiners/maskBannedWords.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/comment-list/src/content-refiners/maskBannedWords.js -------------------------------------------------------------------------------- /comment-list/src/content-refiners/trimWhitespaces.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/comment-list/src/content-refiners/trimWhitespaces.js -------------------------------------------------------------------------------- /comment-list/src/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/comment-list/src/index.js -------------------------------------------------------------------------------- /text-refiner/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/text-refiner/index.js -------------------------------------------------------------------------------- /text-refiner/index.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/text-refiner/index.test.js -------------------------------------------------------------------------------- /text-refiner/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/text-refiner/package-lock.json -------------------------------------------------------------------------------- /text-refiner/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gyuwon/TDDHandsOn/HEAD/text-refiner/package.json --------------------------------------------------------------------------------