Главная / Интернет-технологии / Разработка приложений на Ruby on Rails

Разработка приложений на Ruby on Rails - ответы на тесты Интуит

Правильные ответы выделены зелёным цветом.
Все ответы: В курсе рассказывается как начать веб-разработку на Ruby on Rails.
Смотрите также:
Для выполнения команды от имени администратора в Unix системах используется команда
sudo
Терминальная команда rm нужна для: $ rm -f spec/factories/microposts.rb
(1) Создания файла
(2) Переименования файла
(3) Перемещения файла
(4) Удаления файла
REST архитектура под собой подразумевает:
(1) Управление ресурсами локализаций
(2) Упрощение формирования файла routes.rb
(3) Стиль архитектуры программного обеспечения для построения распределенных масштабируемых веб-сервисов
(4) Создание материально организованной среды
Выберите типичную последовательность действий для написания простейшего приложения
(1) 1
(2) 2
(3) 3
(4) 4
Путь get "static_pages/home" определяет
(1) Получение данных home из static_pages
(2) Получение данных static_pages из home
(3) Отвечает на get запрос и направляет его в метод home контроллера static_pages
(4) Отвечает на get запрос и направляет его в метод static_pages контроллера home
Хелпер это>
(1) Метод, который упрощает написание кода
(2) Синтаксис-помощник
(3) Автоматический кодогенератор
(4) Программа для выгрузки приложения на сервер
Частичный шаблон это:
(1) Отдельная логическая шаблонная единица, включаемая в другие шаблоны
(2) Частая смена шаблонов
(3) Фрагмент основного изображения
(4) Единичная обособленная часть базового изображения, характеризующаяся в символьном выражением
Требуется ли знание языка SQL для работы с базой данных в Rails?
(1) Да
(2) Нет
Переменная params является:
(1) Строка
(2) Число
(3) Очередь
(4) Хеш
(5) Реляционная таблица
Session используется для:
(1) Хранения данных в течение определенного времени
(2) Хранения данных до закрытия браузера
(3) Краткосрочного хранения данных в течение одного запроса
(4) Хранения настроек приложения
(5) Хранения настроек базы данных
Что такое граватар?
(1) Сервис хранения аватарок
(2) Изображение пользователя
(3) Программа для определения лиц на фотографиях
(4) Сервис для автоматической обрезки фотографии по лицу
(5) Сервис обработки изображений
Является ли обязательным наличие интегрированной среды разработки (IDE) для программирования на Rails?
(1) Да
(2) Нет
validates :user_id, presence: true presence нужен для:
(1) создания ключа
(2) создания индекса
(3) требования обязательного заполнения
(4) указания стандартного значения
Напишите команду, включающую сторонний модуль и предоставляя методы к экземплярам класса:
require
Модель - это:
(1) Набор данных, созданных во время работы приложения
(2) Описание структуры данных, необходимых для работы приложения
(3) Хранилище, в котором лежат данные, необходимые для работы приложения
(4) Вариент наследования класса
Команда rails generate controller AdminsPages help
(1) Создает контроллер AdminsPages с полем help
(2) Создает контроллер AdminsPages с методом help
(3) Создает пустой контроллер AdminsPages
(4) Вызывает справку по созданию контроллеров
Комментарии используются для:
(1) Написания заметок к коду, интерпретатором учитываются
(2) Написания заметок к коду, интерпретатором не учитываются
(3) Добавления дополнительных инструкций интерпретатору
(4) Для интерполяции переменных
JavaScript код, известный как “HTML5 shim”, предназначен для:
(1) Обновления версии браузера
(2) Обновления движка JavaScript
(3) Обновление версии html
(4) Добавление недостающей функциональности в устаревшие браузеры
Проводится ли миграция базы данных автоматически при генерации модели?
(1) Да
(2) Нет
при запуске приложения без дополнительных параметров будет запущена среда:
(1) разработки
(2) тестирования
(3) продакшена
(4) песочница
should have_selector('р1.bold') проверяет наличие на странице:
(1) <p1 id="bold"></p1>
(2) <p1 class="bold"></p1>
(3) <p1><bold></bold></p1>
(4) <р1.bold>...</р1.bold>
<%= form_for(@user) do |f| %> <%= f.label :name %> <%= f.text_field :name %> <%= f.label :age %> <%= f.number_field :age %> <%= f.label :email %> <%= f.text_field :email %> <%= f.label :password %> <%= f.password_field :password %> <%= f.label :password_confirmation, "Confirm Password" %> <%= f.password_field :password_confirmation %> <%= f.submit "Save changes" %> <% end %> Какие поля будут автоматически предзаполнены при загрузке страницы?
(1) name
(2) age
(3) email
(4) password
(5) password_confirmation
RVM, rbenv и pik являются
(1) Виртуальными машинами
(2) Компиляторами
(3) Системами управления версиями
(4) Средами выполнения для Rais
(5) Языками программирования
Как известно, в комнате может стоять несколько столов, но стол стоит в одной комнате. Соотнесите методы и их действия:
(1) table.room
(2) room.tables
(3) room.tables.create(arg)
(4) room.tables.create!(arg)
(5) room.tables.build(arg)
class Relationship < ActiveRecord::Base belongs_to :follower, ... : "User" end Введите ключевое слово, которое указывает на используемую модель:
class_name
Rails scaffolding запускается командой:
(1) rails generate scaffold.
(2) rails generate scaffolding
(3) rails start scaffold.
(4) rails go scaffold.
Разработка через тестирование(TDD) подразумевает под собой
(1) Написание кода и его последующее тестирование
(2) Написание тестов и последующее написание кода, нацеленное на их прохождение
(3) Постоянное ручное тестирование
(4) Отправка кода в отдел тестирования
в результате выполнения puts '#{3+3}*3' в консоль будет выведено:
(1) Синтаксическая ошибка из-за наличия комментария внутри тела метода
(2) Синтаксическая ошибка из-за выражения внутри интерполируемой части строки
(3) 18
(4) 6*3
(5) #{3+3}*3
link_to предназначен:
(1) Для открытия соединения с сервером
(2) Для подключения к ресурсам, например, к базе данных
(3) Для упрощения создания ссылок на странице
(4) создания ярлыка на файл из файловой системе
class CreateUsers < ActiveRecord::Migration def change create_table :users do |t| t.string :name t.string :email t.string :password t.timestamps end end end Код миграции создаст таблицу с полями:
(1) id
(2) name
(3) email
(4) password
(5) timestamps
(6) created_at
(7) updated_at
В RESTful архитектуре имена методов используются ...
(1) index
(2) show
(3) new
(4) create
(5) edit
(6) update
(7) destroy
Метод should_not have_link('Sign in', href: signin_path) из Capybara проверяет наличие на странице:
(1) Наличие на странице ссылок
(2) Правильность адреса ссылки на страницу Sign in
(3) Наличие в приложении ссылок на страницу Sign in
(4) Правильность конфигурации routes.rb
Введите название метода, который перезагружает переменную из базы данных:
reload
Отметьте команды создания нового проекта
(1) rails new
(2) create new
(3) new
(4) create
Метод let! используется для:
(1) Выброса исключения при ошибке инициализации переменной
(2) Немедленной инициализации переменной
(3) Ленивой инициализации переменной
(4) Для применения действия переменной к самой себе
resources :products, only: :new do ... do get 'short' end end Вместо многоточия вставьте ключевое слово, чтобы получить такие пути: short_product GET /products/:id/short(.:format) products#short new_product GET /products/new(.:format) products#new
member
В Rails скелет приложения генерируется командой
(1) generate skeleton
(2) generate model
(3) generate controller
(4) generate migration
(5) generate scaffold
В RESTful архитектуре имена методов используются (установите соответствие):
(1) index
(2) show
(3) new
(4) create
(5) edit
(6) update
(7) destroy
Код require 'spec_helper' describe "Help page" do it "should have the content 'Help'" do visit '/static_pages/help' expect(page).to have_title("Page help") expect(page).to have_content("Click me to help you") end end проверяет:
(1) Наличие на странице заголовка с текстом "Page help"
(2) Наличие на странице текста "Click me to help you"
(3) Наличие на странице заголовка с текстом "Page help" или текста "Click me to help you"
(4) Наличие на странице заголовка с текстом "Page help" и текста "Click me to help you"
"hello".include? Вопросительный знак в конце имени метода означает:
(1) Интерпретатору Ruby требуются дополнительные параметры для работы метода
(2) Консоль ожидает последующего ввода
(3) Результатом выполнения метода будет булево значение
(4) Простое желание программиста, потому то Ruby это позволяет
знак фунта # в #center указывает на то, что правило стилизует:
(1) <div class=”center”>...</div>
(2) <div id=”center”>...</div>
(3) <center>...</center>
(4) <div align=”center”>...</div>
Во всех ли случаях можно заменить метод миграционный метод change на пару методов up и down?
(1) Да
(2) Нет
Фабрики используются для:
(1) Определения объектов
(2) Копирования класса
(3) Создания макетов страниц
(4) Создания приложения
В каких случаях исходя из действий на странице будет показано сообщение? def index flash[:error] = 'WOO HOO' render 'index' end
(1) При посещении index
(2) При посещении index и последующем обновлении страницы
(3) При посещении index и последующем переходе на другую страницу
(4) При посещении index, переходе на другую страницу и ее обновление
Можно ли с помощью Capybara протестировать ответ сервера?
(1) Да
(2) Нет
Стандартным портом для запуска сервера является
(1) 80
(2) 1
(3) 9000
(4) 3000
(5) При каждом запуске выбирается случайный адрес
order('created_at ...') Ввелите ключевое слово, для указания сортировки по возрастанию (в нижнем регистре):
desc
Возможно ли многоуровневое вложение частичных шаблонов?
(1) Да
(2) Нет
Отсутствие пути в файле рутирования приведет:
(1) К автоматическому редиректу на корень приложения
(2) К статической странице 404
(3) К пустой странице
(4) К выбросу исключения
<%= ... %> служит для
(1) Исполнения кода внутри представления без возврата результата
(2) Исполнения кода внутри представления с возвратом результата
(3) Комментирования блока кода
(4) Работы с хелперами
Массив является:
(1) Набор упорядоченных однотипных данных
(2) Набор неупорядоченных однотипных данных
(3) Набор упорядоченных данных разного типа
(4) Набор неупорядоченных данных разного типа
Препроцессор - это:
(1) Код для работы на старых процессорах для обратной совместимости
(2) Программа для предварительной обработки данных
(3) Второе и последующие расширения файлов
(4) Код, выполняющийся перед основным кодом
(5) Код, передающийся основному коду
@note = Note.create("note text") @note.update_attributes(text: "new text") puts @note.text Данный код выведет на экран:
(1) note text
(2) new text
(3) Note.create("text").save
(4) Note("text").save
visit signup_path ... "Name", with: "Bart" click_button "Create my account" Для заполнения поля занчением на HTML странице в Capybara используется метод:
fill_in
class ApplicationController < ActionController::Base protect_from_forgery with: :exception include SessionsHelper end Строка include SessionsHelper добавляет:
(1) Поддержку сессий в приложение
(2) Добавляет поддержку хелпера сессий в класс ApplicationController и наследуемые от него
(3) Добавляет поддержку хелпера сессий в классы, наследуемые от ActionController::Base
(4) Включает в приложение специальный класс, упрощающий взаимодействие с сессией
redirect_to :root, notice: "Please enter title" unless title_blank? Данная строка кода выполняет:
(1) Переадресацию в корень приложения, если заголовок книги пустой
(2) Переадресацию в корень приложения, если равен тексту "Please enter title"
(3) Добавленение во Flash строки "Please enter title" если заголовок книги пустой
(4) Добавленение во Flash строки "Please enter title" если происходит переадресация
Для команды git commit, которая фиксирует изменения
(1) Сообщение о фиксации обязательно и должно быть уникальным в пределах одного репозитория
(2) Сообщение о фиксации обязательно и не обязано быть уникальным
(3) Сообщение фиксации не обязательно
(4) Только один коммит на репозиторий может быть пустым
class Room < ActiveRecord::Base has_many :tables, dependent: :destroy end Данный код говорит о том, что:
(1) При удалении записи в таблице Rooms, все связанные с этой комнатой столы будут так же удалены из таблицы Tables
(2) При уничтожении записи в таблице Tables, связанная комната будет удалена из таблицы Rooms
(3) Пока есть столы, связанные с комнатой, удалить данную комнату из таблицы Rooms нельзя
(4) Пока есть комната, связанная с определенным столом, удалить данный стол из таблицы Tables нельзя
Понятие ненавязчивого JavaScript предполагает:
(1) Использование как можно меньшего количества клиентских скриптов
(2) Разделение представления и скриптов
(3) Наименьшее количество вопросов пользователю
(4) Наименьшее количество асинхронных запросов к серверу
Rails команда "много к одному"
has_many
Guard используется для
(1) Защиты от несанкционированного изменения контроллера
(2) Защиты от несанкционированного изменения шаблона
(3) Защиты приложения от атаки извне
(4) Для автоматизации проведения тестов
(3..45) называется:
(1) Массив
(2) Диапазон
(3) Промежуток
(4) Отрезок
Может ли один и тот же файл обрабатываться несколькими препроцессорами?
(1) Да
(2) Нет
describe User do before do @user1 = User.new(name: "User1", email: "user1@example.com") @user2 = User.new(name: "User2", email: "user2@example.com") end subject { @user1 } it { should respond_to(:name) } it { expect(@user2).to respond_to(:email) } end Данный тест проверяет:
(1) Проверяет валидность @user1.name
(2) Проверяет валидность @user2.name
(3) Проверяет валидность @user1.email
(4) Проверяет валидность @user2.email
Данный код def create @user = User.new(user_params) if @user.save redirect_to @user else render 'new' end end
(1) При успешном сохранении перенаправляет на личную страницу пользователя
(2) При успешном сохранении перенаправляет на страницу регистрации
(3) При неудачном сохранении перенаправляет на личную страницу пользователя
(4) При неудачном сохранении перенаправляет на страницу регистрации
Метод urlsafe_base64 предназначен для:
(1) Генерации безопасных URL адресов
(2) Генерации случайных строк
(3) Скачивание изображений частями
(4) Экспорт путей приложения в БД
session[:a] ||= "a" p = session[:a] || "b" В результате переменной p будет присвоено значение:
(1) В любом случае "a"
(2) В любом случае "b"
(3) "a", если session[:a] изначально не задано, "b", если задано
(4) "b", если session[:a] изначально не задано, "a", если задано
"a" * 10 Код вернет:
(1) 970
(2) а10
(3) 10a
(4) аааааааааа
(5) Будет выброшено исключение
def create respond_to do |format| format.js { code: 404 } format.html { render :404 } end end При асинхронном запросе данный код возвращает:
(1) статичную страницу 404
(2) JSON
(3) Число 404
(4) Исключение
cat = { name: "Barsik", color: "Brown" } cat[:eyes] = "green" cat[:color] = "white" p cat В результате будет выведено:
(1) {name=>"Barsik", color=>"white", eyes=>"green"}
(2) {:name=>"Barsik", :color=>"white", :eyes=>"green"}
(3) {name=>"Barsik", color=>"white", :eyes=>"green"}
(4) {name=>"Barsik", color=>"white", :eyes=>"green" :color=>"white"}
div { background-color: #blue; p{ background-color: #red } } Данный SASS код:
(1) Указывает любым <div> иметь синий фон
(2) Указывает только тем <div> иметь синий фон, внутри которых есть <p>
(3) Указывает любым <p> иметь красный фон
(4) Указывает только тем <p> иметь синий фон, которые лежат внури <div>
Свойство length принимает
(1) Максимальное число
(2) Минимальное число
(3) Рекомендуемое число
(4) Пару чисел, максимальное и минимальное
(5) Хэш
params.require(:title).permit(:text) говорит о том, что:
(1) Заголовок обязателен
(2) Заголовок допустим
(3) Текст обязателен
(4) Текст допустим
Метод its предназначен для:
(1) Синонимирования метода it
(2) Тестирования переданного атрибута, игнорируя субъект теста
(3) Проведения множественных тестов
(4) Строгого тестирования
Методы с восклицательным знаком в конце названия в ActiveRecords предназначены для:
(1) Принудительного действия
(2) Являются синонимами методов без восклицательного знака
(3) Выброса исключения в случае ошибки
(4) Имеют расширенный функционал и менее быстрое выполнение
<%= will_paginate @dogs %> <%= will_paginate %> В контексте контроллера Cats данные строки:
(1) Являются синонимами
(2) Синонимами не являются и использование верхней строки приведет к ошибке
(3) Синонимами не являются и использование нижней строки приведет к ошибке
Возможно ли добавлять в модель пользовательские методы?
(1) Да
(2) Нет
Служебное слово new
(1) Создает новый класс
(2) Создает новый экземпляр класса
(3) Прототип класса
(4) Ролителя класса
match '/info', to: 'App#info', via: 'get'
(1) Переадресует с info на app#info при get запросе
(2) Ограничивает использование адреса /info лишь get запросами
(3) запрещает использование адреса /info get запросам
(4) Запускает метод info контроллера App при поступлении get запроса
(5) Запускает метод info контроллера App при поступлении любого запроса, кроме get
Введите метод, который выполняется до сохранения данных в БД
before_save
Метод для возврата слова во множественном числе:
(1) pluralize
(2) lot
(3) plentize
(4) multiplize
cookies.permanent имеет срок жизни:
(1) До закрытие браузера
(2) 1 час
(3) 1 сутки
(4) 1 месяц
(5) 1 год
(6) 20 лет
(7) Бесконечный
gem 'will_paginate' вводит в приложение
(1) Возможность перемещаться внутри приложения по страницам
(2) Автоматическое разбиение большого количества данных на отдельные страницы
(3) Поддержку статичных страниц
(4) Поддержку динамичных страниц
(5) Нахождение страницы по записи в routes.rb
SQL инъекция это:
(1) Внедрение поддержки базы данных в приложение
(2) Вид SQL запроса
(3) Вывод результата SQL запроса на страницу
(4) Вид атаки на приложение
Код match ’/about’ автоматически создает именованные маршруты для использования в контроллерах и представлениях. Введите маршрут, который вернет 'http://localhost:3000/about'
about_url
Возможно ли получить пароль по его хешу?
(1) Да
(2) Нет
application.js из директории assets/javascripts/ используется для:
(1) Написания пользовательских скриптов
(2) Обработки и сбора пользовательских скриптов в один файлопроводом
(3) Хранения настроек приложения
(4) Запуска приложения
Какой метод, мемоизирует переменную?
(1) let
(2) set
(3) mem
(4) memoize
Отметьте команды, которые можно использовать для запуска локального сервера с приложением:
(1) sudo rails server
(2) rails server
(3) server
(4) local server
add_index :cats, [:names, :created_at] Данная строка:
(1) Создает индексы на поля names и created_at
(2) Создает составной индекс на поля names и created_at
(3) Добавляет индексированные поля names и created_at к таблице cats
(4) Создает индексированную таблицу cats с полями names и created_at
Абстракция данных это:
(1) Придание объекту характеристик, точно определяющих его концепцию и отличающих от других объектов
(2) Разделение данных на уровни
(3) Структурирование данных в таблицу
(4) Отвлечение внимания от существенных сторон и свойств с целью конкретизации внимания на менее значимых особенностях объекта
Для установки гемов Bundler берет информацию из файла
(1) Gemfile
(2) Gemlist
(3) Gemsourse
(4) GemsServer
Выберите возможные способы запуска Rails консоли:
(1) console
(2) rails console
(3) rails c
(4) r console
(5) r c
CSS фреймворк это:
(1) Инструмент для создания CSS таблиц
(2) Библиотека для быстрого дизайна страниц
(3) Движок для запуска CSS
(4) Библиотека для быстрого обмена сообщениями
способность данных существовать дольше, чем процесс, создавший его называется:
(1) Персистентность
(2) Валидность
(3) Высокосохраняемость
(4) Надежность
SSL используется для:
(1) Шифрования приложения
(2) Шифрования кода приложения
(3) Шифрования сервера
(4) Шифрования трафика между клиентом и сервером
Фрагмент текстовых данных, хранимый на компьютере пользователя называется:
(1) user_data
(2) cookies
(3) local
(4) textdata
FactoryGirl это:
(1) Автоматический генератор тестов
(2) Тестируемая модель
(3) Словарь женских имен
(4) Библиотека для удобного создания экземпляров моделей
Является ли обязательным наличие системы контроля версий, например, Git для программирования на Rails?
(1) Да
(2) Нет
class Table < ActiveRecord::Base ... :room end Вместо многоточия введите метод для связи, который говорит о том, что стол связан с одной комнатой
belongs_to
Какая из предложенных строк кода говорит об автоматическом удалении записей из таблицы, связанной с другой, из которой удаляются записи?
(1) has_many :followed_users, dependent: :destroy
(2) has_many :followed_users, through: :relationships, source: :followed
(3) has_many :relationships, foreign_key: "follower_id"
(4) belongs_to :follower
(5) belongs_to :follower, class_name: "User"
Данные в базе данных хранятся в виде
(1) Текстовых файлов со строками
(2) Таблиц
(3) JSON
(4) XML
Возможно ли проводить миграцию базы данных или ее откат частично лишь до определенной версии?
(1) Да
(2) Нет
Отметьте верные результаты после выполнения соответствующих им команд:
(1) puts "Foo" результатом вывода будет Foo [с переносом строки]
(2) print "Foo" результатом вывода будет Foo [без переноса строки]
(3) p "Foo" результатом вывода будет "Foo"
(4) puts "Foo" результатом вывода будет Foo [без переноса строки]
(5) print "Foo" результатом вывода будет Foo [с переносом строки]
(6) p "Foo" результатом вывода будет p "Foo"
Элементам html можно назначить:
(1) Один id и один класс
(2) Несколько id и один класс
(3) Один id и несколько классов
(4) Несколько id и несколько классов
При создании миграций от коллизий защищает:
(1) Название
(2) Система защиты от коллизий
(3) Временная метка
(4) Тип миграции
Можно ли запустить приложение одновременно в нескольких средах?
(1) Да
(2) Нет
Метод should have_selector('p.center') из Capybara проверяет наличие на странице:
(1) <p><center>...</center></p>
(2) <center><p>...</p></center>
(3) <p id="center">...</p>
(4) <p class="center">...</p>
(5) <p.center>...</p.center>
(6) <div>p.center</div>
magazine.new_record? Данный метод проверяет:
(1) Возможность создания записи
(2) Возможность сохранения записи
(3) Новизну записи
(4) были ли генерации экземпляров данной модели
Отметьте обобщенное название пакетов Ruby?
(1) gem
(2) packet
(3) pack
(4) ruby
Возможно ли установить значение поля created_at при сохранении записи в базе данных с помощью ActiveRecord?
(1) Да
(2) Нет
validates :followed_id, presence: true Какое ключевое слово указывает на требование обязательного заполнения поля?
(1) validates
(2) presence
(3) dependent
(4) index
(5) format
Миграция базы данных это
(1) Перемещение с одного сервера на другой
(2) Перемещение из одного каталога в другой
(3) Обновление структуры
(4) Обновление версии
Возможен ли запуск приложения с одним или более проваленными тестами?
(1) Да
(2) Нет
Получить длину слова можно методом>
(1) "Foo" l
(2) "Foo".l
(3) "Foo" len
(4) "Foo".len
(5) "Foo" length
(6) "Foo".length
image_tag предназначен:
(1) Для назначения тега изображению
(2) Вставки ссылки на изображение в html
(3) Скачивания изображения
(4) Для назначения альтернативного текста изображению через тег alt
t.timestamps генерирует столбцы:
(1) id
(2) created_at
(3) updated_at
(4) timestamps
Соотнесите названия стандартных методов и HTTP заголовки:
(1) index
(2) create
(3) update
(4) destroy
params[:session][:email] является:
(1) params является хешем
(2) params является строкой
(3) params[:session] является хешем
(4) params[:session] является строкой
(5) params[:session][:email] является хешем
(6) params[:session][:email] является строкой
Можно ли с помощью RSpec протестировать ответ сервера?
(1) Да
(2) Нет
Что такое Gemfile?
(1) Некоторый набор гемов
(2) Репозиторий гемов
(3) Путь установки гемов
(4) Файл с перечнем гемов, использующихся в конкретном проекте
Метод let является ленивым, это значит:
(1) Переменная инициализируется только при первом обращении
(2) Переменная инициализируется слишком долго
(3) Никогда не будет выброшено исключений
(4) Покрытие тестами составляет менее 50%
resources :products, only: :new do ... do get 'short' end end Вместо многоточия вставьте ключевое слово, чтобы получить такие пути: short_products GET /products/short(.:format) products#short new_product GET /products/new(.:format) products#new
collection
В RESTful архитектуре заголовки HTTP запросов используются (установите соответствие):
(1) get
(2) post
(3) patch
(4) delete
Выберите термин, описывающий одним словом проверку допустимости данных
(1) Валидация
(2) Авторизация
(3) Аутентификация
(4) Генерация
<% ... %> служит для
(1) Исполнения кода внутри представления без возврата результата
(2) Исполнения кода внутри представления с возвратом результата
(3) Комментирования блока кода
(4) Работы с хелперами
a = nil s = "Hello, man!" puts s if s.empty? || !a Выведет ли данный код приветствие на экран?
(1) да
(2) Нет
Файлопровод предназначен для:
(1) Организации и агрегации статичных файлов
(2) Пересылает файлы от клиента на сервер
(3) Ищет файл на сервере и помогает скачать его
(4) Децентрализтрованная пересылка объектов с применением техники упаковки в контейнеры
Если откатить миграцию, которая удаляет таблицу из базы данных, восстановятся ли данные, которые в ней хранились?
(1) Да
(2) Нет
Граватар это
(1) Собственное хранилище фотографий на сервере
(2) Стороннее хранилище фотографий
(3) js динамичная библиотека
(4) Изображение пользователя
В каких случаях исходя из действий на странице будет показано сообщение? def index flash[:error] = 'WOO HOO' redirect_to :root end
(1) При посещении index
(2) При посещении index и последующем обновлении страницы
(3) При посещении index и последующем переходе на другую страницу
(4) При посещении index, переходе на другую страницу и ее обновление
Выберите название объекта, из которого можно получить данные ответа от сервера, например код состояния HTTP
(1) response
(2) request
(3) answer
(4) RFS
Создание Git репозитория производится командой
(1) git init
(2) get init
(3) create init
(4) start init
order('created_at ...') Ввелите ключевое слово, для указания сортировки по убыванию (в нижнем регистре):
asc
Выберите название языка запросов к элементам XML-документа:
(1) XPath
(2) Ajax
(3) JSON
(4) XML
Установите порядок упрощенного процесса обработки запроса браузера к серверу (установите соответствие):
(1) 1
(2) 2
(3) 3
(4) 4
(5) 5
yield предназначен для
(1) Вставки одного представления внутрь другого и используется в структуре <%= ... %>
(2) Накапливания данных из коллекции и используется в структуре <% ... %>
(3) Уступает процессорное время другим потокам
(4) Принимает сообщение от другого потока
a = "The quick brown fox jumps over the lazy dog".split Соотнесите методы и их результаты:
(1) p a[0]
(2) p a[1]
(3) p a[-0]
(4) p a[-1]
(5) p a[-1..1]
(6) p a[1..-1]
Порядок обработки файла hello.js.erb.coffee:
(1) Слева направо
(2) Справа налево
(3) В порядке, установленном пользователем
(4) В случайном порядке
(5) Зависит от операционной системы
(6) Зависит от браузера
Для уничтожения объекта в базе данных используется метод:
destroy
visit signup_path ... "Create my account" Для нажатия кнопки на HTML странице в Capybara используется метод:
click_button
помощники автоматически включаются:
(1) В представления
(2) В контроллеры
(3) В модели
(4) В песочницу
FactoryGirl.create(:user, name: "Ken", email: "ken@foo.com") Данный код генерирует:
(1) Пользователя с полями name и email
(2) Стандартного пользователя с измененными полями name и email
(3) Экземпляр класса с полями user, name и email
Отправка изменений на Git сервер производится командой
(1) git push
(2) git init
(3) git put
(4) git change
expect do Table.find(table) end.to raise_error(ActiveRecord::RecordNotFound) Данный код нацелен на:
(1) Поиск по таблице столов
(2) Выброс исключения
(3) Тест на выброс исключения во время поиска
(4) Перехват исключения
Один правильный ответ xhr :post, :create, relationship: { followed_id: other_user.id }
(1) Выдает XPath запрос
(2) Выдает аjax запрос
(3) Выдает XHear запрос
(4) Выдает синхронный запрос
В Rails базовым классом из представленных является
(1) ActionController::Base
(2) ApplicationController
(3) BaseController
(4) Controller
(5) Base
gem 'rails', '4.0.2' group :development, :test do gem 'sqlite3', '1.3.8' gem 'rspec-rails', '2.13.1' end group :production do gem 'pg', '0.15.1'' end group :test do gem 'capybara', '2.1.0' end Во время тестирования будут использованы гемы:
(1) rails
(2) sqlite3
(3) rspec-rails
(4) pg
(5) capybara
(1..8).each { |count| print "#{count} " if count > 7 } Данный код выведет на экран:
(1) 1..8
(2) 1
(3) 7
(4) 8
(5) 1 3 5
(6) true
В таблицах стилей псевдоатрибут hover нужен для:
(1) Следования элемента за экраном
(2) Изменения стиля элемента при наведении на него курсора
(3) Изменения стиля элемента при нажатии на него
(4) Появления элемента на экране
(5) Анимирования элемента
Валидация наличия атрибутов задается параметром:
(1) presence
(2) null
(3) not_null
(4) nil
Соотнесите хелпер и результат его работы:
(1) form_for
(2) label
(3) text_field
(4) password_field
(5) submit
Метод before_save из ActiveRecord предназначен для:
(1) Передачи кода, который будет выполнен перед сохранением в БД
(2) Отрывает соединение с базой данных
(3) Верификации входящих данных
(4) Упрощения работы с ActiveRecord
Вместо многоточия введите код для выборки всех собачек из базы данных: @dogs = ...
Dog.all
user.microposts.count:
(1) Получает количество записей напрямую из базы данных
(2) Получает количество записей из специального файла
(3) Получает все записи из базы данных и определяет их количество локально
DOM представляет из себя:
(1) Дерево
(2) Стек
(3) Односвязный список
(4) Двусвязный список
(5) Кольцо
Возможна ли данная ситуация: cats = { :name=>"Barsik", :name=>"Matroskin" :name=>"Vaska" } ?
(1) Да
(2) Нет
В ERB <%# ... %> служит для:
(1) Исполнения кода внутри представления без возврата результата
(2) Исполнения кода внутри представления с возвратом результата
(3) Комментирования блока кода
(4) Работы с хелперами
Валидация формата атрибута задается параметром:
format
Требуется ли в обязательном порядке прибегать к флеш-сообщению, чтобы показать пользователю список ошибок заполнения формы для модели Active Record?
(1) Да
(2) Нет
Ключевое слово private:
(1) Делает все последующие методы приватными
(2) Скрывает параметры следующих методов
(3) Зарещает наследование класса
(4) Делает следующий за ним метод приватным
<%= render @dogs %> Данная строка:
(1) Итеративно выводит все данные из @dogs на страницу
(2) Рендерит частичный шаблон _dog.html.erb
(3) Выводит размер массива @dogs
(4) Создает итератор для доступа к массиву @dogs
Метод specify является синонимом метода:
(1) let
(2) describe
(3) it
(4) expect
(5) subject
В Ruby классы могут иметь>
(1) Лишь одного класса-родителя(superclass) и лишь одного класса-потомка
(2) Много классов-родителей и лишь одного класса-потомка
(3) Лишь одного класса-родителя и много классов-потомков
(4) Много классов-родителей и много классов-потомков
Код match ’/about’ автоматически создает именованные маршруты для использования в контроллерах и представлениях. Введите маршрут, который вернет '/about'
about_path
Индексация для базы данных это:
(1) Точка входа в базу
(2) Ускорение поиска по полям с индексом
(3) Назначение полей стандартными
(4) Шифрование
Flash используется для:
(1) Хранения данных в течение определенного времени
(2) Хранения данных до закрытия браузера
(3) Краткосрочного хранения данных в течение одного запроса
(4) Хранения настроек приложения
(5) Хранения настроек базы данных
self.title = "SUPERTITLE" автоматически конвертируется в
(1) title=("SUPERTITLE")
(2) ("SUPERTITLE")=title
(3) title("SUPERTITLE")
class AddTitleToBooks < ActiveRecord::Migration def change add_column :books, :title, :string, default: "Unknown book" end end Данный листинг говорит о том, что:
(1) Поле title будет стандартным
(2) Если поле title не заполнено, ему автоматически будет присвоено значение "Unknown book"
(3) Поле title всегда будет иметь значение "Unknown book"
(4) Поле default будет иметь значение "Unknown book"
Более безопасным поиск по базе данных считается:
(1) Путем изолированных обращений к каждой таблице
(2) Через связи
(3) С помощью ассоциаций
(4) С подтвердением по паролю
Введите именованный корневой маршрут
root
Мемоизация значит, что
(1) Значение переменной будет выведено лишь один раз и использоваться многократно
(2) Использовать мемоизированную переменную можно лишь один раз
(3) Каждый раз значение мемоизированной переменной требует пересчета
(4) При повторном использовании будет брошено исключение
Для добавления js-скрипта в файлопровод его нужно прописать в файле:
pipeline.rb
Безопасно проводить аутентификацию позволяет встроенный метод:
has_secure_password
Соотнесите символы и их назначения
(1) Текущий каталог
(2) Каталог-родитель
(3) Разделитель каталогов в Unix
(4) Разделитель каталогов в Windows
(5) Домашняя директория в Unix системах
Какая из предложенных строк кода строит ассоциации с помощью промежуточной таблицы?
(1) has_many :followed_users, dependent: :destroy
(2) has_many :followed_users, through: :relationships, source: :followed
(3) has_many :relationships, foreign_key: "follower_id"
(4) belongs_to :follower
(5) belongs_to :follower, class_name: "User"
По умолчанию rails консоль запускается в окружении (environment):
(1) разработки (development)
(2) тестирование (test)
(3) производство (production)
(4) в песочнице
Чтобы показать, что используется HTML5, файл index.html должен начинаться со строки:
(1) <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
(2) <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 5.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
(3) <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 5.0 >
(4) <!DOCTYPE html>
Rails generate model генерирует:
(1) Ресурс
(2) Контроллер
(3) Базу данных
(4) Представления
(5) Файл миграции
(6) Тесты
(7) Таблицы стилей
(8) Клиентские скрипты
(9) Модель
<%= "Hello Developer!" if !Rails.env.environment? %> В каких средах будет напечатано сообщение?
(1) Среде разработки
(2) Среде тестирования
(3) Среде продакшена
(4) Песочнице
Для ограничения ресурса только созданием допишите: resources :sessions, ...
(1) new
(2) only::new
(3) only
(4) only::create
Партиал (partial) это:
(1) Статическая страница, отдаваемая сервером при ошибке
(2) Корневая страница приложения
(3) Сообщение об ошибке
(4) Низкоуровневая часть запроса к серверу
(5) Шаблон страницы, включаемый в другой шаблон страницы
Является ли обязательным наличие установленного Ruby для программирования на Rails?
(1) Да
(2) Нет
class Table < ActiveRecord::Base ... :room end Вместо многоточия введите метод для связи, который говорит о том, что комната связана со многими столами:
has_many
Какая из предложенных строк кода говорит об установке внешнего ключа?
(1) has_many :followed_users, dependent: :destroy
(2) has_many :followed_users, through: :relationships, source: :followed
(3) has_many :relationships, foreign_key: "follower_id"
(4) belongs_to :follower
(5) belongs_to :follower, class_name: "User"
в результате выполнения puts "#{3+3}*3" в консоль будет выведено:
(1) Синтаксическая ошибка из-за наличия комментария внутри тела метода
(2) Синтаксическая ошибка из-за выражения внутри интерполируемой части строки
(3) 18
(4) 6*3
(5) #{3+3}*3
В пределах одной страницы у элементов:
(1) id должен быть уникальным, класс уникальным
(2) id могут повторяться, класс должен быть уникальным
(3) id должен быть уникальным, класс может повторяться
(4) id могут повторяться, класс может повторяться
Основой миграции является метод:
change
Сколько путей в файле routes.rb генерирует строка "resources :users" без дополнительных модификаторов? Введите число:
7
При построении формы с помощью form_for(@book) будет формироваться запрос:
(1) POST при новой, POST при редактировании
(2) PATCH при новой, PATCH при редактировании
(3) PATCH при новой, POST при редактировании
(4) POST при новой, PATCH при редактировании
Что такое гемсет?
(1) Некоторый набор гемов
(2) Репозиторий гемов
(3) Путь установки гемов
(4) Файл с перечнем гемов, использующихся в конкретном проекте
Сохранится ли в базе данных пользовательское значение поля created_at у сгенерированного экземпляра класса с помощью Factory Girl?
(1) Да
(2) Нет
Является ли служебное слово self обязательным в данном случае? self.cats.create!(...)
(1) Да
(2) Нет
Выберите все допустимые значения типа Boolean:
(1) Undefined
(2) True
(3) False
(4) Any
(5) Nil
(6) Nomatter
точка . в .center указывает на то, что правило стилизует:
(1) <div class=”center”>...</div>
(2) <div id=”center”>...</div>
(3) <center>...</center>
(4) <div align=”center”>...</div>
Для отката миграции используется команда:
(1) bundle exec rake db:rollback
(2) kill exec rake db:rollback
(3) remove exec rake db:rollback
(4) del exec rake db:rollback
Выберите метод для посещения страницы для Capybara во время тестирования:
(1) enter
(2) visit
(3) go
(4) open
(5) explore
Cookies используется для:
(1) Хранения данных в течение определенного времени
(2) Хранения данных до закрытия браузера
(3) Краткосрочного хранения данных в течение одного запроса
(4) Хранения настроек приложения
(5) Хранения настроек базы данных
Стандартным адресом запуска сервера является
(1) 192.168.0.0
(2) 192.168.0.1
(3) 127.0.0.1
(4) 43.234.55.154
(5) При каждом запуске выбирается случайный адрес
default_scope используется для
(1) задания стандартного поведения таблицы в базе данных
(2) указания того, какая таблица будет использована в качестве стандартной
(3) изменения стандартных настроек хеширования
(4) управления нагрузкой
Тег <section> предназначен для:
(1) Собирает код HTML станицы из нескольких файлов
(2) Создает для страницы навигационную сетку
(3) Задаёт раздел документа
(4) Для вставки фрейма в документ
def a print z end def z return "z" end print a данный код выведет на экран:
(1) Ничего
(2) a
(3) z
(4) az
(5) za
(6) Синтаксическую ошибку
Какими методами можно сохранить запись в базе данных?
(1) Note.new("text")
(2) Note.new("text").save
(3) Note.create("text")
(4) Note.create("text").save
(5) Note("text").save
Изображение на Граватаре однозначно определяются по:
(1) Логину
(2) IP-адресу
(3) MD5-сумме почтового адреса
(4) Токену
В каких случаях исходя из действий на странице будет показано сообщение? def index flash.now[:error] = 'WOO HOO' render 'index' end
(1) При посещении index
(2) При посещении index и последующем обновлении страницы
(3) При посещении index и последующем переходе на другую страницу
(4) При посещении index, переходе на другую страницу и ее обновление
before_action :signed_in_user, only: [:edit, :update] Данный код:
(1) Вызывает метод signed_in_user при вызове методов edit или update
(2) Вызывает метод signed_in_user перед запуском любого другого метода из этого же контроллера
(3) Разрешает использовать метод signed_in_user только из методов edit или update
(4) Разрешает использовать методы edit и update только из метода signed_in_user
Команда git add .
(1) Добавляет файлы в репозиторий только в текущей директории
(2) Рекурсивно добавляет файлы текущей директории и всех поддиректорий в репозиторий
(3) Создает новый файл в текущей директории
(4) Открывает тестовый редактор в данной директории
lambda - это:
(1) Метод, который выполняется моментально
(2) метод, оценивающийся в момент вызова
(3) Метод, выполняемый в фоновом потоке
(4) Зеленый поток
Выберите название технологии асинхронного обращения к серверу:
(1) XPath
(2) Ajax
(3) JSON
(4) XML
a = "The quick brown fox jumps over the lazy dog".split puts a.sort.join(" ") В результате будет выведено:
(1) The quick brown fox jumps over the lazy dog
(2) The brown dog fox jumps lazy over quick the
(3) В случайном порядке
(4) В псевдослучайном порядке
Проверкой допустимости входных данных является:
(1) Валидация
(2) Мемоизация
(3) Персистентность
(4) Аутентификация
(5) Авторизация
При тестировании метод change:
(1) Изменяет переданные данные
(2) Изменяет среду выполнения
(3) Вычисляет значение до и после выполнения блока expect
(4) Изменяет значения поля, помеченного subject
Может ли пользователь сам успешно изменить данные Cookies?
(1) Да
(2) Нет
Напишите название объекта, из которого можно получить данные запроса от клиента к серверу, например запрашиваемый url
request
Могут ли несколько человек использовать один и тот же репозиторий для работы над общим проектом?
(1) Да
(2) Нет
Метод be_empty в RSpec it "should destroy associated microposts" do microposts = @user.microposts.to_a expect(microposts).to ... end Введите ключевое слово, которое тестирует массив на нулевой размер:
be_empty
def create respond_to do |format| format.js { code: 404 } format.html { render :404 } end end При синхронном запросе данный код возвращает:
(1) статичную страницу 404
(2) JSON
(3) Число 404
(4) Исключение
Выберите верное утверждение:
(1) Хэш в Ruby это результат обработки данных хэш-функцией
(2) Индексами могут быть не только числа
(3) Хэш гарантирует сохранность порядка добавления данных
(4) Хэш не допускает в качестве значений другие хэши
Переменная в SASS задается с помощью знака:
(1) $
(2) @
(3) %
(4) &
(5) :
Техника строгих параметров предполагает:
(1) Допускать только обязательные параметры
(2) Допускать только разрешенные параметры
(3) Требовать ввода пароля при передаче параметров
(4) Передача параметрав возможна лишь с одного IP-адреса
(5) Передача параметрав возможна лишь с одного MAC-адреса
Метод before_create из ActiveRecord предназначен для:
(1) Отрывает соединение с базой данных
(2) Запуска метода перед созданием записи в БД
(3) Упрощения работы с ActiveRecord
(4) Верификации входящих данных
Gem Faker предназначен для:
(1) Генерации случайных данных
(2) Обеспечения анонимности
(3) Поиска дублированных данных
(4) Автоматического удаления поддельных страниц
<%= will_paginate @dogs %> <%= will_paginate %> В контексте контроллера Dogs данные строки:
(1) Являются синонимами
(2) синонимами не являются и использование верхней строки приведет к ошибке
(3) синонимами не являются и использование нижней строки приведет к ошибке
Соотнесите знаки в DOM и их назначение:
(1) $
(2) #
(3) .
methodName({a1: "a1", a2: "a2"}) methodName a1: "a1", a2: "a2" Являются ли данные строки равноценными?
(1) Да
(2) Нет
Файл routes.rb используется для:
(1) Для конфигурации приложения
(2) Для конфигурации маршрутов в приложении
(3) Конфигурации сред исполнения
(4) Определения переменных
class User < ActiveRecord::Base validates :text, presence: true, format: { with: /(Ruby on )?Rails/i } end Данный код проверяет:
(1) Поле text обязательно
(2) Поле text необязательно
(3) Текст может быть Ruby on Rails
(4) Текст может быть Ruby
(5) Текст может быть Rails
Введите ключевое слово, возвращающую ссылку на текущий объект:
self
По правилам безопасности в базе данных должен храниться:
(1) Открытый пароль
(2) Хеш пароля
Оператор присваиваивания ||= позволяет:
(1) Присвоить полю голову строки
(2) Установить ленивое присваивание
(3) Присвоить полю значение только если поле определено
(4) Присвоить полю значение только если поле не определено
Возможно ли удалить cookies до истечения времени жизни?
(1) Да
(2) Нет