From 0653d1a6afeb458d5af089c387acb50d7b4ffc2f Mon Sep 17 00:00:00 2001 From: Nikita Vasilev Date: Tue, 17 Oct 2023 09:43:24 +0300 Subject: [PATCH 1/5] Generate project structure --- .github/ISSUE_TEMPLATE/bug_report.md | 41 ++++++ .github/ISSUE_TEMPLATE/feature_request.md | 11 ++ .../PULL_REQUEST_TEMPLATE/bug_template.yml | 9 ++ .../feature_template.yml | 12 ++ .github/workflows/ci.yml | 78 ++++++++++ .github/workflows/danger.yml | 31 ++++ .gitignore | 95 +----------- .swiftformat | 64 +++++++++ .swiftlint.yml | 135 ++++++++++++++++++ CHANGELOG.md | 2 + Dangerfile | 1 + Gemfile | 3 + Makefile | 19 +++ Mintfile | 2 + Package.swift | 31 ++++ README.md | 57 +++++++- Sources/Log/Classes/Log.swift | 6 + Tests/LogTests/LogTests.swift | 8 ++ hooks/pre-commit | 38 +++++ 19 files changed, 554 insertions(+), 89 deletions(-) create mode 100644 .github/ISSUE_TEMPLATE/bug_report.md create mode 100644 .github/ISSUE_TEMPLATE/feature_request.md create mode 100644 .github/PULL_REQUEST_TEMPLATE/bug_template.yml create mode 100644 .github/PULL_REQUEST_TEMPLATE/feature_template.yml create mode 100644 .github/workflows/ci.yml create mode 100644 .github/workflows/danger.yml create mode 100644 .swiftformat create mode 100644 .swiftlint.yml create mode 100644 CHANGELOG.md create mode 100644 Dangerfile create mode 100644 Gemfile create mode 100644 Makefile create mode 100644 Mintfile create mode 100644 Package.swift create mode 100644 Sources/Log/Classes/Log.swift create mode 100644 Tests/LogTests/LogTests.swift create mode 100755 hooks/pre-commit diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 0000000..8dc7e75 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,41 @@ +--- +name: "🐛 Bug Report" +about: Report a reproducible bug or regression. +title: 'Bug: ' +labels: 'bug' + +--- + + + +Application version: + +## Steps To Reproduce + +1. +2. + + + +Link to code example: + + + +## The current behavior + + +## The expected behavior \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 0000000..6b2eb8c --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,11 @@ +--- +name: 🛠 Feature request +about: If you have a feature request for the log, file it here. +labels: 'type: enhancement' +--- + +**Feature description** +Clearly and concisely describe the feature. + +**Describe the solution you'd like** +A clear and concise description of what you want to happen. \ No newline at end of file diff --git a/.github/PULL_REQUEST_TEMPLATE/bug_template.yml b/.github/PULL_REQUEST_TEMPLATE/bug_template.yml new file mode 100644 index 0000000..7d6a149 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE/bug_template.yml @@ -0,0 +1,9 @@ +## Bug description +Clearly and concisely describe the problem. + +## Solution description +Describe your code changes in detail for reviewers. Explain the technical solution you have provided and how it fixes the issue case. + +## Covered unit test cases +- [x] yes +- [x] no \ No newline at end of file diff --git a/.github/PULL_REQUEST_TEMPLATE/feature_template.yml b/.github/PULL_REQUEST_TEMPLATE/feature_template.yml new file mode 100644 index 0000000..ab3978b --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE/feature_template.yml @@ -0,0 +1,12 @@ +## Feature description +Clearly and concisely describe the feature. + +## Solution description +Describe your code changes in detail for reviewers. + +## Areas affected and ensured +List out the areas affected by your code changes. + +## Covered unit test cases +- [x] yes +- [x] no \ No newline at end of file diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..86065a7 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,78 @@ +name: "log" + +on: + push: + branches: + - main + - dev + pull_request: + paths: + - '.swiftlint.yml' + - ".github/workflows/**" + - "Package.swift" + - "Source/**" + - "Tests/**" + +concurrency: + group: ci + cancel-in-progress: true + +jobs: + SwiftLint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: GitHub Action for SwiftLint + uses: norio-nomura/action-swiftlint@3.2.1 + with: + args: --strict + env: + + DIFF_BASE: ${{ github.base_ref }} + + Latest: + name: Test Latest (iOS, macOS, tvOS, watchOS) + runs-on: macOS-12 + env: + DEVELOPER_DIR: "/Applications/Xcode_14.1.app/Contents/Developer" + timeout-minutes: 10 + strategy: + fail-fast: false + matrix: + include: + + - destination: "OS=16.1,name=iPhone 14 Pro" + name: "iOS" + scheme: "Log" + sdk: iphonesimulator + + + - destination: "OS=16.1,name=Apple TV" + name: "tvOS" + scheme: "Log" + sdk: appletvsimulator + + + - destination: "OS=9.1,name=Apple Watch Series 8 (45mm)" + name: "watchOS" + scheme: "Log" + sdk: watchsimulator + + + - destination: "platform=macOS" + name: "macOS" + scheme: "Log" + sdk: macosx + + steps: + + - uses: actions/checkout@v3 + - name: ${{ matrix.name }} + run: xcodebuild test -scheme "${{ matrix.scheme }}" -destination "${{ matrix.destination }}" clean -enableCodeCoverage YES -resultBundlePath "./${{ matrix.sdk }}.xcresult" | xcpretty -r junit + - name: Upload coverage reports to Codecov + uses: codecov/codecov-action@v3.1.0 + with: + token: ${{ secrets.CODECOV_TOKEN }} + xcode: true + xcode_archive_path: "./${{ matrix.sdk }}.xcresult" + \ No newline at end of file diff --git a/.github/workflows/danger.yml b/.github/workflows/danger.yml new file mode 100644 index 0000000..e6c6e9a --- /dev/null +++ b/.github/workflows/danger.yml @@ -0,0 +1,31 @@ +name: Danger + +on: + pull_request: + types: [synchronize, opened, reopened, labeled, unlabeled, edited] + +env: + LC_CTYPE: en_US.UTF-8 + LANG: en_US.UTF-8 + +jobs: + run-danger: + runs-on: ubuntu-latest + steps: + - name: ruby setup + uses: ruby/setup-ruby@v1 + with: + ruby-version: 2.7 + bundler-cache: true + - name: Checkout code + uses: actions/checkout@v2 + - name: Setup gems + run: | + gem install bundler + bundle install --clean --path vendor/bundle + - name: danger + env: + + DANGER_GITHUB_API_TOKEN: ${{ secrets.DANGER_GITHUB_API_TOKEN }} + + run: bundle exec danger --verbose \ No newline at end of file diff --git a/.gitignore b/.gitignore index 330d167..3b29812 100644 --- a/.gitignore +++ b/.gitignore @@ -1,90 +1,9 @@ -# Xcode -# -# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore - -## User settings +.DS_Store +/.build +/Packages +/*.xcodeproj xcuserdata/ - -## compatibility with Xcode 8 and earlier (ignoring not required starting Xcode 9) -*.xcscmblueprint -*.xccheckout - -## compatibility with Xcode 3 and earlier (ignoring not required starting Xcode 4) -build/ DerivedData/ -*.moved-aside -*.pbxuser -!default.pbxuser -*.mode1v3 -!default.mode1v3 -*.mode2v3 -!default.mode2v3 -*.perspectivev3 -!default.perspectivev3 - -## Obj-C/Swift specific -*.hmap - -## App packaging -*.ipa -*.dSYM.zip -*.dSYM - -## Playgrounds -timeline.xctimeline -playground.xcworkspace - -# Swift Package Manager -# -# Add this line if you want to avoid checking in source code from Swift Package Manager dependencies. -# Packages/ -# Package.pins -# Package.resolved -# *.xcodeproj -# -# Xcode automatically generates this directory with a .xcworkspacedata file and xcuserdata -# hence it is not needed unless you have added a package configuration file to your project -# .swiftpm - -.build/ - -# CocoaPods -# -# We recommend against adding the Pods directory to your .gitignore. However -# you should judge for yourself, the pros and cons are mentioned at: -# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control -# -# Pods/ -# -# Add this line if you want to avoid checking in source code from the Xcode workspace -# *.xcworkspace - -# Carthage -# -# Add this line if you want to avoid checking in source code from Carthage dependencies. -# Carthage/Checkouts - -Carthage/Build/ - -# Accio dependency management -Dependencies/ -.accio/ - -# fastlane -# -# It is recommended to not store the screenshots in the git repo. -# Instead, use fastlane to re-generate the screenshots whenever they are needed. -# For more information about the recommended setup visit: -# https://docs.fastlane.tools/best-practices/source-control/#source-control - -fastlane/report.xml -fastlane/Preview.html -fastlane/screenshots/**/*.png -fastlane/test_output - -# Code Injection -# -# After new code Injection tools there's a generated folder /iOSInjectionProject -# https://github.com/johnno1962/injectionforxcode - -iOSInjectionProject/ +.swiftpm/config/registries.json +.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata +.netrc diff --git a/.swiftformat b/.swiftformat new file mode 100644 index 0000000..b21a816 --- /dev/null +++ b/.swiftformat @@ -0,0 +1,64 @@ +# Stream rules + +--swiftversion 5.3 + +# Use 'swiftformat --options' to list all of the possible options + +--header "\nLog\nCopyright © {created.year} Space Code. All rights reserved.\n//" + +--enable blankLinesBetweenScopes +--enable blankLinesAtStartOfScope +--enable blankLinesAtEndOfScope +--enable blankLinesAroundMark +--enable anyObjectProtocol +--enable consecutiveBlankLines +--enable consecutiveSpaces +--enable duplicateImports +--enable elseOnSameLine +--enable emptyBraces +--enable initCoderUnavailable +--enable leadingDelimiters +--enable numberFormatting +--enable preferKeyPath +--enable redundantBreak +--enable redundantExtensionACL +--enable redundantFileprivate +--enable redundantGet +--enable redundantInit +--enable redundantLet +--enable redundantLetError +--enable redundantNilInit +--enable redundantObjc +--enable redundantParens +--enable redundantPattern +--enable redundantRawValues +--enable redundantReturn +--enable redundantSelf +--enable redundantVoidReturnType +--enable semicolons +--enable sortedImports +--enable sortedSwitchCases +--enable spaceAroundBraces +--enable spaceAroundBrackets +--enable spaceAroundComments +--enable spaceAroundGenerics +--enable spaceAroundOperators +--enable spaceInsideBraces +--enable spaceInsideBrackets +--enable spaceInsideComments +--enable spaceInsideGenerics +--enable spaceInsideParens +--enable strongOutlets +--enable strongifiedSelf +--enable todos +--enable trailingClosures +--enable unusedArguments +--enable void +--enable markTypes +--enable isEmpty + +# format options + +--wraparguments before-first +--wrapcollections before-first +--maxwidth 140 \ No newline at end of file diff --git a/.swiftlint.yml b/.swiftlint.yml new file mode 100644 index 0000000..89efd09 --- /dev/null +++ b/.swiftlint.yml @@ -0,0 +1,135 @@ +excluded: + - Tests + - Package.swift + - .build + +# Rules + +disabled_rules: + - trailing_comma + - todo + - opening_brace + +opt_in_rules: # some rules are only opt-in + - anyobject_protocol + - array_init + - attributes + - closure_body_length + - closure_end_indentation + - closure_spacing + - collection_alignment + - conditional_returns_on_newline + - contains_over_filter_count + - contains_over_filter_is_empty + - contains_over_first_not_nil + - contains_over_range_nil_comparison + - convenience_type + - discouraged_object_literal + - discouraged_optional_boolean + - empty_collection_literal + - empty_count + - empty_string + - empty_xctest_method + - enum_case_associated_values_count + - explicit_init + - fallthrough + - fatal_error_message + - file_name + - file_types_order + - first_where + - flatmap_over_map_reduce + - force_unwrapping + - ibinspectable_in_extension + - identical_operands + - implicit_return + - inert_defer + - joined_default_parameter + - last_where + - legacy_multiple + - legacy_random + - literal_expression_end_indentation + - lower_acl_than_parent + - multiline_arguments + - multiline_function_chains + - multiline_literal_brackets + - multiline_parameters + - multiline_parameters_brackets + - no_space_in_method_call + - operator_usage_whitespace + - optional_enum_case_matching + - orphaned_doc_comment + - overridden_super_call + - override_in_extension + - pattern_matching_keywords + - prefer_self_type_over_type_of_self + - prefer_zero_over_explicit_init + - prefixed_toplevel_constant + - private_action + - prohibited_super_call + - quick_discouraged_call + - quick_discouraged_focused_test + - quick_discouraged_pending_test + - reduce_into + - redundant_nil_coalescing + - redundant_objc_attribute + - redundant_type_annotation + - required_enum_case + - single_test_class + - sorted_first_last + - sorted_imports + - static_operator + - strict_fileprivate + - switch_case_on_newline + - toggle_bool + - unavailable_function + - unneeded_parentheses_in_closure_argument + - unowned_variable_capture + - untyped_error_in_catch + - vertical_parameter_alignment_on_call + - vertical_whitespace_closing_braces + - vertical_whitespace_opening_braces + - xct_specific_matcher + - yoda_condition + +force_cast: warning +force_try: warning + +identifier_name: + excluded: + - id + - URL + +analyzer_rules: + - unused_import + - unused_declaration + +line_length: + warning: 130 + error: 200 + +type_body_length: + warning: 300 + error: 400 + +file_length: + warning: 500 + error: 1200 + +function_body_length: + warning: 30 + error: 50 + +large_tuple: + error: 3 + +nesting: + type_level: + warning: 2 + statement_level: + warning: 10 + + +type_name: + max_length: + warning: 40 + error: 50 \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..2e9885a --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,2 @@ +# Change Log +All notable changes to this project will be documented in this file. \ No newline at end of file diff --git a/Dangerfile b/Dangerfile new file mode 100644 index 0000000..b266982 --- /dev/null +++ b/Dangerfile @@ -0,0 +1 @@ +danger.import_dangerfile(github: 'space-code/dangerfile') \ No newline at end of file diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000..20dff64 --- /dev/null +++ b/Gemfile @@ -0,0 +1,3 @@ +source "https://rubygems.org" + +gem 'danger' \ No newline at end of file diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..856d64b --- /dev/null +++ b/Makefile @@ -0,0 +1,19 @@ +all: bootstrap + +bootstrap: hook + mint bootstrap + +hook: + ln -sf ../../hooks/pre-commit .git/hooks/pre-commit + chmod +x .git/hooks/pre-commit + +mint: + mint bootstrap + +lint: + mint run swiftlint + +fmt: + mint run swiftformat Sources Tests + +.PHONY: all bootstrap hook mint lint fmt \ No newline at end of file diff --git a/Mintfile b/Mintfile new file mode 100644 index 0000000..e2cdefa --- /dev/null +++ b/Mintfile @@ -0,0 +1,2 @@ +nicklockwood/SwiftFormat@0.52.7 +realm/SwiftLint@0.53.0 \ No newline at end of file diff --git a/Package.swift b/Package.swift new file mode 100644 index 0000000..5928dc3 --- /dev/null +++ b/Package.swift @@ -0,0 +1,31 @@ +// swift-tools-version: 5.7 +// The swift-tools-version declares the minimum version of Swift required to build this package. + +import PackageDescription + +let package = Package( + name: "Log", + products: [ + // Products define the executables and libraries a package produces, and make them visible to other packages. + .library( + name: "Log", + targets: ["Log"] + ), + ], + dependencies: [ + // Dependencies declare other packages that this package depends on. + // .package(url: /* package url */, from: "1.0.0"), + ], + targets: [ + // Targets are the basic building blocks of a package. A target can define a module or a test suite. + // Targets can depend on other targets in this package, and on products in packages this package depends on. + .target( + name: "Log", + dependencies: [] + ), + .testTarget( + name: "LogTests", + dependencies: ["Log"] + ), + ] +) diff --git a/README.md b/README.md index a04f6aa..f68f6db 100644 --- a/README.md +++ b/README.md @@ -1 +1,56 @@ -# log \ No newline at end of file +

log

+ +

+License +5.7 +CI + +

+ +## Description +`Log` description. + +- [Usage](#usage) +- [Requirements](#requirements) +- [Installation](#installation) +- [Communication](#communication) +- [Contributing](#contributing) +- [Author](#author) +- [License](#license) + +## Usage + +## Requirements + +## Installation +### Swift Package Manager + +The [Swift Package Manager](https://swift.org/package-manager/) is a tool for automating the distribution of Swift code and is integrated into the `swift` compiler. It is in early development, but `log` does support its use on supported platforms. + +Once you have your Swift package set up, adding `log` as a dependency is as easy as adding it to the `dependencies` value of your `Package.swift`. + +```swift +dependencies: [ + .package(url: "https://github.com/space-code/log.git", .upToNextMajor(from: "1.0.0")) +] +``` + +## Communication +- If you **found a bug**, open an issue. +- If you **have a feature request**, open an issue. +- If you **want to contribute**, submit a pull request. + +## Contributing +Bootstrapping development environment + +``` +make bootstrap +``` + +Please feel free to help out with this project! If you see something that could be made better or want a new feature, open up an issue or send a Pull Request! + +## Author +Nikita Vasilev, nv3212@gmail.com + +## License +log is available under the MIT license. See the LICENSE file for more info. \ No newline at end of file diff --git a/Sources/Log/Classes/Log.swift b/Sources/Log/Classes/Log.swift new file mode 100644 index 0000000..771861f --- /dev/null +++ b/Sources/Log/Classes/Log.swift @@ -0,0 +1,6 @@ +// +// Log +// Copyright © 2023 Space Code. All rights reserved. +// + +final class Log {} diff --git a/Tests/LogTests/LogTests.swift b/Tests/LogTests/LogTests.swift new file mode 100644 index 0000000..285a13b --- /dev/null +++ b/Tests/LogTests/LogTests.swift @@ -0,0 +1,8 @@ +// +// Log +// Copyright © 2023 Space Code. All rights reserved. +// + +import XCTest + +final class LogTests: XCTestCase {} diff --git a/hooks/pre-commit b/hooks/pre-commit new file mode 100755 index 0000000..956fdcb --- /dev/null +++ b/hooks/pre-commit @@ -0,0 +1,38 @@ +#!/bin/bash +git diff --diff-filter=d --staged --name-only | grep -e '\.swift$' | while read line; do + if [[ $line == *"/Generated"* ]]; then + echo "IGNORING GENERATED FILE: " "$line"; + else + mint run swiftformat swiftformat "${line}"; + git add "$line"; + fi +done + +LINT=$(which mint) +if [[ -e "${LINT}" ]]; then + # Export files in SCRIPT_INPUT_FILE_$count to lint against later + count=0 + while IFS= read -r file_path; do + export SCRIPT_INPUT_FILE_$count="$file_path" + count=$((count + 1)) + done < <(git diff --name-only --cached --diff-filter=d | grep ".swift$") + export SCRIPT_INPUT_FILE_COUNT=$count + + if [ "$count" -eq 0 ]; then + echo "No files to lint!" + exit 0 + fi + + echo "Found $count lintable files! Linting now.." + mint run swiftlint --use-script-input-files --strict --config .swiftlint.yml + RESULT=$? # swiftline exit value is number of errors + + if [ $RESULT -eq 0 ]; then + echo "🎉 Well done. No violation." + fi + exit $RESULT +else + echo "⚠️ WARNING: SwiftLint not found" + echo "⚠️ You might want to edit .git/hooks/pre-commit to locate your swiftlint" + exit 0 +fi \ No newline at end of file From ed93533a2dd1a51df29c95120f22d36a73cbcd37 Mon Sep 17 00:00:00 2001 From: Nikita Vasilev Date: Wed, 18 Oct 2023 17:37:43 +0300 Subject: [PATCH 2/5] Implement `log` package --- .github/workflows/ci.yml | 11 -- .github/workflows/danger.yml | 2 - .swiftformat | 6 +- .swiftlint.yml | 1 - .../xcode/xcshareddata/xcschemes/Log.xcscheme | 103 +++++++++++++ CHANGELOG.md | 12 +- Package.swift | 32 ++--- Package@swift-5.7.swift | 24 ++++ README.md | 60 +++++++- Resources/log.png | Bin 0 -> 310649 bytes .../Formatters/Interfaces/ILogFormatter.swift | 16 +++ .../Core/Formatters/PrefixLogFormatter.swift | 36 +++++ .../Formatters/TimestampLogFormatter.swift | 37 +++++ Sources/Log/Classes/Core/Logger/ILogger.swift | 29 ++++ Sources/Log/Classes/Core/Logger/Logger.swift | 70 +++++++++ .../Logger/Strategies/IPrinterStrategy.swift | 19 +++ .../Logger/Strategies/IStyleLogStrategy.swift | 29 ++++ .../Core/Printers/ConsolePrinter.swift | 40 ++++++ .../Core/Printers/Interfaces/IPrinter.swift | 16 +++ .../Log/Classes/Core/Printers/OSPrinter.swift | 76 ++++++++++ .../Writers/ConsoleWriter/ConsoleWriter.swift | 22 +++ .../ConsoleWriter/IConsoleWriter.swift | 14 ++ .../Helpers/Writers/OSWriter/IOSWriter.swift | 19 +++ .../Helpers/Writers/OSWriter/OSWriter.swift | 23 +++ Sources/Log/Classes/Log.swift | 6 - Sources/Log/Classes/Models/LogLevel.swift | 49 +++++++ Tests/LogTests/LogTests.swift | 8 -- Tests/LogTests/Mocks/ConsoleWriterMock.swift | 21 +++ Tests/LogTests/Mocks/LogFormatterMock.swift | 23 +++ Tests/LogTests/Mocks/OSWriterMock.swift | 21 +++ .../LogTests/Mocks/PrinterStrategyMock.swift | 30 ++++ .../UnitTests/ConsolePrinterTests.swift | 53 +++++++ Tests/LogTests/UnitTests/LogTests.swift | 136 ++++++++++++++++++ Tests/LogTests/UnitTests/OSPrinterTests.swift | 104 ++++++++++++++ .../UnitTests/PrefixFormatterTests.swift | 76 ++++++++++ .../TimestampLogFormatterTests.swift | 49 +++++++ 36 files changed, 1219 insertions(+), 54 deletions(-) create mode 100644 .swiftpm/xcode/xcshareddata/xcschemes/Log.xcscheme create mode 100644 Package@swift-5.7.swift create mode 100644 Resources/log.png create mode 100644 Sources/Log/Classes/Core/Formatters/Interfaces/ILogFormatter.swift create mode 100644 Sources/Log/Classes/Core/Formatters/PrefixLogFormatter.swift create mode 100644 Sources/Log/Classes/Core/Formatters/TimestampLogFormatter.swift create mode 100644 Sources/Log/Classes/Core/Logger/ILogger.swift create mode 100644 Sources/Log/Classes/Core/Logger/Logger.swift create mode 100644 Sources/Log/Classes/Core/Logger/Strategies/IPrinterStrategy.swift create mode 100644 Sources/Log/Classes/Core/Logger/Strategies/IStyleLogStrategy.swift create mode 100644 Sources/Log/Classes/Core/Printers/ConsolePrinter.swift create mode 100644 Sources/Log/Classes/Core/Printers/Interfaces/IPrinter.swift create mode 100644 Sources/Log/Classes/Core/Printers/OSPrinter.swift create mode 100644 Sources/Log/Classes/Helpers/Writers/ConsoleWriter/ConsoleWriter.swift create mode 100644 Sources/Log/Classes/Helpers/Writers/ConsoleWriter/IConsoleWriter.swift create mode 100644 Sources/Log/Classes/Helpers/Writers/OSWriter/IOSWriter.swift create mode 100644 Sources/Log/Classes/Helpers/Writers/OSWriter/OSWriter.swift delete mode 100644 Sources/Log/Classes/Log.swift create mode 100644 Sources/Log/Classes/Models/LogLevel.swift delete mode 100644 Tests/LogTests/LogTests.swift create mode 100644 Tests/LogTests/Mocks/ConsoleWriterMock.swift create mode 100644 Tests/LogTests/Mocks/LogFormatterMock.swift create mode 100644 Tests/LogTests/Mocks/OSWriterMock.swift create mode 100644 Tests/LogTests/Mocks/PrinterStrategyMock.swift create mode 100644 Tests/LogTests/UnitTests/ConsolePrinterTests.swift create mode 100644 Tests/LogTests/UnitTests/LogTests.swift create mode 100644 Tests/LogTests/UnitTests/OSPrinterTests.swift create mode 100644 Tests/LogTests/UnitTests/PrefixFormatterTests.swift create mode 100644 Tests/LogTests/UnitTests/TimestampLogFormatterTests.swift diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 86065a7..d544d32 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -27,9 +27,7 @@ jobs: with: args: --strict env: - DIFF_BASE: ${{ github.base_ref }} - Latest: name: Test Latest (iOS, macOS, tvOS, watchOS) runs-on: macOS-12 @@ -40,32 +38,23 @@ jobs: fail-fast: false matrix: include: - - destination: "OS=16.1,name=iPhone 14 Pro" name: "iOS" scheme: "Log" sdk: iphonesimulator - - - destination: "OS=16.1,name=Apple TV" name: "tvOS" scheme: "Log" sdk: appletvsimulator - - - destination: "OS=9.1,name=Apple Watch Series 8 (45mm)" name: "watchOS" scheme: "Log" sdk: watchsimulator - - - destination: "platform=macOS" name: "macOS" scheme: "Log" sdk: macosx - steps: - - uses: actions/checkout@v3 - name: ${{ matrix.name }} run: xcodebuild test -scheme "${{ matrix.scheme }}" -destination "${{ matrix.destination }}" clean -enableCodeCoverage YES -resultBundlePath "./${{ matrix.sdk }}.xcresult" | xcpretty -r junit diff --git a/.github/workflows/danger.yml b/.github/workflows/danger.yml index e6c6e9a..1a0ab52 100644 --- a/.github/workflows/danger.yml +++ b/.github/workflows/danger.yml @@ -25,7 +25,5 @@ jobs: bundle install --clean --path vendor/bundle - name: danger env: - DANGER_GITHUB_API_TOKEN: ${{ secrets.DANGER_GITHUB_API_TOKEN }} - run: bundle exec danger --verbose \ No newline at end of file diff --git a/.swiftformat b/.swiftformat index b21a816..80a521d 100644 --- a/.swiftformat +++ b/.swiftformat @@ -4,7 +4,7 @@ # Use 'swiftformat --options' to list all of the possible options ---header "\nLog\nCopyright © {created.year} Space Code. All rights reserved.\n//" +--header "\nlog\nCopyright © {created.year} Space Code. All rights reserved.\n//" --enable blankLinesBetweenScopes --enable blankLinesAtStartOfScope @@ -36,8 +36,8 @@ --enable redundantSelf --enable redundantVoidReturnType --enable semicolons ---enable sortedImports ---enable sortedSwitchCases +--enable sortImports +--enable sortSwitchCases --enable spaceAroundBraces --enable spaceAroundBrackets --enable spaceAroundComments diff --git a/.swiftlint.yml b/.swiftlint.yml index 89efd09..6d90edc 100644 --- a/.swiftlint.yml +++ b/.swiftlint.yml @@ -18,7 +18,6 @@ opt_in_rules: # some rules are only opt-in - closure_end_indentation - closure_spacing - collection_alignment - - conditional_returns_on_newline - contains_over_filter_count - contains_over_filter_is_empty - contains_over_first_not_nil diff --git a/.swiftpm/xcode/xcshareddata/xcschemes/Log.xcscheme b/.swiftpm/xcode/xcshareddata/xcschemes/Log.xcscheme new file mode 100644 index 0000000..11ee50b --- /dev/null +++ b/.swiftpm/xcode/xcshareddata/xcschemes/Log.xcscheme @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/CHANGELOG.md b/CHANGELOG.md index 2e9885a..259b66b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,2 +1,12 @@ # Change Log -All notable changes to this project will be documented in this file. \ No newline at end of file +All notable changes to this project will be documented in this file. + +#### 1.x Releases +- `1.0.x` Releases - [1.0.0](#100) + +## [1.0.0](https://github.com/space-code/log/releases/tag/1.0.0) +Released on 2023-10-18. + +#### Added +- Initial release of log. + - Added by [Nikita Vasilev](https://github.com/nik3212). diff --git a/Package.swift b/Package.swift index 5928dc3..7db16b1 100644 --- a/Package.swift +++ b/Package.swift @@ -1,31 +1,23 @@ -// swift-tools-version: 5.7 +// swift-tools-version: 5.9 // The swift-tools-version declares the minimum version of Swift required to build this package. import PackageDescription let package = Package( name: "Log", - products: [ - // Products define the executables and libraries a package produces, and make them visible to other packages. - .library( - name: "Log", - targets: ["Log"] - ), + platforms: [ + .macOS(.v10_15), + .iOS(.v13), + .watchOS(.v7), + .tvOS(.v13), + .visionOS(.v1), ], - dependencies: [ - // Dependencies declare other packages that this package depends on. - // .package(url: /* package url */, from: "1.0.0"), + products: [ + .library(name: "Log", targets: ["Log"]), ], + dependencies: [], targets: [ - // Targets are the basic building blocks of a package. A target can define a module or a test suite. - // Targets can depend on other targets in this package, and on products in packages this package depends on. - .target( - name: "Log", - dependencies: [] - ), - .testTarget( - name: "LogTests", - dependencies: ["Log"] - ), + .target(name: "Log", dependencies: []), + .testTarget(name: "LogTests", dependencies: ["Log"]), ] ) diff --git a/Package@swift-5.7.swift b/Package@swift-5.7.swift new file mode 100644 index 0000000..cdef89b --- /dev/null +++ b/Package@swift-5.7.swift @@ -0,0 +1,24 @@ +// swift-tools-version: 5.7 +// The swift-tools-version declares the minimum version of Swift required to build this package. +// swiftlint:disable all + +import PackageDescription + +let package = Package( + name: "Log", + platforms: [ + .macOS(.v10_15), + .iOS(.v13), + .watchOS(.v7), + .tvOS(.v13), + ], + products: [ + .library(name: "Log", targets: ["Log"]), + ], + dependencies: [], + targets: [ + .target(name: "Log", dependencies: []), + .testTarget(name: "LogTests", dependencies: ["Log"]), + ] +) +// swiftlint:enable all diff --git a/README.md b/README.md index f68f6db..a77c976 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,5 @@ +![Log: A lightweight logging framework written in Swift](https://raw.githubusercontent.com/space-code/log/dev/Resources/log.png) +

log

@@ -8,7 +10,7 @@

## Description -`Log` description. +`Log` is a lightweight logging framework written in Swift. - [Usage](#usage) - [Requirements](#requirements) @@ -20,7 +22,61 @@ ## Usage +### Create a logger instance + +First, you need to create an instance of `IPrinter` that prints messages to a specific output, such as XCode's console or the `Console` app. +The `log` package provides predefined printers for printing messages in the XCode console (`ConsolePrinter`) and the system console (`OSPrinter`). You can also create your own printer. To do this, your object must conform to `IPrinterStrategy` and implement the necessary methods. + +```swift +import Log + +let osPrinter = OSPrinter() +let consolePrinter = ConsolePrinter() +``` + +Second, create a `Logger` instance and pass these printers as initialization parameters while defining a log level. The log level determines the level of log messages to print. If the log level is set to a specific level, all messages with different log levels will be ignored. To print all messages, use `.all`. + +```swift +let log = Logger( + printers: [osPrinter, consolePrinter], + logLevel: .all +) +log.error(message: "test message") +``` + +### Formatting a message + +Each instance of `IPrinter` has an array of formatters that are responsible for formatting input messages. The `log` package provides predefined prefix and timestamp formatters. To use these, you need to pass them to an initializer of a printer. + +```swift +let osPrinter = OSPrinter(formatters: [PrefixFormatter(name: "your prefix here")]) +... +log.fault(message: "message") // "🚨🚨🚨 [your prefix here] => message" +``` + +Here is a list of predefined formatters: + +| **Formatters** | **Description** | +|----------------------------|-------------------------------------------------------------------------------------| +| **PrefixLogFormatter** | Add a specified prefix to a printed message | +| **TimestampLogFormatter** | Add a timestamp before a printed message based on a date format | + +### Custom formatters + +If you want to create a custom message formatter, your object must conform to the `ILogFormatter` protocol and implement the necessary methods. + +```swift +struct MyCustomMessageFormatter: ILogFormatter { + func format(message: String, with logLevel: LogLevel) -> String { + // your implementation here + } +} +``` + ## Requirements +- iOS 13.0+ / macOS 10.15+ / tvOS 13.0+ / watchOS 7.0+ / visionOS 1.0+ +- Xcode 14.0 +- Swift 5.7 ## Installation ### Swift Package Manager @@ -53,4 +109,4 @@ Please feel free to help out with this project! If you see something that could Nikita Vasilev, nv3212@gmail.com ## License -log is available under the MIT license. See the LICENSE file for more info. \ No newline at end of file +log is available under the MIT license. See the LICENSE file for more info. diff --git a/Resources/log.png b/Resources/log.png new file mode 100644 index 0000000000000000000000000000000000000000..70fc819b507a6165023acdb676d7e05b62f6c4d5 GIT binary patch literal 310649 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

