Skip to content

Commit bd14814

Browse files
authored
Merge pull request #64 from bgreni/user_mojo_test_runner
Use Mojo test runner
2 parents e695225 + 6214c13 commit bd14814

File tree

14 files changed

+21
-118
lines changed

14 files changed

+21
-118
lines changed

.github/workflows/test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,5 @@ jobs:
1414
run: |
1515
curl -ssL https://magic.modular.com | bash
1616
source $HOME/.bash_profile
17-
magic run mojo run_tests.mojo
17+
magic run test
1818

.gitignore

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,7 @@ install_id
1212
.magic
1313

1414
# Rattler
15-
output
15+
output
16+
17+
# misc
18+
.vscode

bench.mojo

Lines changed: 0 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,6 @@ from lightbug_http.header import Headers, Header
44
from lightbug_http.utils import ByteReader, ByteWriter
55
from lightbug_http.http import HTTPRequest, HTTPResponse, encode
66
from lightbug_http.uri import URI
7-
from tests.utils import (
8-
TestStruct,
9-
FakeResponder,
10-
new_fake_listener,
11-
FakeServer,
12-
)
137

148
alias headers = bytes(
159
"""GET /index.html HTTP/1.1\r\nHost: example.com\r\nUser-Agent: Mozilla/5.0\r\nContent-Type: text/html\r\nContent-Length: 1234\r\nConnection: close\r\nTrailer: end-of-message\r\n\r\n"""
@@ -148,43 +142,3 @@ fn lightbug_benchmark_header_parse(inout b: Bencher):
148142

149143
b.iter[header_parse]()
150144

151-
152-
fn lightbug_benchmark_server():
153-
var server_report = benchmark.run[run_fake_server](max_iters=1)
154-
print("Server: ")
155-
server_report.print(benchmark.Unit.ms)
156-
157-
158-
fn lightbug_benchmark_misc() -> None:
159-
var direct_set_report = benchmark.run[init_test_and_set_a_direct](
160-
max_iters=1
161-
)
162-
163-
var recreating_set_report = benchmark.run[init_test_and_set_a_copy](
164-
max_iters=1
165-
)
166-
167-
print("Direct set: ")
168-
direct_set_report.print(benchmark.Unit.ms)
169-
print("Recreating set: ")
170-
recreating_set_report.print(benchmark.Unit.ms)
171-
172-
173-
var GetRequest = HTTPRequest(URI.parse("http://127.0.0.1/path")[URI])
174-
175-
176-
fn run_fake_server():
177-
var handler = FakeResponder()
178-
var listener = new_fake_listener(2, encode(GetRequest))
179-
var server = FakeServer(listener, handler)
180-
server.serve()
181-
182-
183-
fn init_test_and_set_a_copy() -> None:
184-
var test = TestStruct("a", "b")
185-
_ = test.set_a_copy("c")
186-
187-
188-
fn init_test_and_set_a_direct() -> None:
189-
var test = TestStruct("a", "b")
190-
_ = test.set_a_direct("c")

mojoproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ version = "0.1.4"
99
[tasks]
1010
build = { cmd = "rattler-build build --recipe recipes -c https://conda.modular.com/max -c conda-forge --skip-existing=all", env = {MODULAR_MOJO_IMPORT_PATH = "$CONDA_PREFIX/lib/mojo"} }
1111
publish = { cmd = "bash scripts/publish.sh", env = { PREFIX_API_KEY = "$PREFIX_API_KEY" } }
12-
test = { cmd = "magic run mojo run_tests.mojo" }
12+
test = { cmd = "magic run mojo test -I . tests" }
1313
bench = { cmd = "magic run mojo bench.mojo" }
1414
bench_server = { cmd = "magic run mojo build bench_server.mojo && ./bench_server ; rm bench_server" }
1515
format = { cmd = "magic run mojo format -l 120 lightbug_http" }

run_tests.mojo

Lines changed: 0 additions & 13 deletions
This file was deleted.

tests/__init__.mojo

Whitespace-only changes.

tests/test_io.mojo renamed to tests/lightbug_http/io/test_bytes.mojo

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,6 @@ from collections import Dict, List
33
from lightbug_http.io.bytes import Bytes, bytes_equal, bytes
44

55

6-
def test_io():
7-
test_string_literal_to_bytes()
8-
9-
106
fn test_string_literal_to_bytes() raises:
117
var cases = Dict[StringLiteral, Bytes]()
128
cases[""] = Bytes()

tests/test_client.mojo renamed to tests/lightbug_http/sys/test_client.mojo

Lines changed: 12 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,13 @@
11
import testing
2-
from tests.utils import (
3-
default_server_conn_string,
4-
)
52
from lightbug_http.sys.client import MojoClient
63
from lightbug_http.http import HTTPRequest, encode
74
from lightbug_http.uri import URI
85
from lightbug_http.header import Header, Headers
96
from lightbug_http.io.bytes import bytes
107

118

12-
def test_client():
13-
var mojo_client = MojoClient()
14-
print("running 200 test")
15-
test_mojo_client_lightbug_external_req_200(mojo_client)
16-
17-
print("running 301 test")
18-
test_mojo_client_redirect_external_req_301(mojo_client)
19-
20-
# Seems like trying to run too many of these at once results in
21-
# a 502 from httpbin
22-
23-
# print("running 302 test")
24-
# test_mojo_client_redirect_external_req_302(mojo_client)
25-
# print("running 307 test")
26-
# test_mojo_client_redirect_external_req_307(mojo_client)
27-
# print("running 308 test")
28-
# test_mojo_client_redirect_external_req_308(mojo_client)
29-
# test_mojo_client_redirect_external_req_google(mojo_client)
30-
31-
32-
fn test_mojo_client_redirect_external_req_google(client: MojoClient) raises:
9+
fn test_mojo_client_redirect_external_req_google() raises:
10+
var client = MojoClient()
3311
var req = HTTPRequest(
3412
uri=URI.parse_raises("http://google.com"),
3513
headers=Headers(
@@ -42,7 +20,8 @@ fn test_mojo_client_redirect_external_req_google(client: MojoClient) raises:
4220
except e:
4321
print(e)
4422

45-
fn test_mojo_client_redirect_external_req_302(client: MojoClient) raises:
23+
fn test_mojo_client_redirect_external_req_302() raises:
24+
var client = MojoClient()
4625
var req = HTTPRequest(
4726
uri=URI.parse_raises("http://httpbin.org/status/302"),
4827
headers=Headers(
@@ -55,7 +34,8 @@ fn test_mojo_client_redirect_external_req_302(client: MojoClient) raises:
5534
except e:
5635
print(e)
5736

58-
fn test_mojo_client_redirect_external_req_308(client: MojoClient) raises:
37+
fn test_mojo_client_redirect_external_req_308() raises:
38+
var client = MojoClient()
5939
var req = HTTPRequest(
6040
uri=URI.parse_raises("http://httpbin.org/status/308"),
6141
headers=Headers(
@@ -68,7 +48,8 @@ fn test_mojo_client_redirect_external_req_308(client: MojoClient) raises:
6848
except e:
6949
print(e)
7050

71-
fn test_mojo_client_redirect_external_req_307(client: MojoClient) raises:
51+
fn test_mojo_client_redirect_external_req_307() raises:
52+
var client = MojoClient()
7253
var req = HTTPRequest(
7354
uri=URI.parse_raises("http://httpbin.org/status/307"),
7455
headers=Headers(
@@ -81,7 +62,8 @@ fn test_mojo_client_redirect_external_req_307(client: MojoClient) raises:
8162
except e:
8263
print(e)
8364

84-
fn test_mojo_client_redirect_external_req_301(client: MojoClient) raises:
65+
fn test_mojo_client_redirect_external_req_301() raises:
66+
var client = MojoClient()
8567
var req = HTTPRequest(
8668
uri=URI.parse_raises("http://httpbin.org/status/301"),
8769
headers=Headers(
@@ -95,7 +77,8 @@ fn test_mojo_client_redirect_external_req_301(client: MojoClient) raises:
9577
except e:
9678
print(e)
9779

98-
fn test_mojo_client_lightbug_external_req_200(client: MojoClient) raises:
80+
fn test_mojo_client_lightbug_external_req_200() raises:
81+
var client = MojoClient()
9982
var req = HTTPRequest(
10083
uri=URI.parse_raises("http://httpbin.org/status/200"),
10184
headers=Headers(

tests/test_header.mojo renamed to tests/lightbug_http/test_header.mojo

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,8 @@ from testing import assert_equal, assert_true
22
from lightbug_http.utils import ByteReader
33
from lightbug_http.header import Headers, Header
44
from lightbug_http.io.bytes import Bytes, bytes
5-
from lightbug_http.strings import empty_string
6-
from lightbug_http.net import default_buffer_size
75

86

9-
def test_header():
10-
test_parse_request_header()
11-
test_parse_response_header()
12-
test_header_case_insensitive()
13-
147

158
def test_header_case_insensitive():
169
var headers = Headers(Header("Host", "SomeHost"))

tests/test_http.mojo renamed to tests/lightbug_http/test_http.mojo

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,9 @@ from lightbug_http.http import HTTPRequest, HTTPResponse, encode
55
from lightbug_http.header import Header, Headers, HeaderKey
66
from lightbug_http.uri import URI
77
from lightbug_http.strings import to_string
8-
from tests.utils import default_server_conn_string
98

9+
alias default_server_conn_string = "http://localhost:8080"
1010

11-
def test_http():
12-
test_encode_http_request()
13-
test_encode_http_response()
1411

1512

1613
def test_encode_http_request():

0 commit comments

Comments
 (0)