#gtk #native #run #emulation #olympia #applications #testing

app olympia_native

Olympia是一个Gameboy模拟器和工具包,旨在以本地或Web Assembly应用程序的形式运行,目标是实现周期计数准确的模拟。olympia_native是正在进行的本地UI工作

2个不稳定版本

0.2.0 2020年5月10日
0.1.0 2019年12月13日

#359 in 模拟器

GPL-3.0-or-later

355KB
9K SLoC

使用GTK的本地Olympia GUI

关于测试的说明

GTK只允许从单个线程访问GTK小部件。Cargo默认情况下在许多线程上运行测试。这意味着如果在不同线程上运行,访问GTK小部件的线程会导致失败,因为它们会破坏GTK的内部状态。由于测试通常是在整个olympia套件的上下文中运行的,因此以单线程运行整个套件是不理想的。

为了允许在项目中的整个测试中实现并行性,同时还要编写实际使用GTK的测试,使用GTK的测试前缀为gtk_

test.sh然后运行两次,第一次是一个多线程运行,跳过这些测试并运行其他测试,第二次是一个单线程运行,只运行这些测试。.tarpaulin.yaml以类似的方式配置tarpaulin。

依赖项

~15MB
~368K SLoC