Вопросы по теме 'monkeypatching'

Можно ли заменить (monkeypatch) функции PHP?
Вы можете сделать это в Python, но возможно ли это в PHP? >>> def a(): print 1 ... >>> def a(): print 2 ... >>> a() 2 e.g.: <? function var_dump() {} ?> Fatal error: Cannot redeclare var_dump() in /tmp/-...
7782 просмотров
schedule 08.12.2023

Как динамически добавить свойство в класс?
Цель состоит в том, чтобы создать фиктивный класс, который ведет себя как набор результатов db. Так, например, если запрос к базе данных возвращается с использованием выражения dict, {'ab':100, 'cd':200} , я хотел бы видеть: >>>...
285134 просмотров
schedule 03.08.2023

Патч (обезьяна) или не патч (обезьяна), вот в чем вопрос
Я говорил с коллегой об одном довольно неожиданном / нежелательном поведении какого-то пакета, который мы используем. Хотя с нашей стороны есть простое исправление (или, по крайней мере, обходной путь) без каких-либо явных побочных эффектов, он...
731 просмотров

Могу ли я заменить или изменить функцию в виджете jQuery UI? Как? (Патч обезьяны)
Если я хочу настроить некоторые возможности объекта пользовательского интерфейса jQuery, заменив одну из функций, как я могу это сделать? Пример: предположим, я хотел изменить способ отображения предложений виджетом автозаполнения jQuery. Для...
5254 просмотров
schedule 21.05.2023

Как мне исправить метод Ruby URI.parse с обезьяньим патчем
Некоторые популярные блог-сайты обычно используют квадратные скобки в своих URL-адресах, но встроенный в ruby ​​метод URI.parse() подавляет их, вызывая неприятное исключение, например: http://redmine.ruby-lang.org./issues/show/1466 Я пытаюсь...
2843 просмотров
schedule 12.07.2023

Как исправить код обезьяны, который автоматически загружается в Rails?
Я исправляю обезьяний движок Rails с чем-то вроде: SomeClass.class_eval do # ... end В первый раз, когда я попал на веб-сайт, по крайней мере, в режиме разработки, он работает, но во второй раз, как будто моего патча никогда не...
9738 просмотров

Ruby: Как добавить методы в Object? (или просто расширить класс объекта)
Я хочу расширить Object, чтобы добавить несколько методов. так что я могу сделать @object.table_name , а не @object.class.name.tableize и тому подобное. Я использую Ruby 1.8.7 и Rails 2.3.8, так что, может быть, такие вещи будут в папке...
1028 просмотров
schedule 16.05.2024

Метод PostgreSQLAdapter обезьяны патч ActiveRecord в
Что касается Этот вопрос / a>, я пытаюсь переопределить метод postgresql_version , определенный в ActiveRecord::ConnectionAdapters::PostgreSQLAdapter , который возвращает версию PostgreSQL: module ActiveRecord module ConnectionAdapters...
1551 просмотров

Добавить поддержку SQL 2014 в activerecord-sqlserver-adapter.
Мы используем гем activerecord-sqlserver-adapter с sqlserver 2008, и все отлично работает. Мы только что попытались развернуть наше приложение Rails 3 на новой базе данных sqlserver 2014, и я получаю сообщение об ошибке: Currently, only 2005,...
1869 просмотров

Функция Monkey patch django.util.cache
У меня возникли проблемы с выяснением того, как обезьяна исправляет несколько функций в django.util.cache . Я не хочу писать свое собственное промежуточное ПО для кэширования, мне просто нужны ключи, которые немного легче проглотить. Свойство...
330 просмотров
schedule 08.02.2023

Ruby, использующий prepend для исправления класса, не работает
Я пытаюсь исправить методы глагола в Sinatra, чтобы добавить перед ним дополнительный вызов функции. У меня были проблемы с использованием цепочки псевдонимов для сохранения исходных методов, но я обнаружил, что prepend позволяет мне делать то, что я...
669 просмотров
schedule 22.08.2022

Обезьяна исправляет @property
Возможно ли вообще обезьяна исправить значение @property экземпляра класса, который я не контролирую? class Foo: @property def bar(self): return here().be['dragons'] f = Foo() print(f.bar) # baz f.bar = 42 # MAGIC!...
7248 просмотров
schedule 05.08.2022

Могу ли я использовать module#prepend вместо alias_method_chain, чтобы исправить эту проблему?
Я исправляю проблему в токене Devise. Драгоценный камень аутентификации . У меня он работает с alias_method_chain , но мне интересно, могу ли я использовать вместо него module#prepend в этом сценарии? Примечание. Мы работаем на ruby...
919 просмотров

Изменить поведение функции без прокси
Я могу сделать что-то вроде этого: var foo = ...// some function assignment var fooString = foo.toString() ... // add some alert to foo ... var fooWithAlert = new Function(forStringWithAlert) Есть ли способ изменить первый foo вместо...
141 просмотров
schedule 19.03.2023

Как создать новые объекты замыкающей ячейки?
Мне нужно исправить мою библиотеку, чтобы заменить экземпляр символа, и на него ссылаются некоторые замыкания функций. Мне нужно скопировать эти функции (поскольку мне также нужен доступ к исходной неисправленной версии функции), но __closure__...
1673 просмотров

порядок исправления обезьяны gevent
На работе мы используем gevent для создания нескольких асинхронных серверов, и есть некоторые споры о том, когда выполнять исправление обезьян по отношению к другим модулям. Документация gevent показывает такие вещи: from gevent import monkey...
1979 просмотров
schedule 01.03.2022

В чем разница между насмешкой и исправлением обезьяны?
Я работаю с python и немного новичок в тестировании. Я часто вижу тесты, заменяющие внешнюю зависимость локальным методом, например так: import some_module def get_file_data(): return "here is the pretend file data"...
8498 просмотров

Может ли установка Monkey заменить существующее определение функции в классе?
Я знаю, насколько жестко сообщество SO, поэтому постараюсь сделать все возможное, чтобы вопрос был минимальным, полным и проверяемым . Я просто хочу знать, можно ли использовать исправление обезьяны для замены определения существующей функции?...
2477 просмотров
schedule 04.10.2023

Лучшие практики обезьяньего исправления Python
Я тестирую приложение, которое имеет несколько внешних зависимостей, и я использовал методы обезьяньего исправления, чтобы исправить функции внешних библиотек с помощью пользовательской реализации, чтобы помочь моим тестам. Он работает так, как...
1190 просмотров
schedule 29.09.2022

pytest-monkeypatch декоратор (не использует mock/patch)
Я пишу несколько тестов, используя pytest с приспособлением monkeypatch. Следуя правилам, я импортирую классы и методы для имитации из модуля, в котором они используются, а не из источника. Приложение, для которого я пишу тесты, представляет собой...
3385 просмотров
schedule 15.11.2023