Skip to content

Commit

Permalink
Merge branch 'main' into architecture
Browse files Browse the repository at this point in the history
  • Loading branch information
oleg-nenashev authored Jul 20, 2024
2 parents c5a81c5 + bf9535a commit 257932d
Show file tree
Hide file tree
Showing 10 changed files with 21 additions and 19 deletions.
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Testcontainers for C/C++ and other native languages
# Testcontainers for C/C++/Swift and other native languages

<p align="center">
<img width="512px" src="docs/images/logo/logo_testcontainers_c_wide.png" alt="Testcontainers for C/C++ Logo"/>
<img width="512px" src="docs/images/logo/logo_testcontainers_native_wide.png" alt="Testcontainers Native Logo"/>
</p>

[![Slack: testcontainers-c on slack.testcontainers.org](https://img.shields.io/badge/Slack-%23testcontainers%E2%80%94c-brightgreen?style=flat&logo=slack)](http://slack.testcontainers.org/)
Expand All @@ -24,14 +24,14 @@ Also join the `#testcontainers-c` channel on the [Testcontainers Slack](http://s

## Key Features

- _Testcontainers for C/C++_ - a shared library and C-style headers that can be used in native projects
- Support for [C](./docs/c/README.md), [C++](./docs/cpp/README.md), [Swift](./docs/swift/README.md) and other native projects.
- Minimum viable Testcontainers API functionality:
starting and terminating containers, passing files, exposing ports,
accessing container logs, etc.
- Minimum HTTP client wrapper to simplify requests and assertions
- [Testcontainers for Go](https://golang.testcontainers.org/) under the hood, with all its reporting and resource management capabilities.
Memory might leak a lot in the current versions, but we do not want containers to leak :)
- Support for [C](./docs/c/README.md), [C++](./docs/cpp/README.md), [Swift](./docs/swift/README.md) and other native projects.
- C-style header file for the library. A fancy C++ wrapper is coming soon
- Support for [Testcontainers Modules](./modules/README.md)

This is what a very simple run without a test framework may look like.
Expand Down
4 changes: 2 additions & 2 deletions ROADMAP.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Testcontainers for C/C++. Roadmap
# Testcontainers Native. Roadmap

A full public roadmap is coming soon.
See the [GitHub Issues](https://github.com/testcontainers/testcontainers-c/issues) and,
Expand All @@ -11,7 +11,7 @@ the pinned issues to learn about the key initiatives on the table.
- Add a C++ binding library and class-based headers ([#12](https://github.com/testcontainers/testcontainers-c/issues/12))
- Prototype and document support for other languages that
leverage native libraries, in particular Swift
- Make Testcontainers for C/C++ an official project
- Make Testcontainers Native an official project
listed on the [Testcontainers site](https://testcontainers.com/)
- Publish the project to common C/C++ package managers
([vcpkg](https://github.com/testcontainers/testcontainers-c/issues/2),
Expand Down
2 changes: 1 addition & 1 deletion docs/SECURITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,6 @@ Please do **NOT** use public GitHub Issues for reporting vulnerabilities.

## Bug Bounty

The Testcontainers for C/C++ project is not a part of the official Testcontainers bug bounty program and,
The Testcontainers Native project is not a part of the official Testcontainers bug bounty program and,
as of now, of any other program.
We will be happy to credit you in the public Security Advisory and on social media.
4 changes: 2 additions & 2 deletions docs/SUPPORT.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Support for Testcontainers for C/C++
# Support for Testcontainers Native

[![Slack: testcontainers-c on slack.testcontainers.org](https://img.shields.io/badge/Slack-%23testcontainers%E2%80%94c-brightgreen?style=flat&logo=slack)](http://slack.testcontainers.org/)

Expand Down Expand Up @@ -29,7 +29,7 @@ Read More - [Security Policy](./SECURITY.md),

The creator of this project, Oleg Nenashev,
is [available for consulting projects](https://oleg-nenashev.github.io/oleg-nenashev/consulting/) in the areas of developer tools,
including Testcontainers for C/C++.
including Testcontainers Native and adapters for C/C++.
Development of this project will continue regardless of commercial contracts,
but of course your support can help the project to move forward.
[GitHub Sponsorships](https://github.com/sponsors/oleg-nenashev) will be appreciated too.
5 changes: 3 additions & 2 deletions docs/getting-started.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
# Getting Started with Testcontainers for C/C++

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

For a test framework framework example, see the [demos](../demo/README.md).
For test framework framework examples, see the [demos](../demo/README.md).

## Build the Project

Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion docs/swift/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Using Testcontainers in Swift

The Testcontainers C/C++ library is compatible with native languages, and that includes Swift. To use the library in Swift, a few extra steps must be followed in order for it to be useable.
The Testcontainers for C/C++ library is compatible with native languages, and that includes Swift. To use the library in Swift, a few extra steps must be followed in order for it to be useable.

## Using the generic Testcontainer C API

Expand Down
11 changes: 6 additions & 5 deletions mkdocs.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
site_name: Testcontainers for C/C++
site_name: Testcontainers Native
site_description: >-
Testcontainers for C/C++ is not a standalone Testcontainers engine,
but a C-style shared library adapter for C/C++, Swift, and other native projects.
Testcontainers for C/C++/Swift and other native projects.
It is not a standalone Testcontainers engine,
but a shared bridge library and language-specific adapters.
The project is based on Testcontainers for Go which is one of the most powerful Testcontainers implementations.
copyright: >-
Copyright &copy; 2024 - Oleg Nenashev and all contributors.
repo_url: https://github.com/testcontainers/testcontainers-c
repo_url: https://github.com/testcontainers/testcontainers-native
repo_name: GitHub Repo
edit_uri: edit/main/
site_url: https://testcontainers.github.io/testcontainers-c
site_url: https://testcontainers.github.io/testcontainers-native

# Build
site_dir: _site
Expand Down
4 changes: 2 additions & 2 deletions modules/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Testcontainers for C/C++. Modules
# Testcontainers Native. Modules

As for other Testcontainers implementations, Testcontainers for C/C++ allow writing
As for other Testcontainers implementations, Testcontainers Native allows writing
extensions that extend the SDK and APIs to make usage of a particular service provider
easier.
The expectation is that the modules are implemented in a separate dynamic library
Expand Down

0 comments on commit 257932d

Please sign in to comment.