Spaces:
Runtime error
Runtime error
Mohammed Thameem commited on
Commit ·
e950355
1
Parent(s): 9506837
WIP before rebase
Browse files- tests/test_app.py +7 -2
tests/test_app.py
CHANGED
|
@@ -1,7 +1,9 @@
|
|
| 1 |
import sys, os
|
| 2 |
import pytest
|
|
|
|
| 3 |
from unittest.mock import MagicMock
|
| 4 |
|
|
|
|
| 5 |
class DummyTokenizer:
|
| 6 |
pad_token_id = 0
|
| 7 |
eos_token_id = 1
|
|
@@ -11,7 +13,8 @@ class DummyTokenizer:
|
|
| 11 |
return "mock_prompt"
|
| 12 |
|
| 13 |
def __call__(self, prompt, return_tensors=None):
|
| 14 |
-
|
|
|
|
| 15 |
|
| 16 |
def decode(self, tokens, skip_special_tokens=True):
|
| 17 |
return "• Easy switch"
|
|
@@ -20,14 +23,16 @@ class DummyTokenizer:
|
|
| 20 |
class DummyModel:
|
| 21 |
def to(self, device): return self
|
| 22 |
def eval(self): return self
|
| 23 |
-
def generate(self, **kwargs): return [[0, 1, 2, 3]]
|
| 24 |
|
| 25 |
|
|
|
|
| 26 |
sys.modules["transformers"] = MagicMock(
|
| 27 |
AutoTokenizer=MagicMock(from_pretrained=lambda *a, **kw: DummyTokenizer()),
|
| 28 |
AutoModelForCausalLM=MagicMock(from_pretrained=lambda *a, **kw: DummyModel())
|
| 29 |
)
|
| 30 |
|
|
|
|
| 31 |
import app
|
| 32 |
|
| 33 |
|
|
|
|
| 1 |
import sys, os
|
| 2 |
import pytest
|
| 3 |
+
import torch
|
| 4 |
from unittest.mock import MagicMock
|
| 5 |
|
| 6 |
+
# --- Create dummy replacements ---
|
| 7 |
class DummyTokenizer:
|
| 8 |
pad_token_id = 0
|
| 9 |
eos_token_id = 1
|
|
|
|
| 13 |
return "mock_prompt"
|
| 14 |
|
| 15 |
def __call__(self, prompt, return_tensors=None):
|
| 16 |
+
# Must look like transformers output
|
| 17 |
+
return {"input_ids": torch.tensor([[0, 1]])}
|
| 18 |
|
| 19 |
def decode(self, tokens, skip_special_tokens=True):
|
| 20 |
return "• Easy switch"
|
|
|
|
| 23 |
class DummyModel:
|
| 24 |
def to(self, device): return self
|
| 25 |
def eval(self): return self
|
| 26 |
+
def generate(self, **kwargs): return torch.tensor([[0, 1, 2, 3]])
|
| 27 |
|
| 28 |
|
| 29 |
+
# --- Insert mocks into sys.modules before app is imported ---
|
| 30 |
sys.modules["transformers"] = MagicMock(
|
| 31 |
AutoTokenizer=MagicMock(from_pretrained=lambda *a, **kw: DummyTokenizer()),
|
| 32 |
AutoModelForCausalLM=MagicMock(from_pretrained=lambda *a, **kw: DummyModel())
|
| 33 |
)
|
| 34 |
|
| 35 |
+
# Now safe to import app
|
| 36 |
import app
|
| 37 |
|
| 38 |
|