Skip to content

Commit a9c687e

Browse files
committed
Merge branch 'main' of https://github.com/testcontainers/testcontainers-native into devcontainer
2 parents c8da752 + ab12ccc commit a9c687e

File tree

11 files changed

+90
-47
lines changed

11 files changed

+90
-47
lines changed

.github/workflows/deploy-site.yml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,10 @@ jobs:
5252
GITHUB_TOKEN=${{ secrets.GITHUB_TOKEN }}
5353
5454
- name: Upload artifact
55-
# Automatically uploads an artifact from the './_site' directory by default
56-
uses: actions/upload-pages-artifact@v1
55+
uses: actions/upload-pages-artifact@v3
56+
with:
57+
name: github-pages
58+
path: "_site/"
5759

5860
deploy-site:
5961
environment:
@@ -64,4 +66,4 @@ jobs:
6466
steps:
6567
- name: Deploy to GitHub Pages
6668
id: deployment
67-
uses: actions/deploy-pages@v2
69+
uses: actions/deploy-pages@v4

CONTRIBUTING.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ cmake -DSKIP_DEMOS=true .
3838
## Contributing to the Documentation
3939

4040
The documentation is structured in the MkDocs format and uses Material for MkDocs.
41-
To develop the site in this repository, start it in the [Dev Containers](.devcontainer/README.md)
41+
To develop the site in this repository, start it in a [Dev Container](.devcontainer/README.md)
4242
and use the following commands:
4343