e=os 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

tV;T7{S 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 literal 0 HcmV?d00001 diff --git a/Sources/Log/Classes/Core/Formatters/Interfaces/ILogFormatter.swift b/Sources/Log/Classes/Core/Formatters/Interfaces/ILogFormatter.swift new file mode 100644 index 0000000..3ebcd8e --- /dev/null +++ b/Sources/Log/Classes/Core/Formatters/Interfaces/ILogFormatter.swift @@ -0,0 +1,16 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Foundation + +/// Specifies the format to be used in the log message +public protocol ILogFormatter { + /// Concatenates the specified attributes and generates the final log message + /// + /// - Parameters: + /// - message: A `String` value that contains the message. + /// - logLevel: A `LogLevel` value that contains the logging level. + func format(message: String, with logLevel: LogLevel) -> String +} diff --git a/Sources/Log/Classes/Core/Formatters/PrefixLogFormatter.swift b/Sources/Log/Classes/Core/Formatters/PrefixLogFormatter.swift new file mode 100644 index 0000000..02232df --- /dev/null +++ b/Sources/Log/Classes/Core/Formatters/PrefixLogFormatter.swift @@ -0,0 +1,36 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Foundation + +/// A log formatter that adds a custom prefix to log messages. +public struct PrefixLogFormatter: ILogFormatter { + // MARK: Properties + + /// The custom prefix to be added to log messages. + private let name: String + + // MARK: Initialization + + /// Creates a new `PrefixLogFormatter` instance with the specified prefix. + /// + /// - Parameter name: The custom prefix to be added to log messages. + public init(name: String) { + self.name = name + } + + // MARK: ILogFormatter + + public func format(message: String, with logLevel: LogLevel) -> String { + switch logLevel { + case .fault: + return "🚨🚨🚨 [\(name)] => \(message)" + case .error: + return "💣💥💣💥 [\(name)] => \(message)" + default: + return "[\(name)] => \(message)" + } + } +} diff --git a/Sources/Log/Classes/Core/Formatters/TimestampLogFormatter.swift b/Sources/Log/Classes/Core/Formatters/TimestampLogFormatter.swift new file mode 100644 index 0000000..0e3c227 --- /dev/null +++ b/Sources/Log/Classes/Core/Formatters/TimestampLogFormatter.swift @@ -0,0 +1,37 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Foundation + +/// A log formatter that adds a timestamp to log messages. +open class TimestampLogFormatter: ILogFormatter { + // MARK: Properties + + /// The date formatter. + private lazy var dateFormatter: DateFormatter = { + let dateFormatter = DateFormatter() + dateFormatter.dateFormat = dateFormat + return dateFormatter + }() + + /// The date format string. + private let dateFormat: String + + // MARK: Initialization + + /// Creates a new `PrefixFormatter` instance with the specified data formmater. + /// + /// - Parameter dateFormat: The date format string. + public init(dateFormat: String) { + self.dateFormat = dateFormat + } + + // MARK: ILogFormatter + + public func format(message: String, with _: LogLevel) -> String { + let timestamp = dateFormatter.string(from: Date()) + return [timestamp, message].joined(separator: " ") + } +} diff --git a/Sources/Log/Classes/Core/Logger/ILogger.swift b/Sources/Log/Classes/Core/Logger/ILogger.swift new file mode 100644 index 0000000..ac3053b --- /dev/null +++ b/Sources/Log/Classes/Core/Logger/ILogger.swift @@ -0,0 +1,29 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Foundation + +/// A type that provides logging functionality. +public protocol ILogger { + /// Dispatches the given message using the logger if the debug log level is set. + /// + /// - Parameter message: An autoclosure returning the message to log. + func debug(message: @autoclosure () -> String) + + /// Dispatches the given message using the logger if the info log level is set. + /// + /// - Parameter message: An autoclosure returning the message to log. + func info(message: @autoclosure () -> String) + + /// Dispatches the given message using the logger if the fault log level is set. + /// + /// - Parameter message: An autoclosure returning the message to log. + func fault(message: @autoclosure () -> String) + + /// Dispatches the given message using the logger if the error log level is set. + /// + /// - Parameter message: An autoclosure returning the message to log. + func error(message: @autoclosure () -> String) +} diff --git a/Sources/Log/Classes/Core/Logger/Logger.swift b/Sources/Log/Classes/Core/Logger/Logger.swift new file mode 100644 index 0000000..8405788 --- /dev/null +++ b/Sources/Log/Classes/Core/Logger/Logger.swift @@ -0,0 +1,70 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +// MARK: - Logger + +/// A class responsible for logging functionality. +open class Logger { + // MARK: Properties + + /// The current log level for this logger. + let logLevel: LogLevel + /// An array of printer strategies to handle the log output. + let printers: [IPrinterStrategy] + + // MARK: Initialization + + /// Initializes a new Logger instance. + /// + /// - Parameters: + /// - printers: An array of printer strategies. + /// - logLevel: The initial log level. + public init( + printers: [IPrinterStrategy], + logLevel: LogLevel + ) { + self.printers = printers + self.logLevel = logLevel + } + + // MARK: Private + + /// Passes the message to each receiver's printer. + /// + /// - Parameters: + /// - message: The message to dispatch. + /// - logLevel: The message's level. + private func log(_ message: String, logLevel: LogLevel) { + guard isLoggerEnabled(for: logLevel) else { return } + printers.forEach { $0.log(message, logLevel: logLevel) } + } + + /// Checks if the given `LogLevel` is allowed by the reciever. + /// + /// - Parameter logLevel: The log level to check. + private func isLoggerEnabled(for logLevel: LogLevel) -> Bool { + self.logLevel.contains(logLevel) + } +} + +// MARK: ILogger + +extension Logger: ILogger { + public func debug(message: @autoclosure () -> String) { + log(message(), logLevel: .debug) + } + + public func info(message: @autoclosure () -> String) { + log(message(), logLevel: .info) + } + + public func fault(message: @autoclosure () -> String) { + log(message(), logLevel: .fault) + } + + public func error(message: @autoclosure () -> String) { + log(message(), logLevel: .error) + } +} diff --git a/Sources/Log/Classes/Core/Logger/Strategies/IPrinterStrategy.swift b/Sources/Log/Classes/Core/Logger/Strategies/IPrinterStrategy.swift new file mode 100644 index 0000000..d790438 --- /dev/null +++ b/Sources/Log/Classes/Core/Logger/Strategies/IPrinterStrategy.swift @@ -0,0 +1,19 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Foundation + +/// A protocol that defines the behavior of a logging printer strategy +public protocol IPrinterStrategy { + /// An array of log formatters to customize log message output. + var formatters: [ILogFormatter] { get } + + /// Logs a message with a specified log level. + /// + /// - Parameters: + /// - message: A `String` value that contains the message to dispatch. + /// - logLevel: A `LogLevel` value that contains the logging level. + func log(_ message: String, logLevel: LogLevel) +} diff --git a/Sources/Log/Classes/Core/Logger/Strategies/IStyleLogStrategy.swift b/Sources/Log/Classes/Core/Logger/Strategies/IStyleLogStrategy.swift new file mode 100644 index 0000000..cb2fd16 --- /dev/null +++ b/Sources/Log/Classes/Core/Logger/Strategies/IStyleLogStrategy.swift @@ -0,0 +1,29 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Foundation + +// MARK: - IStyleLogStrategy + +/// Specifies the format to be used in the log message +protocol IStyleLogStrategy: IPrinterStrategy { + /// An array of log formatters to customize log message output. + var formatters: [ILogFormatter] { get } +} + +extension IStyleLogStrategy { + /// Format the message using formatting rules. + /// + /// - Parameters: + /// - message: A `String` value that contains the message. + /// - logLevel: A `LogLevel` value that contains the logging level. + /// + /// - Returns: Formatted message. + func formatMessage(_ message: String, logLevel: LogLevel) -> String { + var message = message + formatters.forEach { message = $0.format(message: message, with: logLevel) } + return message + } +} diff --git a/Sources/Log/Classes/Core/Printers/ConsolePrinter.swift b/Sources/Log/Classes/Core/Printers/ConsolePrinter.swift new file mode 100644 index 0000000..103e162 --- /dev/null +++ b/Sources/Log/Classes/Core/Printers/ConsolePrinter.swift @@ -0,0 +1,40 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Foundation + +// MARK: - ConsolePrinter + +/// A class for logging messages to the console output. +public final class ConsolePrinter { + // MARK: Properties + + /// An array of log formatters used to customize log message output. + public let formatters: [ILogFormatter] + + /// The console writer. + public let consoleWriter: IConsoleWriter + + // MARK: Initialization + + /// Creates a new `ConsolePrinter` instance. + /// + /// - Parameters: + /// - formatters: An array of log formatters for customizing log messages. + /// - consoleWriter: The console writer. + public init(formatters: [ILogFormatter], consoleWriter: IConsoleWriter = ConsoleWriter()) { + self.formatters = formatters + self.consoleWriter = consoleWriter + } +} + +// MARK: IStyleLogStrategy + +extension ConsolePrinter: IStyleLogStrategy { + public func log(_ message: String, logLevel: LogLevel) { + let message = formatMessage(message, logLevel: logLevel) + consoleWriter.print(message) + } +} diff --git a/Sources/Log/Classes/Core/Printers/Interfaces/IPrinter.swift b/Sources/Log/Classes/Core/Printers/Interfaces/IPrinter.swift new file mode 100644 index 0000000..7274b70 --- /dev/null +++ b/Sources/Log/Classes/Core/Printers/Interfaces/IPrinter.swift @@ -0,0 +1,16 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Foundation + +/// A protocol that defines the behavior for logging messages. +public protocol IPrinter { + /// Logs a message with a specified log level. + /// + /// - Parameters: + /// - message: The message to log. + /// - logLevel: The log level indicating the importance of the log message. + func log(_ message: String, logLevel: LogLevel) +} diff --git a/Sources/Log/Classes/Core/Printers/OSPrinter.swift b/Sources/Log/Classes/Core/Printers/OSPrinter.swift new file mode 100644 index 0000000..1964c56 --- /dev/null +++ b/Sources/Log/Classes/Core/Printers/OSPrinter.swift @@ -0,0 +1,76 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Foundation +import OSLog + +// MARK: - OSPrinter + +/// A class for logging messages using the OSLog system. +public final class OSPrinter { + // MARK: Properties + + /// An array of log formatters used to customize log message output. + public let formatters: [ILogFormatter] + /// The optional subsystem for categorizing log messages. + public let subsystem: String + /// The optional category for categorizing log messages. + public let category: String + /// The os writer. + public let osWriter: IOSWriter + + /// An internal lazy property for initializing the OSLog instance. + private lazy var osLog: OSLog = .init(subsystem: subsystem, category: category) + + // MARK: Initialization + + /// Creates a new `OSPrinter` instance. + /// + /// - Parameters: + /// - subsystem: An optional subsystem for categorizing log messages. + /// - category: An optional category for categorizing log messages. + /// - formatters: An array of log formatters for customizing log messages. + /// - osWriter: An os writer. + public init( + subsystem: String = "os_printer", + category: String = "", + formatters: [ILogFormatter], + osWriter: IOSWriter = OSWriter() + ) { + self.subsystem = subsystem + self.category = category + self.formatters = formatters + self.osWriter = osWriter + } +} + +// MARK: IStyleLogStrategy + +extension OSPrinter: IStyleLogStrategy { + public func log(_ message: String, logLevel: LogLevel) { + let message = formatMessage(message, logLevel: logLevel) + let type = sysLogPriority(logLevel) + osWriter.log("%s", log: osLog, type: type, message) + } +} + +// MARK: - Extension + +extension OSPrinter { + private func sysLogPriority(_ logLevel: LogLevel) -> OSLogType { + switch logLevel { + case .debug: + return .debug + case .info: + return .info + case .fault: + return .fault + case .error: + return .error + default: + return .default + } + } +} diff --git a/Sources/Log/Classes/Helpers/Writers/ConsoleWriter/ConsoleWriter.swift b/Sources/Log/Classes/Helpers/Writers/ConsoleWriter/ConsoleWriter.swift new file mode 100644 index 0000000..1549580 --- /dev/null +++ b/Sources/Log/Classes/Helpers/Writers/ConsoleWriter/ConsoleWriter.swift @@ -0,0 +1,22 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Foundation + +// MARK: - ConsoleWriter + +/// A class that conforms to the IConsoleWriter protocol and writes messages to the console output. +public final class ConsoleWriter: IConsoleWriter { + // MARK: Initialization + + /// Initializes a new ConsoleWriter instance. + public init() {} + + // MARK: IConsoleWriter + + public func print(_ message: String) { + Swift.print(message) + } +} diff --git a/Sources/Log/Classes/Helpers/Writers/ConsoleWriter/IConsoleWriter.swift b/Sources/Log/Classes/Helpers/Writers/ConsoleWriter/IConsoleWriter.swift new file mode 100644 index 0000000..09d5a93 --- /dev/null +++ b/Sources/Log/Classes/Helpers/Writers/ConsoleWriter/IConsoleWriter.swift @@ -0,0 +1,14 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Foundation + +/// A protocol for writing messages to the console. +public protocol IConsoleWriter { + /// Prints a message to the console output. + /// + /// - Parameter message: The message to be printed as a String. + func print(_ message: String) +} diff --git a/Sources/Log/Classes/Helpers/Writers/OSWriter/IOSWriter.swift b/Sources/Log/Classes/Helpers/Writers/OSWriter/IOSWriter.swift new file mode 100644 index 0000000..ec2fcab --- /dev/null +++ b/Sources/Log/Classes/Helpers/Writers/OSWriter/IOSWriter.swift @@ -0,0 +1,19 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Foundation +import OSLog + +/// A protocol for writing log messages to the Apple OSLog system. +public protocol IOSWriter { + /// Writes a log message to the specified OSLog. + /// + /// - Parameters: + /// - message: A StaticString containing the log message format. + /// - log: An OSLog object representing the log subsystem and category. + /// - type: An OSLogType indicating the log message type. + /// - args: A variadic list of CVarArg values to fill in the message format. + func log(_ message: StaticString, log: OSLog, type: OSLogType, _ args: CVarArg...) +} diff --git a/Sources/Log/Classes/Helpers/Writers/OSWriter/OSWriter.swift b/Sources/Log/Classes/Helpers/Writers/OSWriter/OSWriter.swift new file mode 100644 index 0000000..a4ad3ad --- /dev/null +++ b/Sources/Log/Classes/Helpers/Writers/OSWriter/OSWriter.swift @@ -0,0 +1,23 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Foundation +import OSLog + +// MARK: - OSWriter + +/// A class that conforms to the IOSWriter protocol and writes log messages to the Apple OSLog system. +public final class OSWriter: IOSWriter { + // MARK: Initialization + + /// Creates a new `OSWriter` instance. + public init() {} + + // MARK: IOSWriter + + public func log(_ message: StaticString, log: OSLog, type: OSLogType, _ args: CVarArg...) { + os_log(message, log: log, type: type, args) + } +} diff --git a/Sources/Log/Classes/Log.swift b/Sources/Log/Classes/Log.swift deleted file mode 100644 index 771861f..0000000 --- a/Sources/Log/Classes/Log.swift +++ /dev/null @@ -1,6 +0,0 @@ -// -// Log -// Copyright © 2023 Space Code. All rights reserved. -// - -final class Log {} diff --git a/Sources/Log/Classes/Models/LogLevel.swift b/Sources/Log/Classes/Models/LogLevel.swift new file mode 100644 index 0000000..5a68b78 --- /dev/null +++ b/Sources/Log/Classes/Models/LogLevel.swift @@ -0,0 +1,49 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Foundation + +// MARK: - LogLevel + +/// A set that includes all log levels. +public struct LogLevel: OptionSet { + // MARK: Initialization + + /// Creates a new log level. + /// + /// - Parameter rawValue: The value that indicates a log level. + public init(rawValue: RawValue) { + self.rawValue = rawValue + } + + // MARK: Types + + public typealias RawValue = UInt + + /// Creates a new default `.off` instance with a bitmask of `1 << 0`. + public static let off = LogLevel(rawValue: offBitmask) + /// Creates a new default `.debug` instance with a bitmask of `1 << 1`. + public static let debug = LogLevel(rawValue: debugBitmask) + /// Creates a new default `.info` instance with a bitmask of `1 << 2`. + public static let info = LogLevel(rawValue: infoBitmask) + /// Creates a new default `.error` instance with a bitmask of `1 << 3`. + public static let error = LogLevel(rawValue: errorBitmask) + /// Creates a new default `.fault` instance with a bitmask of `1 << 4`. + public static let fault = LogLevel(rawValue: faultBitmask) + /// Creates a new default `.error` instance. + public static let all = LogLevel(rawValue: allBitmask) + + /// Returns the raw bitmask value of the LogLevel and satisfies the `RawRepresentable` protocol. + public let rawValue: RawValue + + // MARK: Private + + private static let offBitmask: RawValue = 1 << 0 + private static let debugBitmask: RawValue = 1 << 1 + private static let infoBitmask: RawValue = 1 << 2 + private static let errorBitmask: RawValue = 1 << 3 + private static let faultBitmask: RawValue = 1 << 4 + private static let allBitmask: RawValue = 0b1111_1111_1111_1111_1111_1111_1111_1111 +} diff --git a/Tests/LogTests/LogTests.swift b/Tests/LogTests/LogTests.swift deleted file mode 100644 index 285a13b..0000000 --- a/Tests/LogTests/LogTests.swift +++ /dev/null @@ -1,8 +0,0 @@ -// -// Log -// Copyright © 2023 Space Code. All rights reserved. -// - -import XCTest - -final class LogTests: XCTestCase {} diff --git a/Tests/LogTests/Mocks/ConsoleWriterMock.swift b/Tests/LogTests/Mocks/ConsoleWriterMock.swift new file mode 100644 index 0000000..7b0cec8 --- /dev/null +++ b/Tests/LogTests/Mocks/ConsoleWriterMock.swift @@ -0,0 +1,21 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Foundation +import Log + +final class ConsoleWriterMock: IConsoleWriter { + var invokedPrint = false + var invokedPrintCount = 0 + var invokedPrintParameters: (message: String, Void)? + var invokedPrintParametersList = [(message: String, Void)]() + + func print(_ message: String) { + invokedPrint = true + invokedPrintCount += 1 + invokedPrintParameters = (message, ()) + invokedPrintParametersList.append((message, ())) + } +} diff --git a/Tests/LogTests/Mocks/LogFormatterMock.swift b/Tests/LogTests/Mocks/LogFormatterMock.swift new file mode 100644 index 0000000..9fadfec --- /dev/null +++ b/Tests/LogTests/Mocks/LogFormatterMock.swift @@ -0,0 +1,23 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Foundation +import Log + +final class LogFormatterMock: ILogFormatter { + var invokedFormat = false + var invokedFormatCount = 0 + var invokedFormatParameters: (message: String, logLevel: LogLevel)? + var invokedFormatParametersList = [(message: String, logLevel: LogLevel)]() + var stubbedFormatResult: String! = "" + + func format(message: String, with logLevel: LogLevel) -> String { + invokedFormat = true + invokedFormatCount += 1 + invokedFormatParameters = (message, logLevel) + invokedFormatParametersList.append((message, logLevel)) + return stubbedFormatResult + } +} diff --git a/Tests/LogTests/Mocks/OSWriterMock.swift b/Tests/LogTests/Mocks/OSWriterMock.swift new file mode 100644 index 0000000..165dc09 --- /dev/null +++ b/Tests/LogTests/Mocks/OSWriterMock.swift @@ -0,0 +1,21 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Log +import OSLog + +final class OSWriterMock: IOSWriter { + var invokedLog = false + var invokedLogCount = 0 + var invokedLogParameters: (message: StaticString, log: OSLog, type: OSLogType, args: CVarArg)? + var invokedLogParametersList = [(message: StaticString, log: OSLog, type: OSLogType, args: CVarArg)]() + + func log(_ message: StaticString, log: OSLog, type: OSLogType, _ args: CVarArg...) { + invokedLog = true + invokedLogCount += 1 + invokedLogParameters = (message, log, type, args) + invokedLogParametersList.append((message, log, type, args)) + } +} diff --git a/Tests/LogTests/Mocks/PrinterStrategyMock.swift b/Tests/LogTests/Mocks/PrinterStrategyMock.swift new file mode 100644 index 0000000..cfb7961 --- /dev/null +++ b/Tests/LogTests/Mocks/PrinterStrategyMock.swift @@ -0,0 +1,30 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Log + +final class PrinterStrategyMock: IPrinterStrategy { + var invokedFormattersGetter = false + var invokedFormattersGetterCount = 0 + var stubbedFormatters: [ILogFormatter]! = [] + + var formatters: [ILogFormatter] { + invokedFormattersGetter = true + invokedFormattersGetterCount += 1 + return stubbedFormatters + } + + var invokedLog = false + var invokedLogCount = 0 + var invokedLogParameters: (message: String, logLevel: LogLevel)? + var invokedLogParametersList = [(message: String, logLevel: LogLevel)]() + + func log(_ message: String, logLevel: LogLevel) { + invokedLog = true + invokedLogCount += 1 + invokedLogParameters = (message, logLevel) + invokedLogParametersList.append((message, logLevel)) + } +} diff --git a/Tests/LogTests/UnitTests/ConsolePrinterTests.swift b/Tests/LogTests/UnitTests/ConsolePrinterTests.swift new file mode 100644 index 0000000..4478dfd --- /dev/null +++ b/Tests/LogTests/UnitTests/ConsolePrinterTests.swift @@ -0,0 +1,53 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Log +import XCTest + +// MARK: - ConsolePrinterTests + +final class ConsolePrinterTests: XCTestCase { + // MARK: Properties + + private var formatterMock: LogFormatterMock! + private var consoleWriterMock: ConsoleWriterMock! + + private var sut: ConsolePrinter! + + // MARK: XCTestCase + + override func setUp() { + super.setUp() + formatterMock = LogFormatterMock() + consoleWriterMock = ConsoleWriterMock() + sut = ConsolePrinter(formatters: [formatterMock], consoleWriter: consoleWriterMock) + } + + override func tearDown() { + formatterMock = nil + consoleWriterMock = nil + sut = nil + super.tearDown() + } + + // MARK: Tests + + func test_thatConsolePrinterLogsMessage() { + // given + formatterMock.stubbedFormatResult = .message + + // when + sut.log(.message, logLevel: .all) + + // then + XCTAssertEqual(consoleWriterMock.invokedPrintParameters?.message, .message) + } +} + +// MARK: - Constants + +private extension String { + static let message = "message" +} diff --git a/Tests/LogTests/UnitTests/LogTests.swift b/Tests/LogTests/UnitTests/LogTests.swift new file mode 100644 index 0000000..4284ac4 --- /dev/null +++ b/Tests/LogTests/UnitTests/LogTests.swift @@ -0,0 +1,136 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Log +import XCTest + +// MARK: - LogTests + +final class LogTests: XCTestCase { + // MARK: Properties + + private var printerMock: PrinterStrategyMock! + + // MARK: XCTestCase + + override func setUp() { + super.setUp() + printerMock = PrinterStrategyMock() + } + + override func tearDown() { + printerMock = nil + super.tearDown() + } + + // MARK: Tests + + func test_thatLoggerLogsInfoMessage() { + // given + let sut = prepareSut() + + // when + sut.info(message: .message) + + // then + XCTAssertEqual(printerMock.invokedLogParameters?.message, .message) + XCTAssertEqual(printerMock.invokedLogParameters?.logLevel, .info) + } + + func test_thatLoggerLogsDebugMessage() { + // given + let sut = prepareSut() + + // when + sut.debug(message: .message) + + // then + XCTAssertEqual(printerMock.invokedLogParameters?.message, .message) + XCTAssertEqual(printerMock.invokedLogParameters?.logLevel, .debug) + } + + func test_thatLoggerLogsErrorMessage() { + // given + let sut = prepareSut() + + // when + sut.error(message: .message) + + // then + XCTAssertEqual(printerMock.invokedLogParameters?.message, .message) + XCTAssertEqual(printerMock.invokedLogParameters?.logLevel, .error) + } + + func test_thatLoggerLogsFaultMessage() { + // given + let sut = prepareSut() + + // when + sut.fault(message: .message) + + // then + XCTAssertEqual(printerMock.invokedLogParameters?.message, .message) + XCTAssertEqual(printerMock.invokedLogParameters?.logLevel, .fault) + } + + func test_thatLoggerDoesNotLogAnything_whenLogLevelIsOff() { + // given + let sut = prepareSut(logLevel: .off) + + // when + sut.info(message: .message) + + // then + XCTAssertNil(printerMock.invokedLogParameters?.message) + } + + func test_thatLoggerDoesNotLogDebugMessage_whenLogLevelIsInfo() { + // given + let sut = prepareSut(logLevel: .info) + + // when + sut.debug(message: .message) + + // then + XCTAssertNil(printerMock.invokedLogParameters?.message) + } + + func test_thatLoggerDoesNotLogInfoMessage_whenLogLevelIsError() { + // given + let sut = prepareSut(logLevel: .error) + + // when + sut.info(message: .message) + + // then + XCTAssertNil(printerMock.invokedLogParameters?.message) + } + + func test_thatLoggerDoesNotLogErrorMessage_whenLogLevelIsFault() { + // given + let sut = prepareSut(logLevel: .fault) + + // when + sut.error(message: .message) + + // then + XCTAssertNil(printerMock.invokedLogParameters?.message) + } + + // MARK: Private + + private func prepareSut(logLevel: LogLevel = .all) -> Logger { + Logger( + printers: [printerMock], + logLevel: logLevel + ) + } +} + +// MARK: - Constants + +private extension String { + static let message = "message" +} diff --git a/Tests/LogTests/UnitTests/OSPrinterTests.swift b/Tests/LogTests/UnitTests/OSPrinterTests.swift new file mode 100644 index 0000000..f4175a5 --- /dev/null +++ b/Tests/LogTests/UnitTests/OSPrinterTests.swift @@ -0,0 +1,104 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Log +import XCTest + +// MARK: - OSPrinterTests + +final class OSPrinterTests: XCTestCase { + // MARK: Properties + + private var formatterMock: LogFormatterMock! + private var osWriterMock: OSWriterMock! + + private var sut: OSPrinter! + + // MARK: XCTestCase + + override func setUp() { + super.setUp() + formatterMock = LogFormatterMock() + osWriterMock = OSWriterMock() + sut = OSPrinter( + subsystem: .subsystem, + category: .category, + formatters: [formatterMock], + osWriter: osWriterMock + ) + } + + override func tearDown() { + formatterMock = nil + osWriterMock = nil + sut = nil + super.tearDown() + } + + // MARK: Tests + + func test_thatConsolePrinterLogsMessage() { + // given + formatterMock.stubbedFormatResult = .message + + // when + sut.log(.message, logLevel: .all) + + // then + XCTAssertEqual((osWriterMock.invokedLogParameters?.args as? [String])?.first, .message) + } + + func test_thatConsolePrinterLogsMessage_whenLogLevelIsDebug() { + // given + formatterMock.stubbedFormatResult = .message + + // when + sut.log(.message, logLevel: .debug) + + // then + XCTAssertEqual((osWriterMock.invokedLogParameters?.args as? [String])?.first, .message) + } + + func test_thatConsolePrinterLogsMessage_whenLogLevelIsInfo() { + // given + formatterMock.stubbedFormatResult = .message + + // when + sut.log(.message, logLevel: .info) + + // then + XCTAssertEqual((osWriterMock.invokedLogParameters?.args as? [String])?.first, .message) + } + + func test_thatConsolePrinterLogsMessage_whenLogLevelIsError() { + // given + formatterMock.stubbedFormatResult = .message + + // when + sut.log(.message, logLevel: .error) + + // then + XCTAssertEqual((osWriterMock.invokedLogParameters?.args as? [String])?.first, .message) + } + + func test_thatConsolePrinterLogsMessage_whenLogLevelIsFault() { + // given + formatterMock.stubbedFormatResult = .message + + // when + sut.log(.message, logLevel: .fault) + + // then + XCTAssertEqual((osWriterMock.invokedLogParameters?.args as? [String])?.first, .message) + } +} + +// MARK: - Constants + +private extension String { + static let subsystem = "subsystem" + static let category = "category" + static let message = "message" +} diff --git a/Tests/LogTests/UnitTests/PrefixFormatterTests.swift b/Tests/LogTests/UnitTests/PrefixFormatterTests.swift new file mode 100644 index 0000000..c2ffd33 --- /dev/null +++ b/Tests/LogTests/UnitTests/PrefixFormatterTests.swift @@ -0,0 +1,76 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Log +import XCTest + +// MARK: - PrefixFormatterTests + +final class PrefixFormatterTests: XCTestCase { + // MARK: Properties + + private var sut: PrefixLogFormatter! + + // MARK: XCTestCase + + override func setUp() { + super.setUp() + sut = PrefixLogFormatter(name: .name) + } + + override func tearDown() { + sut = nil + super.tearDown() + } + + // MARK: Tests + + func test_thatPrefixFormatterFormatsMessage_whenLogLevelIsFault() { + // when + let message = sut.format(message: .message, with: .fault) + + // then + XCTAssertEqual(message, "🚨🚨🚨 [name] => message") + } + + func test_thatPrefixFormatterFormatsMessage_whenLogLevelIsError() { + // when + let message = sut.format(message: .message, with: .error) + + // then + XCTAssertEqual(message, "💣💥💣💥 [name] => message") + } + + func test_thatPrefixFormatterFormatsMessage_whenLogLevelIsDebug() { + // when + let message = sut.format(message: .message, with: .debug) + + // then + XCTAssertEqual(message, "[name] => message") + } + + func test_thatPrefixFormatterFormatsMessage_whenLogLevelIsInfo() { + // when + let message = sut.format(message: .message, with: .info) + + // then + XCTAssertEqual(message, "[name] => message") + } + + func test_thatPrefixFormatterFormatsMessage_whenLogLevelIsAll() { + // when + let message = sut.format(message: .message, with: .all) + + // then + XCTAssertEqual(message, "[name] => message") + } +} + +// MARK: - Constants + +private extension String { + static let message = "message" + static let name = "name" +} diff --git a/Tests/LogTests/UnitTests/TimestampLogFormatterTests.swift b/Tests/LogTests/UnitTests/TimestampLogFormatterTests.swift new file mode 100644 index 0000000..ff4deba --- /dev/null +++ b/Tests/LogTests/UnitTests/TimestampLogFormatterTests.swift @@ -0,0 +1,49 @@ +// +// log +// Copyright © 2023 Space Code. All rights reserved. +// + +import Log +import XCTest + +// MARK: - TimestampLogFormatterTests + +final class TimestampLogFormatterTests: XCTestCase { + // MARK: Properties + + private var sut: TimestampLogFormatter! + + // MARK: XCTestCase + + override func setUp() { + super.setUp() + sut = TimestampLogFormatter(dateFormat: .dateFormat) + } + + override func tearDown() { + sut = nil + super.tearDown() + } + + // MARK: Tests + + func test_thatTimestampFormaterFormatsLogMessage() { + // given + let dateFormatter = DateFormatter() + dateFormatter.dateFormat = .dateFormat + let date = dateFormatter.string(from: Date()) + + // when + let message = sut.format(message: .message, with: .all) + + // then + XCTAssertEqual(message, "\(date) \(String.message)") + } +} + +// MARK: - Constants + +private extension String { + static let message = "message" + static let dateFormat = "dd.MM.yyyy" +} From 175bfa10cb7e4a682419b43cb714613de0744f03 Mon Sep 17 00:00:00 2001 From: Nikita Vasilev Date: Wed, 18 Oct 2023 17:48:40 +0300 Subject: [PATCH 3/5] Integrate `codecov` --- README.md | 1 + codecov.yml | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 49 insertions(+) create mode 100644 codecov.yml diff --git a/README.md b/README.md index a77c976..cde9156 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,7 @@ 5.7 CI +CodeCov

## Description diff --git a/codecov.yml b/codecov.yml new file mode 100644 index 0000000..b415604 --- /dev/null +++ b/codecov.yml @@ -0,0 +1,48 @@ +codecov: + # Require CI to pass to show coverage, default yes + require_ci_to_pass: yes + notify: + # Codecov should wait for all CI statuses to complete, default yes + wait_for_ci: yes + +coverage: + # Coverage precision range 0-5, default 2 + precision: 2 + + # Direction to round the coverage value - up, down, nearest, default down + round: nearest + + # Value range for red...green, default 70...100 + range: "70...90" + + status: + # Overall project coverage, compare against pull request base + project: + default: + # The required coverage value + target: 50% + + # The leniency in hitting the target. Allow coverage to drop by X% + threshold: 5% + + # Only measure lines adjusted in the pull request or single commit, if the commit in not in the pr + patch: + default: + # The required coverage value + target: 85% + + # Allow coverage to drop by X% + threshold: 5% + changes: no + +comment: + # Pull request Codecov comment format. + # diff: coverage diff of the pull request + # files: a list of files impacted by the pull request (coverage changes, file is new or removed) + layout: "diff, files" + + # Update Codecov comment, if exists. Otherwise post new + behavior: default + + # If true, only post the Codecov comment if coverage changes + require_changes: false \ No newline at end of file From 6ab1bb9a53634df2ea853692a1adc7a64f000d3c Mon Sep 17 00:00:00 2001 From: Nikita Vasilev Date: Wed, 18 Oct 2023 17:52:37 +0300 Subject: [PATCH 4/5] Update `README.md` --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index cde9156..03b197d 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,8 @@

log

-License +License +Platform 5.7 CI From 1a163f6c68c5166d7d83ac78d8cb962cc9eadf15 Mon Sep 17 00:00:00 2001 From: Nikita Vasilev Date: Wed, 18 Oct 2023 17:54:26 +0300 Subject: [PATCH 5/5] Update `Gemfile` --- Gemfile.lock | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 Gemfile.lock diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 0000000..15dfc08 --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,66 @@ +GEM + remote: https://rubygems.org/ + specs: + addressable (2.8.5) + public_suffix (>= 2.0.2, < 6.0) + base64 (0.1.1) + claide (1.1.0) + claide-plugins (0.9.2) + cork + nap + open4 (~> 1.3) + colored2 (3.1.2) + cork (0.3.0) + colored2 (~> 3.1) + danger (9.3.2) + claide (~> 1.0) + claide-plugins (>= 0.9.2) + colored2 (~> 3.1) + cork (~> 0.1) + faraday (>= 0.9.0, < 3.0) + faraday-http-cache (~> 2.0) + git (~> 1.13) + kramdown (~> 2.3) + kramdown-parser-gfm (~> 1.0) + no_proxy_fix + octokit (~> 6.0) + terminal-table (>= 1, < 4) + faraday (2.7.11) + base64 + faraday-net_http (>= 2.0, < 3.1) + ruby2_keywords (>= 0.0.4) + faraday-http-cache (2.5.0) + faraday (>= 0.8) + faraday-net_http (3.0.2) + git (1.18.0) + addressable (~> 2.8) + rchardet (~> 1.8) + kramdown (2.4.0) + rexml + kramdown-parser-gfm (1.1.0) + kramdown (~> 2.0) + nap (1.1.0) + no_proxy_fix (0.1.2) + octokit (6.1.1) + faraday (>= 1, < 3) + sawyer (~> 0.9) + open4 (1.3.4) + public_suffix (5.0.3) + rchardet (1.8.0) + rexml (3.2.6) + ruby2_keywords (0.0.5) + sawyer (0.9.2) + addressable (>= 2.3.5) + faraday (>= 0.17.3, < 3) + terminal-table (3.0.2) + unicode-display_width (>= 1.1.1, < 3) + unicode-display_width (2.5.0) + +PLATFORMS + x86_64-darwin-22 + +DEPENDENCIES + danger + +BUNDLED WITH + 2.4.10