MCPcopy Index your code
hub / github.com/CodeSandwich/Mocktopus

github.com/CodeSandwich/Mocktopus @0.8.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release 0.8.0 ↗ · + Follow
431 symbols 966 edges 46 files 8 documented · 2%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Crates.io Docs.rs Build Status

logo

Mocking framework for Rust (currently only nightly). See documentation for more.

#[mockable]
mod hello_world {
    pub fn world() -> &'static str {
        "world"
    }

    pub fn hello_world() -> String {
        format!("Hello {}!", world())
    }
}

#[test]
fn mock_test() {
    hello_world::world.mock_safe(|| MockResult::Return("mocking"));

    assert_eq!("Hello mocking!", hello_world::hello_world());
}

Extension points exported contracts — how you extend this code

Trait (Interface)
(no doc) [6 implementers]
tests/injecting.rs
Mockable (Interface)
Trait for setting up mocks The trait is implemented for all functions, so its methods can be called on any function. N [1 …
src/mocking.rs
Trait (Interface)
(no doc) [2 implementers]
tests/mocking.rs
Trait (Interface)
(no doc) [2 implementers]
tests/mocking_traits/mod.rs
Trait (Interface)
(no doc) [2 implementers]
tests/mocking_trait_defaults/mod.rs
MockedTrait (Interface)
(no doc) [3 implementers]
tests/injecting.rs
Trait (Interface)
(no doc) [1 implementers]
tests/mocking_traits/when_trait_generic_struct_generic_method_generic.rs
Trait (Interface)
(no doc) [1 implementers]
tests/mocking_trait_defaults/when_trait_generic_struct_generic_method_generic.rs

Core symbols most depended-on inside this repo

mock_raw
called by 240
src/mocking.rs
mock_safe
called by 48
src/mocking.rs
as_mut
called by 24
src/mocking_utils.rs
to_string
called by 18
tests/mocking_trait_defaults/when_trait_generic_struct_generic_method_generic.rs
run
called by 9
src/mocking.rs
replace_self_in_stmt
called by 8
macros/src/item_injector.rs
is_not_mockable
called by 4
macros/src/item_injector.rs
replace_self_in_path
called by 4
macros/src/item_injector.rs

Shape

Function 215
Method 151
Class 39
Interface 22
Enum 4

Languages

Rust100%

Modules by API surface

tests/mocking.rs39 symbols
tests/injecting.rs29 symbols
src/mock_store.rs16 symbols
macros/src/item_injector.rs16 symbols
tests/mocking_trait_defaults/when_trait_regular_struct_regular_method_generic.rs13 symbols
tests/mocking_trait_defaults/when_trait_regular_struct_generic_method_regular.rs13 symbols
tests/mocking_trait_defaults/when_trait_regular_struct_generic_method_generic.rs13 symbols
tests/mocking_trait_defaults/when_trait_generic_struct_regular_method_generic.rs13 symbols
tests/mocking_trait_defaults/when_trait_generic_struct_generic_method_regular.rs13 symbols
tests/mocking_trait_defaults/when_trait_generic_struct_generic_method_generic.rs13 symbols
src/mocking.rs13 symbols
macros/src/header_builder.rs12 symbols

For agents

$ claude mcp add Mocktopus \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact