►
From YouTube: Pair Programming - Testing if a MR revert fixes an issue
Description
Revert MR: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/37131
Feature spec MR: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/37136
A
Okay,
let
me
close
some
tabs
and
let
me
try
to
find
my
issue.
Oh,
that
didn't
work
out
trying
to
close
tabs.
Now,
I'm
sharing
my
slack
screen.
Oh
okay,
I'm
trying
to
go
to
can't
nope!
That's
how
you
spell
it.
What
is
it
called?
Auto?
Complete?
Yes,
it
says
yes,
so
here's
the
issue
can't
select
comment,
auto-complete
suggestions
with
keyboard,
so
if
you're
here
you
start
typing
something
and
I'm
trying
to
you
see,
oh,
you
should
do
enter
and
then
yeah
yeah
really
frustrating.
B
So
I
I
don't
know
if
this
is
related,
but
just
for
context.
B
A
A
B
A
C
D
But
yeah
what
I
was
or
the
what
I
was
kind
of
thinking
was
it
had
to
do
with
like
like
missing,
like
key
down
event
handler
or
a
keydown
event
handler.
That's
getting
blocked
because
it
seems
like
none
of
the
keydown
events
are
working
like
enter
up
and
down,
I
know
and
then
yeah.
So
then
I
was
looking
at
like
there.
There's
like
the
shortcut
plug-in
that
we
use-
and
I
was
trying
to
see
if
like
there,
are
any
shortcuts
that
were
recently
added,
because
I
thought
maybe
that'd
be
an
idea.
A
Yeah
there
was
there's
one
change
to
that
file
that
had
to
do
with
like
the
way
we
load
emojis
that
I
noticed
and
I
tried
like
reverting
those
commits
and
seeing
if
it
fixed,
and
I
was
still
able
to
recreate
the
issue
with
those
commits
reverted,
so
I'm
really
at
a
loss,
which
is
why
hey
scott's
like
it
could
be
this,
mr
I'm
like
yeah
yeah.
Definitely
I
hope.
B
Paul,
I
just
liked
it
to
you.
Okay,
the
only
reason
I
know
about
it
is
because
I
reviewed
it,
so
this
is
100
my
fault.
E
B
A
Can
you
ping
it,
can
you
add.
A
B
Right,
oh,
it's
like
it's
add
markdown
listeners.
So
here's
the
listener
on
key
down
and
then
it's
evaluating.
B
A
A
Let's,
let's,
let's
try
to
recreate
it
fix
it
scott
I
am
so
freaking
glad
you
were
on
this
call.
Providing
value
is
my
middle
name.
A
This
you,
you
could
really
get
like
a
there's,
a
psychological
term
for
it.
I
don't
know
it,
but
it's
like
a
superhero
complex,
where
you
like,
create
the
issues
that
everyone.
B
B
A
I
didn't
even
think
that
yeah
and
that's
that's
is
a
really
tough
thing,
and
so
this
is,
I
think,
what's
hard,
though,
is
that
this
isn't
all
the
time?
So
when
does
windows
remove
markdown
listeners
happen?
B
A
A
Oh
here
it
is
oh
there
it
is
wait
before
we
start,
that's
never
mind,
that's
not
it.
I
guess
this
is
something
that's
called
by
people
that
import
it.
So
we
can
check
out.
When
do
we
import
geoform.
A
A
I'm
going
to
do
gl
form,
destroy
here's
one
on
notes.
Remove
discussion,
note
form
called
the
response
to.
A
Like
like
it's
a
little
flaky
that
that
might
that
might
have
to
do
it,
it
could
also
be
here's
another
interesting
thing.
That's
happening
with
these
listeners.
You
notice
this
is
using
jquery
to
select
everything
and
it's
selecting
every
markdown
area.
That's
currently
there,
which
means,
if
I
haven't
like
expanded
the
discussion
or
if
I
haven't,
opened
up
the
diffs
or
something
yet
like
that's
not.
A
And
then
we
also,
I
notice.
We
also
then
call
it
on
like
destroy
here
and
that's
going
to
happen
like
if
I
do
a
collapse
of
yeah.
A
All
right,
I'm
you
said
you're
90
certain.
This
isn't
I
think
I'm
90
certain
this
isn't.
But,
let's
find
out,
I
shouldn't
have
said
that.
A
A
A
A
Yeah
that
those
listeners
we
should
have
like
an
a
we
need
to
probably
have
a
linter,
and
that
may
be,
if
you
know,
if
we
have
some
time
well,
we
can
spend
the
rest
of
our
time
being
doing
something
productive.
Besides
fixing
this
issue,
obviously
we
should
probably
lent
any
time
you
do.
A
global
off.
A
A
Back
to
the
console
logs,
so
I'm
going
to
do
something
crazy
too.
I
want
to
add
some
console
logs
to
that
slice.
This
is
here
right.
A
Yes,
so
I'm
going
to
add
some
console
logs
to
here,
just
to
double
check.
What's
happening
and
whatnot.
A
A
A
B
B
D
A
D
A
A
So
we're
not
yeah,
so
here's
here's
one
way.
I
was
able
to
do
it
and
I
think
it
has
to
do
like
when
we
do
the
destroy
callback.
For
some
of
these,
I
want
to
be
able
to
reproduce
it
consistently
so
that
we're
guaranteed,
we
know
what's
happening
so
we've
called
remove.
Markdown
listeners
add
map
markdown
listeners.
It
would
probably
be
nice
to
also
include
like
how
many
markdown
areas
it's
finding
there,
but
here
I
am
about
to
do
this
thing,
hello,
all
right.
All
that
works.
Oh,
I
don't.
A
This
should
work
yeah.
This
works
great
if
I
come
back,
nothing's
destroyed,
yet
I
come
back.
This
is
all
working.
Okay,
so
that's
not
happening.
I
haven't
run
remove
markdown
listeners
yet,
but
what
if
I
start
doing?
Okay,
now
we
just
re-added
markdown
listeners
for
everybody
again,
if
I
start
and
cancel.
A
E
A
B
A
Pop-Up
listener
is
gone,
that's
what
I
think
is
happening.
So,
let's
try
to
create
a
test
script
that
actually
100
reproduces
it
and
I
think.
B
A
A
E
A
B
A
Yeah
yeah:
let's,
let's
hope
it
doesn't
come
to
that.
B
A
I
have
changes,
it's
not
gonna,
like
so
I'll
stash
those
I'm
gonna
revert.
This
commit
great.
G
C
A
C
A
B
A
On
issues,
but
I
think
it's
possible,
it
can
happen
in
issues
as
well
yeah.
It's
the
same
notes,
component
yeah.
A
A
D
A
B
Oh,
but
it's
oh
hold
on.
D
D
B
A
Scott,
I'm
I'm
I'm
so
glad
that
you
were
here
and
saw
this.
I
would
not
me
too
yeah.
This
is
this
was
really
helpful
and
this
is
a
win
like.
I
think
I
think
we
caught
this
before
it
hits
customers
machines,
that's
the
gold,
so
yeah.
I
can't
reproduce
those
errors
on
an
mri
issue.
So
I'm
not
too
sure.
What's
going
on
the
discussion
position,
oh.
B
I
suppose
you
should
yeah
it's.
You
have
to
open
a
discussion,
it's
not
a
comment.
B
E
A
A
B
B
B
Understand
yeah
yeah
I've
just
like
I've,
I've
made
mrs
broke
something
and
then
reverted
it
and
I
just
like
never
got
back
to
it.
You
know.
A
So
I
have
this
thing:
this
utility
I
use,
I
call
curl
weight,
get
lab.
It
just
keeps
peeing
in
gitlab
until
it's
ready.
D
A
Yeah
so
part
of
my
script
does
that
too?
I
have
this.
D
A
Gdk
refresh
script:
oh
okay,
okay,
then
I
think
it's
working.
A
Now
it's
so
helpful
for
me
to
to
think
out
loud
with
others.
I
really
appreciate
you
all
hopping
on
this
pairing
session.
Oh
yeah,.
A
A
With
my
daughters,
I'm
working
on
this,
this
robot-
oh
cool-
maybe
I
should
have
it
boot
up,
show
it
off
while
we're
doing
this,
it
is
basically
going
to
be
a
rubber
duck
for
me.
You
hit
it
and
it
says
something
random.
That's
all
it
does.
B
A
A
E
G
A
Yeah
all
right
cool,
oh
this
is
helpful.
Yeah,
I'm
gonna
create
that
mr
revert.
Do
you
guys
have
any
other
things
you
think
might
be
cool
to
tackle
or
you
feel
like
this
is
a
productive
use
of
time.
Yeah.
B
B
No
it's
on
issues
as
well
I'll
handle
it
talk
about
it.
Sweet.
B
A
Yeah,
if
you
guys
have
a
little
bit
of
time,
we
couldn't
pair
on
writing
a
feature
spec
for
this,
like
I
don't
really
know
what
that
would
look
like
and
because
we'd
have
to
send
like
keyboard
events
and
stuff.
If
you
think
that's
interesting
or
I
don't
know
what
your
guys
time
availability
is,
I
have
to
run
okay.
A
All
right,
no,
are
you
are
you?
Do
you
have
some
time
peter?
Are
you
yeah
all
right
all
right,
I'll
work
on
writing
a
future
spec
for
this
or
cool?
Do
you
want
to
do
you
want
to
drive
or
I
could
drive
it
or
we.
D
Can
try
to
you
can
drive
all
right
see
you
later.
A
Let
me
go
ahead
and
create
this
revert
and
let
the
pipeline
run.
In
that
thing,
I'm.
D
Still
like
pretty
new
to
our
spec
and
stuff,
so
me
too
be
cool
to
write
some
feature
specs
for
this.
A
Yeah
yeah
it's!
It
can
be
a
bit
of
a
challenge,
but
it's
actually
like
super
helpful
yeah.
Definitely
so
I
think
one
of
the
things
that'll
be
difficult
would
be
sending
like
keyboard
events
and
getting
it
getting
that
information
like
I'm,
not
entirely
sure
how
to
do
that.
But
maybe
we
can
spend
just
a
little
bit
of
time
figuring
out.
I
don't
think
we'll
end
up
solving
all
of
it,
but
it'll
definitely
be
learning
together.
D
Yeah,
I
know
you
can
do
page
dot,
send
keys
or
something
like
that
in
our
spec,
I
think,
or
in
capybara
or
whatever.
Yes,
that
is
super
helpful.
So,
let's
the
only
reason
I
know
that
is
because
I
was
just
messing
around
with
like
a
qa
spec
end-to-end
test
earlier,
oh
nice.
A
D
A
A
Oh
awesome,
that's
super
helpful
cool
yeah,
so
I
wonder
if
we
could
do
one
for
merging
quests,
because
that's
the
one
like
I've
really
seen
this
yeah
definitely.
A
I
don't
think
I
see
it
so
much
by
now,
or
I
don't
see
one
for
merger
quest.
Maybe
we
could
do
it
for
issues
what's
consistently
caused.
It
was
starting
to
type
getting
it
to
create
locally
on
the
main
comment
box,
but
then
commenting
on
a
discussion
do
you?
Do
you
think
that
there's
any
are
there
any
areas
that
we
create
discussions.
A
Oh
gosh,
there's
so
much
here:
okay,
here's
like
testing
assignees.
All
right,
I'm
going
to
create
one
for
contacts.
We
want
to
test.
D
D
D
If
you
maybe
look
at
like
through
the
factories
for
like
factories,
slash
discussion
or
something
oh
yeah,
factories.
A
D
I
don't
know,
I
really
know
what
that
means.
Honestly
yeah,
I
don't
really
know
what
it
means
either.
I
guess
I
mean
I
guess
we
can
just
we
can
always
like.
Have
it
open
up
the
browser
and
see
if
it's.
F
D
A
A
Okay,
cool
and
they're
doing
they're
finding
stuff
by
their
ids,
and
I
guess
we
could
kind
of
do
the
same
thing.
That'd
be
cool,
but
let's
just
run
this
yeah,
let's
just
see
if
it
like
does
anything
first
have
we
already
talked
about
spring
before?
A
No,
I
don't
know
what
that
is.
It
makes
r
expect
a
lot
faster,
so
I
guess
normally
r
spec
has
to
read
all
the
ruby
files
from
disc.
Like
I
I
get.
I
might
not
be
right
here.
I
think
that's
what
it
says,
but
spring
creates
some
sort
of
spring
loader
server.
That
like
makes
that
whole
process
of
loading
some
of
these
files
a
lot
faster.
Yes,
that's
mine,
but
because
it
does
like
some
caching
stuff.
A
Sometimes
its
behavior
can
be
weird.
So
you
may
want
to
just
be
careful
about
that,
but
it
does
make
things
faster.
D
A
A
A
G
A
Smr
has
some
issues:
smr
reverts.
A
Referred
all
right,
this
is
still
starting
up
this,
mr
reverts.
Here
it
is.
A
Disables
the
reward
handling
I
will
complete.
A
Suggestions
I'll
include
some
screenshots
later
and
I
don't
think
we
need
to
change
log
or
anything
like
that.
So
I'm
just
going
to
delete
this.
A
A
A
G
A
D
A
Okay,
let's
check
that
out,
but
it
looks
like
this
is
note
body.
So
that's
how
it's
doing
this
thing.
D
A
A
F
A
A
A
A
A
Does
that
make
sense?
Why
are
we
doing
a
find
without
like
yeah,
okay
and
then
oh,
so
I
can
actually
just
copy
one
of
these
like
this
is
doing
the
whole.
D
D
A
Yeah,
that
makes
sense
so,
but
here
we
first
the
first
step
to
this
is
load
the
add
who,
but
then
we
want
to
cancel
a
different
note
right.
A
Me
or
maybe
I
have
to
do
reply,
dot,
dot,
dot,
I'll,
do
reply,
dot
dot.
Is
that
an
actual
ellipsis
or
dots?
It's
a
dots?
Okay.
I
clicked
the
button.
A
A
I
want
to
go
back
to
the
note
and
I
want
to
clear
it
out.
I
don't
know
how
to
do
that.
D
But
I
was
like
this
is
what
I
saw
in
like
an
end-to-end
test
yeah,
but
yeah
you
might
feel
well
is
yeah.
I
guess
note
is
like
a
dom
node
as
a
variable.
Now
you
can
try
value
equals.
Let's
try
it
so.
A
A
D
That
should
be
it
right.
It'll
probably
work
on
the
first
try.
A
A
Kind
of
nice
to
see
it
in
the
browser
yeah,
it's
kind
of,
let's
just
see
if
it
works
and
then
undo
my
revert
and
then
see
if
it
fails
but
yeah.
I
have
to
see
that's
the
thing.
I
know
that
there's
a
way
to
like
open
in
the
browser
without
and
run
the
script
on
it
I
haven't.
I
don't
know
how
to
do
that.
Do
you
know
what
I'm.
D
Saying
I
do
like
chrome
headless,
you
can
set
like
a
chrome
headless
variable,
yeah
that'd
be
really
cool.
I
don't
know
how
to
do
that.
Let
me
see
like
it's
somewhere
in
the
docks.
I
always
have
to
find
it.
D
F
D
D
A
A
A
Confusing
it's
that's
almost
as
confusing
as
not
needing
semicolons
are
you?
Are
you
a
pro
or
anti-semicolon
kind
of
guy
in
ruby.
D
And
john's
creditor,
oh
semicolon
I,
as
long
as
I
have
prettier,
it
doesn't
matter
to
me.
That
is,
that
is
a
very
wise
response,
but
in
ruby
there's
or
at
least
I
don't
have
any
auto
format
or
things.
So
I
always
forget
stuff.
A
Yeah,
ruby
doesn't
have
semicolons,
I
don't
believe.
Okay,
yeah,
that's
one
of
the
things.
This
also
really
throws
me
off
with
like
python,
like.
A
D
But
the
no
parentheses
thing
throws
me
off
in
ruby
all
the
time,
because
we're
not
super
consistent
about
it.
In
our
good
days.
E
A
I
think
the
time
like
when
you
when
you
don't
do
it,
because
I
guess
everything
is
like
a
method
like
all
your
fields
are
methods
or
something
and
so
something's
like
I
can
on
a
class.
I
guess
I
can
like
def
a
getter
or
something,
and
so
I
I
I
guess
you
kind
of
just
have
this
gut
feel
if
it's
this
is
like
a
property
or
is
it
like
a
method
and
anyways.
A
D
A
Think
we
might
be
able
to
find
I'm
I'm
I'm
fine.
With
going
that
route.
My
my
only
hesitancy
is.
I
was
trying
to
recreate
the
one
that
I
was
doing.
Yeah
yeah,
that's
a
good
point,
but
if
you're
able
to
recreate
it
with
creating
a
comment,
we
can
just
confirm
that
this
fails
on
master
like
so,
let's
just
and
that'll
be
pretty
probably
the
fastest
way
to
do
it.
So
how?
How
could
I
create
the
comment?
D
A
Okay,
I'm
going
to
see
if
I
can
find
find
this
nope,
not
r.
D
A
A
So
I
was
creating
these
voices
through
google's,
so
you
can
like
connect
it
to
the
api,
like
their
google
cloud
like
and
you
can
configure
their
text
to
speech
stuff,
but
it's
technically
cost
money
to
do.
A
All
of
that
I
was
creating
samples
using
their
like
demo
tool
and
then
like
just
using
that
api,
converting
it
to
little
an
mp
or
converting
it
to
a
wave
and
like,
but
it's
pretty
fun
like
you
can
create
some
I'm
impressed
with
how
text-to-speech
was
gone
these
days,
it's
a
lot
more
advanced
than
when
I
was
a
kid
yeah.
It's
pretty
cool.
D
A
A
A
A
A
D
It
might
be
because
the
note-
maybe
it's
like
recreating
that
node
the
node,
the
note
node,
and
so
you
need
to
refine
it
or
something
I
don't
know,
maybe
like.
If
you
want
it
because
it's
like
yeah,
I
don't
know
if
that's
it,
but
like
that's
a
reference
to
like
a
dom
node
and
then,
if
it's
recreated,
then
you
have
to
refine
it.
A
If
that's
it
yeah
I'm
gonna
cut
down
for
checking
that
out.
That's
interesting
that
could
that
could
be
it.
I
don't
know
if
it's
gonna
like
fill
in
with
we'll.
A
D
A
A
A
A
A
D
D
G
F
D
A
Equal,
I
guess
that's
how
you
do
it.
Let
me
double
check
what
we're
actually
we're
putting
here
and
expect
to
wrap
yeah
they're,
putting
the
no
body
into
there
yeah.
I
think
it's
note
that
value.
I
think
the
text
bit
was
wrong,
which
makes
sense,
because
it's
an
input,
I
guess.
D
So
when
you're
getting
like,
when
you
do
find
in
our
spec
caviar
like
find
an
element,
are
you
getting
back
the
dom
node
like
or
is
it
a
wrapper?
I
think
it's
like
a
wrapper
around
it
kind
of
that's.
A
A
really
good
question,
though
I
I
don't
think
it's
a
wrap,
because
I
know
I'm
pretty
sure
if,
if
you
visited
another
page
like
it's,
not
gonna
be
a
rapper
for
it.
I
think
it
is
the
actual
domino
which
is
which
is
interesting
and
which
is
why
you
probably
shouldn't:
do
they
kind
of
suggest
not
doing
selectors
as
and
doing
more,
like?
A
That's
probably
why
you
don't
see
a
whole
lot
of
you
know:
hey
with
this
field,
fill
it
in
because
who
knows
it
could
be,
you
know,
regenerated
or
somehow
we
visited
another
page
or
something,
and
that's
probably
why
they
want
you
to,
and
this
is
a
good
thing,
with
these
kind
of
tests
to
prompt
you
to
have
more
accessibility
so
that
you
know
things
that
you
can
look
things
up
by
aria
labels
and
just
a
number
of
other
things
like
that,
besides
keeping
a
reference
to
something.
D
A
A
That
makes
sense
because
then
I
can
just
get
type
typing:
emojis,
oh
sweet
nice.
So
that
should
be
good.
So
we
got
our
spec.
So
now
what
I'm
gonna
do?
I'm
gonna
just
gonna
commit
this:
let's
all
right!
Just
for
fun
and
giggles:
let's
go
ahead
and
run
it
again.
So
we
see
the
green.
But
then,
if
I
yeah
but
then,
if
I
revert,
revert
the
reverted
yes
yeah.
A
All
right
sounds
good
cool
now.
This
is
super
helpful
thanks
for
thanks
so
much
for
pairing
with
me
on
on
this,
because
I
I
probably
would
not
have
done
it
on
my
own
for
sure.
A
Yeah
we
learned
how
to
accept
an
alert
that
was
cool,
how
to
send
keys.
I
send
keys.
A
D
A
A
But
it's
interesting,
you
kind
of
wonder
how
come
fill
in,
isn't
filling
it
in
like
a
human.
Maybe
fill
in
should
be
sending
the
keys
like
that
would
be
really
that
would
make
sounds
like
that'd
be
really
helpful.
I
wonder
if
that's
a
configuration
that
you
can
set
for
capybara.
A
D
Yeah
it
was,
it
took
me
a
while
to
figure
it
out,
but
you
can
run
it
against
gdk
wow.
D
Yeah
because
I
was
I
changed
like
this
simple
text
field
to
a
gitlab
ui
component
and
then
there
was
a
qa
test
to
like
improve
ux,
and
then
there
was
a
qa
test
that
was
failing
because
of
that
change.
Yeah
update
it,
which
took
a
while.
D
No
we're
actually
like
a
follow-up
issue
to
add
some
selectors
to
the
gitlab
ui
component,
so
that
we
can
select
it
better.
That's
interesting,
that'll
be
that'll.
A
Be
interesting,
ad
spec
for.
A
A
Yeah
because
it
is
all
right,
so
I'm
going
to
revert
the
revert
and
let's
double
check
that
or
I
could
just
rebase
on
top
of
master.
That's
probably
makes
a
lot
of
sense.
Let's
see
that.
E
A
A
So
yeah,
I
don't.
I
don't
think
I
would
have
found
this
issue
if
it
wasn't
for
scott's
inside
knowledge,
which
is
a
little
concerning
because
I'm
like
you
know
what,
if
scott
well,
if
he
was
on
vacation.
A
Yeah,
so
it
seems
to
me
to
be
the
the
crux
of
the
problem
is
doing
something
globally
for
all
was
like
like
doing
off
for
all
listeners
and
that's
something
I
think
we
can
probably
add
to
eos
lent
rule
for
yeah.
Definitely.
D
That
makes
sense
yeah
or
I
guess
I
was
kind
of
on
the
right
track
when
I
was
messing
around
with
the
event
listeners
but
in
the
dev
tools,
but
I
guess
I
maybe
I
just
wasn't
using
it
correctly,
but
it
didn't
look
like
anywhere
being
removed,
which
was
what
was
confusing
me.
So
you
can
actually
see
listeners
here
like.
Can
you
show
yeah
so
like
if
you
right,
click
on
like
a
link
or
something
or.
D
A
That's
interesting
because
it
might
not,
because
jquery
may
do
its
own
event
thing
yeah.
I
think
it
has
like
its
own
event
thing
or
something.
D
A
Yep
just
to
get
rid
of
the
revert
commit
because
I
was
already
on
master,
and
so
I
was
just
re-basing.
A
B
A
Respect
yeah,
I'm
gonna
push
this
up
too.
Awesome,
hey
peter
thanks
so
much.
This
is
so
yeah
helpful.
D
A
Yes,
no
and
it's
messy
too
you're
right.
This
is
a
really
good
call,
but
it's
really
helpful
because
that
we
wrote
this
spec,
because
this
is
my
screenshot.
You
know
oh
yeah.
This
is
my
screenshot
of
it
not
working,
but
I
could
show
hey
when
you
rebase
this
off
master
your
screenshot.
It
works.
So
that's
really
sweet
cool,
hey
thanks!
This
is.