示例#1
0
def test_dump_and_load():
    mr = file.ModelRegistry("test")
    mr.register(ExampleModel, param="parameter")
    mr.dump("test")

    new_mr = file.ModelRegistry("test")
    new_mr.load("test")
    assert new_mr.model_.a == mr.model_.a
示例#2
0
def test_pickle_insert(files_dir):
    path = str(files_dir.join("dump.pkl"))
    mr = file.ModelRegistry("test")
    mr.register(ExampleModelBare, insert_methods="pickle", param="parameter")
    mr.dump(path)

    # create new MR
    mr_ = file.ModelRegistry("test")
    mr_.load(path)
    assert type(mr.model_.a) == type(mr_.model_.a)
示例#3
0
def test_dump_and_load_bytesio():
    mr = file.ModelRegistry("test")
    mr.register(ExampleModel, param="parameter")
    f = io.BytesIO()
    mr.dump(f)
    f.seek(0)

    new_mr = file.ModelRegistry("test")
    new_mr.load(f)
    assert new_mr.model_.a == mr.model_.a
示例#4
0
def test_jit_register(files_dir):
    path = str(files_dir.join("dump.pkl"))

    model = ExampleModelBare("parameter")
    mr = file.ModelRegistry("test")
    mr.register(model, insert_methods='pickle')
    mr.dump(path)

    # create new MR
    mr_ = file.ModelRegistry("test")
    mr_.load(path)
    assert type(mr.model_.a) == type(mr_.model_.a)
示例#5
0
def test_add_dump_methods():
    mr = file.ModelRegistry("test")
    mr.register(ExampleModel, insert_methods="pytorch", param="parameter")

    assert hasattr(mr.model_, "save")
    assert hasattr(mr.model_, "load")

    # Pytorch save method calls self.state_dict, which doesn't exist.
    with pytest.raises(AttributeError):
        f = io.BytesIO()
        mr.model_.save(f)
示例#6
0
def test_raise():
    mr = file.ModelRegistry("test")
    with pytest.raises(ValueError):
        mr.register(ExampleModelBare, param="parameter")
示例#7
0
def test_load_model_source():
    mr = file.ModelRegistry("test")
    with open(os.path.join(os.path.dirname(__file__), "test/test.pth"),
              "rb") as f:
        assert isinstance(mr.load_model_source(f), str)