Skip to content

Commit 9d4417f

Browse files
authored
Apply naming conventions (#10)
⚠️ Breaking change! - fix naming conventions - update readme
1 parent dc1ab00 commit 9d4417f

File tree

11 files changed

+71
-65
lines changed

11 files changed

+71
-65
lines changed

Package.resolved

Lines changed: 21 additions & 21 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Package.swift

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ var defaultSwiftSettings: [SwiftSetting] =
1111
// https://forums.swift.org/t/experimental-support-for-lifetime-dependencies-in-swift-6-2-and-beyond/78638
1212
.enableExperimentalFeature("Lifetimes"),
1313
// https://github.com/swiftlang/swift/pull/65218
14-
.enableExperimentalFeature("AvailabilityMacro=featherHummingbirdSpec 1.0:macOS 15.0, iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0"),
14+
.enableExperimentalFeature("AvailabilityMacro=featherSpecHummingbird 1.0:macOS 15.0, iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0"),
1515
]
1616

1717
#if compiler(>=6.2)
@@ -22,7 +22,7 @@ defaultSwiftSettings.append(
2222
#endif
2323

2424
let package = Package(
25-
name: "feather-hummingbirds-spec",
25+
name: "feather-spec-hummingbird",
2626
platforms: [
2727
.macOS(.v15),
2828
.iOS(.v18),
@@ -31,17 +31,16 @@ let package = Package(
3131
.visionOS(.v2),
3232
],
3333
products: [
34-
.library(name: "FeatherHummingbirdSpec", targets: ["FeatherHummingbirdSpec"]),
34+
.library(name: "FeatherSpecHummingbird", targets: ["FeatherSpecHummingbird"]),
3535
],
3636
dependencies: [
37-
// [docc-plugin-placeholder]
3837
.package(url: "https://github.com/hummingbird-project/hummingbird", from: "2.20.1"),
3938
.package(url: "https://github.com/feather-framework/feather-spec", exact: "1.0.0-beta.2"),
40-
39+
// [docc-plugin-placeholder]
4140
],
4241
targets: [
4342
.target(
44-
name: "FeatherHummingbirdSpec",
43+
name: "FeatherSpecHummingbird",
4544
dependencies: [
4645
.product(name: "FeatherSpec", package: "feather-spec"),
4746
.product(name: "Hummingbird", package: "hummingbird"),
@@ -50,9 +49,9 @@ let package = Package(
5049
swiftSettings: defaultSwiftSettings
5150
),
5251
.testTarget(
53-
name: "FeatherHummingbirdSpecTests",
52+
name: "FeatherSpecHummingbirdTests",
5453
dependencies: [
55-
.target(name: "FeatherHummingbirdSpec"),
54+
.target(name: "FeatherSpecHummingbird"),
5655
],
5756
swiftSettings: defaultSwiftSettings
5857
),

README.md

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,12 @@
1-
# Feather Hummingbird Spec
1+
# Feather Spec Hummingbird
22

33
Hummingbird runtime integration for Feather Spec, providing a test runner and executor for Hummingbird applications.
44

5-
[![Release: 1.0.0-beta.2](https://img.shields.io/badge/Release-1.0.0--beta.2-F05138)]( https://github.com/feather-framework/feather-hummingbird-spec/releases/tag/1.0.0-beta.2)
5+
[
6+
![Release: 1.0.0-beta.3](https://img.shields.io/badge/Release-1.0.0--beta.3-F05138)
7+
](
8+
https://github.com/feather-framework/feather-spec-hummingbird/releases/tag/1.0.0-beta.3
9+
)
610

711
## Features
812

@@ -30,18 +34,22 @@ Hummingbird runtime integration for Feather Spec, providing a test runner and ex
3034
Use Swift Package Manager; add the dependency to your `Package.swift` file:
3135

3236
```swift
33-
.package(url: "https://github.com/feather-framework/feather-hummingbird-spec", exact: "1.0.0-beta.2"),
37+
.package(url: "https://github.com/feather-framework/feather-spec-hummingbird", exact: "1.0.0-beta.3"),
3438
```
3539

36-
Then add `FeatherHummingbirdSpec` to your target dependencies:
40+
Then add `FeatherSpecHummingbird` to your target dependencies:
3741

3842
```swift
39-
.product(name: "FeatherHummingbirdSpec", package: "feather-hummingbird-spec"),
43+
.product(name: "FeatherSpecHummingbird", package: "feather-spec-hummingbird"),
4044
```
4145

4246
## Usage
4347

44-
[![DocC API documentation](https://img.shields.io/badge/DocC-API_documentation-F05138)](https://feather-framework.github.io/feather-hummingbird-spec)
48+
[
49+
![DocC API documentation](https://img.shields.io/badge/DocC-API_documentation-F05138)
50+
](
51+
https://feather-framework.github.io/feather-spec-hummingbird
52+
)
4553

4654
API documentation is available at the following link. Refer to the Tests directory for working examples.
4755

@@ -51,7 +59,7 @@ API documentation is available at the following link. Refer to the Tests directo
5159
## Related projects
5260

5361
- [Feather Spec](https://github.com/feather-framework/feather-spec)
54-
- [Feather Vapor Spec](https://github.com/feather-framework/feather-vapor-spec)
62+
- [Feather Spec Vapor](https://github.com/feather-framework/feather-spec-vapor)
5563

5664
## Development
5765

@@ -64,4 +72,4 @@ API documentation is available at the following link. Refer to the Tests directo
6472

6573
## Contributing
6674

67-
[Pull requests](https://github.com/feather-framework/feather-hummingbird-spec/pulls) are welcome. Please keep changes focused and include tests for new logic.
75+
[Pull requests](https://github.com/feather-framework/feather-spec-hummingbird/pulls) are welcome. Please keep changes focused and include tests for new logic.

Sources/FeatherHummingbirdSpec/HTTPBody+Collect.swift renamed to Sources/FeatherSpecHummingbird/HTTPBody+Collect.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
//
22
// HTTPBody+Collect.swift
3-
// feather-hummingbird-spec
3+
// feather-spec-hummingbird
44
//
55
// Created by Binary Birds on 2026. 01. 21..
66

Sources/FeatherHummingbirdSpec/HummingbirdSpecExecutor.swift renamed to Sources/FeatherSpecHummingbird/HummingbirdSpecExecutor.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
//
2-
// HummingbirdSpecExecutor.swift
3-
// feather-hummingbird-spec
2+
// SpecExecutorHummingbird.swift
3+
// feather-spec-hummingbird
44
//
55
// Created by Binary Birds on 2026. 01. 21..
66

@@ -14,7 +14,7 @@ import OpenAPIRuntime
1414
///
1515
/// This executor uses a `TestClientProtocol` to perform requests and adapts
1616
/// the response into `HTTPResponse` and `HTTPBody` for expectation evaluation.
17-
struct HummingbirdSpecExecutor: SpecExecutor {
17+
struct SpecExecutorHummingbird: SpecExecutor {
1818

1919
/// The client responsible for executing HTTP requests.
2020
///

Sources/FeatherHummingbirdSpec/HummingbirdSpecRunner.swift renamed to Sources/FeatherSpecHummingbird/SpecRunnerHummingbird.swift

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
//
2-
// HummingbirdSpecRunner.swift
3-
// feather-hummingbird-spec
2+
// SpecRunnerHummingbird.swift
3+
// feather-spec-hummingbird
44
//
55
// Created by Binary Birds on 2026. 01. 21..
66

@@ -12,8 +12,7 @@ import HummingbirdTesting
1212
///
1313
/// This runner wraps an `ApplicationProtocol` instance and provides a `SpecExecutor`
1414
/// for executing requests in tests.
15-
/// /This needs to be @unchecked Sendable for now, because TestingSetup is not Sendable
16-
public struct HummingbirdSpecRunner: @unchecked Sendable, SpecRunner {
15+
public struct SpecRunnerHummingbird: SpecRunner {
1716

1817
/// The application that conforms to `ApplicationProtocol`.
1918
private let app: any ApplicationProtocol
@@ -23,7 +22,7 @@ public struct HummingbirdSpecRunner: @unchecked Sendable, SpecRunner {
2322
/// Use `.live` for real request handling or a test setup for faster execution.
2423
private let testingSetup: TestingSetup
2524

26-
/// Initializes a new instance of `HummingbirdSpecRunner`.
25+
/// Initializes a new instance of `SpecRunnerHummingbird`.
2726
///
2827
/// - Parameters:
2928
/// - app: An application conforming to `ApplicationProtocol`.
@@ -39,7 +38,7 @@ public struct HummingbirdSpecRunner: @unchecked Sendable, SpecRunner {
3938
/// Runs a test with the provided block.
4039
///
4140
/// This function uses the application to perform a test with the given setup.
42-
/// It passes a `HummingbirdSpecExecutor` to the block for executing requests.
41+
/// It passes a `SpecHummingbirdExecutor` to the block for executing requests.
4342
///
4443
/// - Parameter block: A closure that takes a `SpecExecutor` and performs asynchronous operations.
4544
///
@@ -48,7 +47,7 @@ public struct HummingbirdSpecRunner: @unchecked Sendable, SpecRunner {
4847
block: @Sendable @escaping (SpecExecutor) async throws -> Void
4948
) async throws {
5049
try await app.test(testingSetup) { client in
51-
try await block(HummingbirdSpecExecutor(client: client))
50+
try await block(SpecExecutorHummingbird(client: client))
5251
}
5352
}
5453
}

0 commit comments

Comments
 (0)