4444
```shell
@@ -57,4 +57,4 @@ mkdocs build
5757
- `tc_` is used as a prefix for all exported Testcontainers functions
5858
- When possible, we try to avoid special Golang types in public API and try to expose wrapper types
5959
- `const` is important for users, and please add it to your arguments when possible.
60-
There is no Const in Golang, so some `typedef` injection is needed when importing CGo
60+
There is no `const` in Golang, so some `typedef` injection is needed when importing CGo

README.md

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,12 @@
44
<img width="512px" src="docs/images/logo/logo_testcontainers_native_wide.png" alt="Testcontainers Native Logo"/>
55
</p>
66

7-
[![Slack: testcontainers-native on slack.testcontainers.org](https://img.shields.io/badge/Slack-%23testcontainers%E2%80%94native-brightgreen?style=flat&logo=slack)](http://slack.testcontainers.org/)
7+
[![Slack: testcontainers-native on slack.testcontainers.org](https://img.shields.io/badge/Slack-%23testcontainers%E2%80%94native-brightgreen?style=flat&logo=slack)](https://slack.testcontainers.org/)
88
[![Stability: Experimental](https://masterminds.github.io/stability/experimental.svg)](https://masterminds.github.io/stability/experimental.html)
99
[![GitHub release (latest by date)](https://img.shields.io/github/v/release/oleg-nenashev/testcontainers-c)](https://github.com/oleg-nenashev/testcontainers-c/releases)
1010

11-
!!! warning
12-
This is a prototype.
13-
There is a lot to do before it can be distributed and used in production, see the GitHub Issues
14-
and the [project roadmap](./ROADMAP.md)
11+
> [!WARNING]
12+
> This is a prototype. There is a lot to do before it can be distributed and used in production, see the GitHub Issues and the [project roadmap](./ROADMAP.md)
1513
1614
This is not a standalone [Testcontainers](https://testcontainers.org/) engine,
1715
but a C-style shared library adapter for native languages like C/C++, D, Lua, Swift, etc.
@@ -20,7 +18,7 @@ The project is based on [Testcontainers for Go](https://golang.testcontainers.or
2018
which is one of the most powerful Testcontainers implementations.
2119

2220
Contributions and feedback are welcome!
23-
Also join the `#testcontainers-native` channel on the [Testcontainers Slack](http://slack.testcontainers.org/).
21+
Also join the `#testcontainers-native` channel on the [Testcontainers Slack](https://slack.testcontainers.org/).
2422

2523
## Key Features
2624

@@ -88,9 +86,7 @@ describes how it can be done in principle.
8886
## Credits
8987

9088
Using a complex Golang framework from C/C++ is not trivial.
91-
Neither the CMake files are.
92-
This project would not succeed without many quality articles
93-
and help from the community.
89+
Neither are the CMake files. This project would not succeed without many quality articles and help from the community.
9490

9591
Kudos to:
9692

@@ -102,12 +98,12 @@ Kudos to:
10298
[An Adventure into CGO - Calling Go code with C](https://medium.com/@ben.mcclelland/an-adventure-into-cgo-calling-go-code-with-c-b20aa6637e75)
10399
- [Insu Jang](https://github.com/insujang) for
104100
[Implementing Kubernetes C++ Client Library using Go Client Library](https://insujang.github.io/2019-11-28/implementing-kubernetes-cpp-client-library)
105-
- Infinite number of StackOverflow contributors
101+
- An infinite number of StackOverflow contributors
106102

107103
## Discuss
108104

109105
For any questions and feedback,
110-
join the `#testcontainers-native` channel on the [Testcontainers Slack](http://slack.testcontainers.org/).
106+
join the `#testcontainers-native` channel on the [Testcontainers Slack](https://slack.testcontainers.org/).
111107

112108
## Support the Project
113109

ROADMAP.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,15 @@ the pinned issues to learn about the key initiatives on the table.
99

1010
## Key Objectives
1111

12-
- Ensure sufficient feature parity with Testcontainers for Go ([#6](https://github.com/testcontainers/testcontainers-c/issues/6))
13-
- Add a C++ binding library and class-based headers ([#12](https://github.com/testcontainers/testcontainers-c/issues/12))
14-
- Prototype and document support for other languages that
12+
What we want to do before 1.0:
13+
14+
- [ ] Ensure sufficient feature parity with Testcontainers for Go ([#6](https://github.com/testcontainers/testcontainers-c/issues/6))
15+
- [ ] Add a C++ binding library and class-based headers ([#12](https://github.com/testcontainers/testcontainers-c/issues/12))
16+
- [ ] Prototype and document support for other languages that
1517
leverage native libraries, in particular Swift
16-
- Make Testcontainers Native an official project
18+
- [x] Make Testcontainers Native an official project
1719
listed on the [Testcontainers site](https://testcontainers.com/)
18-
- Publish the project to common C/C++ package managers
20+
- [ ] Publish the project to common C/C++ package managers
1921
([vcpkg](https://github.com/testcontainers/testcontainers-c/issues/2),
2022
[Conan](https://github.com/testcontainers/testcontainers-c/issues/3))
2123

docs/SUPPORT.md

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,13 @@ At the moment, this is single channel for all project matters.
1313

1414
## Raising Issues and Feature Requests
1515

16-
Use [GitHub Issues](https://github.com/testcontainers/testcontainers-c/issues).
16+
Use [GitHub Issues](https://github.com/testcontainers/testcontainers-native/issues).
1717
Note that it may take some time to get a response, thanks for your patience.
1818
Contributions are always welcome, see the [Contributor Guide](../CONTRIBUTING.md).
1919

2020
## Reporting Security Issues
2121

22-
You can submit any security issue or suspected vulnerability
23-
on [GitHub Security](https://github.com/testcontainers/testcontainers-c/security/advisories).
24-
Please do NOT use public GitHub Issues for reporting vulnerabilities.
25-
26-
Read More - [Security Policy](./SECURITY.md).
22+
See the [Security Policy](./SECURITY.md).
2723

2824
## Commercial Support and Customization
2925

docs/architecture/README.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
# Architecture
22

3-
!!! note
4-
This section is coming soon.
5-
All contributions are welcome, just submit a pull request!
3+
> [!NOTE]
4+
> This section is coming soon. All contributions are welcome, just submit a pull request!
65
76
## Build Process
87

docs/c/README.md

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,8 @@
33
You can use the `testcontainers-c` library with common C
44
unit testing frameworks and, soon, with package managers.
55

6-
!!! note
7-
This section is coming soon.
8-
All contributions are welcome, just submit a pull request!
6+
> [!NOTE]
7+
> This section is coming soon. All contributions are welcome, just submit a pull request!
98
109
## Installing the library
1110

@@ -39,9 +38,8 @@ CPMAddPackage(
3938

4039
## Using the Library
4140

42-
!!! note
43-
More frameworks will be documented soon.
44-
All contributions are welcome, just submit a pull request!
41+
> [!NOTE]
42+
> More frameworks will be documented soon. All contributions are welcome, just submit a pull request!
4543
4644
### CMake Tests (CTest)
4745

docs/cpp/README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
At the moment, there is no dedicated C++ binding library/header,
44
but it is on [our roadmap](../../ROADMAP.md).
5-
Tou can use the `testcontainers-c` library directly
5+
You can use the `testcontainers-c` library directly
66
in all C++ testing frameworks.
77

88
## Google Test
@@ -29,10 +29,10 @@ protected:
2929
tc_with_exposed_tcp_port(requestId, 8080);
3030
tc_with_wait_for_http(requestId, 8080, WIREMOCK_ADMIN_MAPPING_ENDPOINT);
3131
tc_with_file(requestId, "test_data/hello.json", "/home/wiremock/mappings/hello.json");
32-
32+
3333
struct tc_run_container_return ret = tc_run_container(requestId);
3434
containerId = ret.r0;
35-
35+
3636
EXPECT_TRUE(ret.r1) << "Failed to run the container: " << ret.r2;
3737
};
3838

@@ -51,10 +51,10 @@ Then, you can define new tests by referring to the container via `containerId`.
5151
TEST_F(WireMockTestContainer, HelloWorld) {
5252
std::cout << "Sending HTTP request to the container\n";
5353
struct tc_send_http_get_return response = tc_send_http_get(containerId, 8080, "/hello");
54-
54+
5555
ASSERT_NE(response.r0, -1) << "Failed to send HTTP request: " << response.r2;
5656
ASSERT_EQ(response.r0, 200) << "Received wrong response code: " << response.r1 << response.r2;
57-
57+
5858
std::cout << "Server Response: HTTP-" << response.r0 << '\n' << response.r1 << '\n';
5959
}
6060
```

docs/getting-started.md

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
11
# Getting Started with Testcontainers for C/C++
22

3-
In this section, we will build a demo C application that uses Testcontainers
4-
in a simple C application
5-
for deploying a [WireMock](https://wiremock.org/) API server,
6-
sends a simple HTTP request to this service,
3+
In this section, we will build a simple demo C application that uses Testcontainers
4+
for deploying a [WireMock](https://wiremock.org/) API server.
5+
It sends a simple HTTP request to this service,
76
and verifies the response.
8-
We will not be using any C/C++ test framework for that.
7+
We will not be using any test framework for that.
98

10-
For test framework framework examples, see the [demos](../demo/README.md).
9+
For test framework examples, see the [demos](../demo/README.md).
1110

1211
## Build the Project
1312

flake.lock

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

0 commit comments

Comments
 (0)